Rob Chartier ~ Contemplation...

.NET, C#, Work, etc.

News






www.flickr.com
This is a Flickr badge showing public photos from Rob & Kat Chartier. Make your own badge here.


Even Quicker Links

CCTray & X10 Part II with a download...

I need some feedback from people using the CCTray (CruiseControl Tray App) to monitor their applications and have X10 integration.  Anyone want to test out my new build of the CCTray with X10 support, including the UI for settings?  I want to gather feedback before I actually submit it to Owen and Mike for CVS.  It is built with the current "CruiseControl.NET-1.0.source".

Download it here

Here is a screenshot of the Automation Tab in the Settings UI:


I have not yet fully tested the CM17A (firecracker) interface; but I know the code works just haven't been able to test it in this environment.  I have a new one on order and it should be here anytime now. 


Features:
- Turn on or off X10 support all together

- Choose the COM Port
- Choose the X10 Device CM11A or CM17A

- Testing inline

- Ability to chain together a collection of X10 actions to:
 Successful, Fixed, Broken and Still Failing events

- Turn on or off the Time based Exclusions
 - Exclude on Weekends
 - Exclude by specific time of day
 - Exclude based on Sunrise/Sunset for your given longitude/latitude
  (default long/lat are for Vancouver BC, Canada)


Let me know your thoughts.

 

Posted: Dec 14 2005, 02:39 PM by Rob Chartier | with 5 comment(s)
Filed under:

Comments

David Paterson said:

Have tried to use your version of CCtray and get an exception arround the settings dialog (Seems to be date/time related)

I have tried without an x10 section in config file and get this exception when I tried to enable x10.

I have tried to manually enter the x10 section in the config file but get an exception on startup.

I have included a copy of our config and of the exception.

