larryllix Posted January 10, 2017 Posted January 10, 2017 (edited) I created this alarm system with five different levels to make other ISY programs easier to use it. I hope this gives other ISY users the feel for the power of the ISY event trigger handling engine. It can make programming so much easier once you set up a system to handle your user created events with STATE variables It is based on a variable, making the ISY engine do most of the work. The state variable triggers the select program to alert the owners with different severities. To use I just use one line of program code. Set $sAlarm.level = 5 Remember, that my sensing programs using this alarm system, each send their own specific notifications about the devices being monitored. These notifications are only to follow, or not, with a status indication that something is being done in regards to the detected problem. This is Alarm.level = 0. The "no alarm" state and resting position all levels will reset to when done their "thing". Alarm level 0 - [ID 00E2][Parent 00E4] If $sAlarm.level is 0 Then Set 'Mudroom / MudRm Beeper' Off Set 'Utility Room / Util Beeper' Off Wait 1 second Run Program 'Alarm level 0.1' (If) Else - No Actions - (To add one, press 'Action') Alarm level 0.1 - [ID 00E3][Parent 00E4] If $sHouse.armed is $cFALSE And $sAlarm.level >= 4 Then Set 'Alarm scene flasher' Off Else - No Actions - (To add one, press 'Action') We don't want normal house lighting turned off for low level alarms like Low Batteries etc. $sALarm.Level = 1 gives a short beep on a few buzzlincs to alert the homeowner there is something to be looked at, and a notification should have been sent from the monitoring program. Alarm level 1 - [ID 00DE][Parent 00E4] If $sAlarm.level is 1 Then Set 'Mudroom / MudRm Beeper' On Set 'Utility Room / Util Beeper' On Wait 1 second Set 'Mudroom / MudRm Beeper' Off Set 'Utility Room / Util Beeper' Off $sAlarm.level = 0 Else - No Actions - (To add one, press 'Action') Level 1, beep, in-house only, for Low batteries, etc. $Alarm.level = 2, longer beeper sounds to alert of more serious problems, and that notifications were sent from sensing devices. Alarm level 2 - [ID 00DF][Parent 00E4] If $sAlarm.level is 2 Then Set 'Mudroom / MudRm Beeper' On Set 'Utility Room / Util Beeper' On Wait 30 seconds Set 'Mudroom / MudRm Beeper' Off Set 'Utility Room / Util Beeper' Off $sAlarm.level = 0 Else - No Actions - (To add one, press 'Action') Level 2, longer in-house notifications only $Alarm.level = 3. Same as level 2 but with remote notifications that beepers are going in the house. Alarm level 3 - [ID 00E0][Parent 00E4] If $sAlarm.level is 3 Then Set 'Mudroom / MudRm Beeper' On Set 'Utility Room / Util Beeper' On Send Notification to 'Text Larry' content 'House Beeping' Wait 1 second Send Notification to 'eMail Larry' content 'House Beeping' Wait 30 seconds Set 'Mudroom / MudRm Beeper' Off Set 'Utility Room / Util Beeper' Off $sAlarm.level = 0 Else - No Actions - (To add one, press 'Action') Level 3, In-house, and remote notifications, $Alarm.level = 4. Medium duration, beepers, flashes all inside and outside lights, noise makers, and send notifications that house lights are flashing Alarm level 4 - [ID 00E1][Parent 00E4] If $sAlarm.level is 4 Then Set 'Mudroom / MudRm Beeper' On Set 'Utility Room / Util Beeper' On Send Notification to 'Text Larry' content 'House Alarming ' Send Notification to 'Text Jackie' content 'House Alarming ' Wait 1 second Send Notification to 'eMail Larry' content 'House Alarming ' Send Notification to 'eMail Jackie' content 'House Alarming ' Repeat 5 times Set 'Alarm scene flasher' Fast On Wait 2 seconds Set 'Alarm scene flasher' Fast Off Wait 2 seconds Repeat 1 times Set 'Mudroom / MudRm Beeper' Off Set 'Utility Room / Util Beeper' Off Wait 1 second $sAlarm.level = 0 Else - No Actions - (To add one, press 'Action') Level 4, short duration, neighbourhood, and remote notifications, $Alarm.level = 5. Long duration, beepers, flash all inside and outside lights with noise maker, send notifications that lights are flashing Alarm level 5 - [ID 0071][Parent 00E4] If $sAlarm.level is 5 Then Set 'Mudroom / MudRm Beeper' On Set 'Utility Room / Util Beeper' On Send Notification to 'Text Larry' content 'House Alarming ' Send Notification to 'Text Jackie' content 'House Alarming ' Wait 1 second Send Notification to 'eMail Larry' content 'House Alarming ' Send Notification to 'eMail Jackie' content 'House Alarming ' Repeat 100 times Set 'Alarm scene flasher' Fast On Wait 2 seconds Set 'Alarm scene flasher' Fast Off Wait 2 seconds Repeat 1 times Set 'Mudroom / MudRm Beeper' Off Set 'Utility Room / Util Beeper' Off $sAlarm.level = 0 Else - No Actions - (To add one, press 'Action') Level 5, Long duration, neighbourhood, and remote notifications. $Alarm.level = 4 or 5 notification text sample SUBJECT: HOUSE ALARMING! ${sys.date} ${sys.time12} Lights flashing and noise makers going in house! Edited January 10, 2017 by larryllix
Recommended Posts