<?xml version="1.0" encoding="utf-8"?>
<Configuration xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Projects>
<Project serverUrl="tcp://helicon:21234/CruiseManager.rem" projectName="Pegasus" />
</Projects>
<PollPeriodSeconds>5</PollPeriodSeconds>
<BuildTransitionNotification showBalloon="true">
<Sound>
<BrokenBuildSound>C:\Documents and Settings\Administrator\My Documents\Scottish.wav</BrokenBuildSound>
<FixedBuildSound>C:\Documents and Settings\Administrator\My Documents\woohoo.wav</FixedBuildSound>
<StillFailingBuildSound>C:\Documents and Settings\Administrator\My Documents\Scottish.wav</StillFailingBuildSound>
<StillSuccessfulBuildSound>C:\Documents and Settings\Administrator\My Documents\woohoo.wav</StillSuccessfulBuildSound>
</Sound>
<BalloonMessages>
<BrokenBuildMessage>
<Caption>Broken build</Caption>
<Message>Recent checkins have broken the build</Message>
</BrokenBuildMessage>
<FixedBuildMessage>
<Caption>Fixed build</Caption>
<Message>Recent checkins have fixed the build</Message>
</FixedBuildMessage>
<StillFailingBuildMessage>
<Caption>Build still failing</Caption>
<Message>The build is still broken...</Message>
</StillFailingBuildMessage>
<StillSuccessfulBuildMessage>
<Caption>Build successful</Caption>
<Message>Yet another successful build!</Message>
</StillSuccessfulBuildMessage>
</BalloonMessages>
</BuildTransitionNotification>
<TrayIconDoubleClickAction>ShowStatusWindow</TrayIconDoubleClickAction>
<Icons>
<BrokenIcon />
<BuildingIcon />
<SuccessIcon />
<NotConnectedIcon />
</Icons>
<X10>
<Enabled>true</Enabled>
<ComPort>COM1</ComPort>
<StartTime>09:00:00.0000000-00:00</StartTime>
<EndTime>17:30:00.0000000-00:00</EndTime>
<StartDay>Monday</StartDay>
<EndDay>Friday</EndDay>
</X10>
</Configuration>

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentOutOfRangeException: Specified argument was out of the range of valid values.
Parameter name: Hour, Minute, and Second parameters describe an unrepresentable DateTime.
at System.DateTime.TimeToTicks(Int32 hour, Int32 minute, Int32 second)
at System.DateTime..ctor(Int32 year, Int32 month, Int32 day, Int32 hour, Int32 minute, Int32 second)
at ThoughtWorks.CruiseControl.CCTrayLib.X10.Solar.SunriseSunset.GetSunset(Double dLat, Double dLon, DateTime time) in D:\SourceCode\public\CruiseControl.NET-1.0.source\project\CCTrayLib\X10\Solar\SunriseSunset.cs:line 309
at ThoughtWorks.CruiseControl.CCTrayLib.Configuration.X10Configuration.get_DayEndTime() in D:\SourceCode\public\CruiseControl.NET-1.0.source\project\CCTrayLib\Configuration\X10Configuration.cs:line 46
at ThoughtWorks.CruiseControl.CCTrayLib.Presentation.CCTrayMultiSettingsForm.BindAutomationControls() in d:\sourcecode\public\cruisecontrol.net-1.0.source\project\cctraylib\presentation\cctraymultisettingsform.cs:line 1296
at ThoughtWorks.CruiseControl.CCTrayLib.Presentation.CCTrayMultiSettingsForm.X10Sunrise_CheckedChanged(Object sender, EventArgs e) in d:\sourcecode\public\cruisecontrol.net-1.0.source\project\cctraylib\presentation\cctraymultisettingsform.cs:line 1373
at System.Windows.Forms.CheckBox.OnCheckedChanged(EventArgs e)
at System.Windows.Forms.CheckBox.set_CheckState(CheckState value)
at System.Windows.Forms.CheckBox.set_Checked(Boolean value)
at ThoughtWorks.CruiseControl.CCTrayLib.Presentation.CCTrayMultiSettingsForm.BindAutomationControls() in d:\sourcecode\public\cruisecontrol.net-1.0.source\project\cctraylib\presentation\cctraymultisettingsform.cs:line 1290
at ThoughtWorks.CruiseControl.CCTrayLib.Presentation.CCTrayMultiSettingsForm.X10Sunset_CheckedChanged(Object sender, EventArgs e) in d:\sourcecode\public\cruisecontrol.net-1.0.source\project\cctraylib\presentation\cctraymultisettingsform.cs:line 1380
at System.Windows.Forms.CheckBox.OnCheckedChanged(EventArgs e)
at System.Windows.Forms.CheckBox.set_CheckState(CheckState value)
at System.Windows.Forms.CheckBox.set_Checked(Boolean value)
at ThoughtWorks.CruiseControl.CCTrayLib.Presentation.CCTrayMultiSettingsForm.BindAutomationControls() in d:\sourcecode\public\cruisecontrol.net-1.0.source\project\cctraylib\presentation\cctraymultisettingsform.cs:line 1289
at ThoughtWorks.CruiseControl.CCTrayLib.Presentation.CCTrayMultiSettingsForm.X10Enabled_CheckedChanged(Object sender, EventArgs e) in d:\sourcecode\public\cruisecontrol.net-1.0.source\project\cctraylib\presentation\cctraymultisettingsform.cs:line 1331
at System.Windows.Forms.CheckBox.OnCheckedChanged(EventArgs e)
at System.Windows.Forms.CheckBox.set_CheckState(CheckState value)
at System.Windows.Forms.CheckBox.OnClick(EventArgs e)
at System.Windows.Forms.CheckBox.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.2032
CodeBase: file:///c:/windows/microsoft.net/framework/v1.1.4322/mscorlib.dll
----------------------------------------
cctray
Assembly Version: 1.0.0.1251
Win32 Version: 1.0.0.1251
CodeBase: file:///C:/downloads/CCTrayWithX10%20DONT%20USE/cctray.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.2032
CodeBase: file:///c:/windows/assembly/gac/system.windows.forms/1.0.5000.0__b77a5c561934e089/system.windows.forms.dll
----------------------------------------
ThoughtWorks.CruiseControl.CCTrayLib
Assembly Version: 1.0.0.1251
Win32 Version: 1.0.0.1251
CodeBase: file:///C:/downloads/CCTrayWithX10%20DONT%20USE/ThoughtWorks.CruiseControl.CCTrayLib.DLL
----------------------------------------
System
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.2032
CodeBase: file:///c:/windows/assembly/gac/system/1.0.5000.0__b77a5c561934e089/system.dll
----------------------------------------
System.Xml
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.2032
CodeBase: file:///c:/windows/assembly/gac/system.xml/1.0.5000.0__b77a5c561934e089/system.xml.dll
----------------------------------------
jkqccuzh
Assembly Version: 0.0.0.0
Win32 Version: 1.1.4322.2032
CodeBase: file:///c:/windows/assembly/gac/system/1.0.5000.0__b77a5c561934e089/system.dll
----------------------------------------
System.Drawing
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.2032
CodeBase: file:///c:/windows/assembly/gac/system.drawing/1.0.5000.0__b03f5f7f11d50a3a/system.drawing.dll
----------------------------------------
ThoughtWorks.CruiseControl.Remote
Assembly Version: 1.0.0.1251
Win32 Version: 1.0.0.1251
CodeBase: file:///C:/downloads/CCTrayWithX10%20DONT%20USE/ThoughtWorks.CruiseControl.Remote.DLL
----------------------------------------
System.Runtime.Remoting
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.2032
CodeBase: file:///c:/windows/assembly/gac/system.runtime.remoting/1.0.5000.0__b77a5c561934e089/system.runtime.remoting.dll
----------------------------------------
Accessibility
Assembly Version: 1.0.5000.0
Win32 Version: 1.1.4322.573
CodeBase: file:///c:/windows/assembly/gac/accessibility/1.0.5000.0__b03f5f7f11d50a3a/accessibility.dll
----------------------------------------

************** JIT Debugging **************
To enable just in time (JIT) debugging, the config file for this
application or machine (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the machine
rather than being handled by this dialog.
# January 6, 2006 8:52 AM

Jim Cullison said:

Any more action on this?  I'd like to see this feature in cctray.

# January 17, 2007 12:12 PM

Eric Hexter said:

So I integrated x10 with cruise control with a server side application that controls a spinning beacon when it detects a problem with a build.  I am using the ActiveHome USB interface for x-10. While I like the idea of exposing this via CCTray, I hate the idea of forcing a machine to have a user logged on and running cctry for the x10 cababilities to be functional.

That being said... If you could abstract the x10 interface then I could write a plug-in for the ActiveHome USB interface.  Instead of using a firecracker device.

# January 17, 2007 6:36 PM

Tower107 said:

The download link seems to be down. Is this down for good?

# April 26, 2007 2:18 PM

Claudio Maccari said:

The download link seems to be down.

Is there a link also for source code download ?

Thanks

makka

# August 3, 2007 12:08 PM
Leave a Comment

(required) 

(required) 

(optional)

(required)