Jump to content

Repeated Text Notifications / Programing Issue


Gunnersen

Recommended Posts

I recently added some 2852-222 Leak sensors to my system (ISY 99i pro). No problem they work fine but I do have a rather annoying problem with test notification. I want to receive just one notification. I always get two and then a third when the sensors resets from wet back to its normal set of dry.

Below is the program I use. Any help would be greatly appreciated. (without the repeat 1 time line I get continuous text messages)

Note: This is only an issue when the "else" condition is true.

 

If

Status 'Leak Sensor Basement Door-Wet' is On

And Status 'Door Pad 8 / Door Pad 8-G / Away Mode' is Off

 

Then

Send Notification to 'Verizon Text' content 'Leak Alarm Basement Door'

Repeat Every 2 seconds

Set Scene 'Leak Alarm' On

Wait 2 seconds

Set Scene 'Leak Alarm' Off

 

Else

Repeat 1 times

Send Notification to 'Verizon Text' content 'Leak Alarm Basement Door'

Wait 2 minutes

Link to comment

The only thing that would make you keep getting messages is that the program keeps re-triggering.

 

Both If conditions are "status". That means any change in status of either thing will trigger the program, and if either item is false, you will get an Else execution and thus a text. The repeat and wait commands won't block that. Any item in the IF that is a trigger will automatically abort a Then or Else clause that is running and start over again.

 

I don't know what this "door pad" is and I don't know if the water sensor could be flipping back and forth on/off/on/off. But one of those 2 things has to be changing repeatedly for you to get hammered with texts.

 

Also, if this door pad device ever changes status, you will get the else text even if the leak sensor was never wet.

 

I don't really understand why you have the Else clause at all. Don't you want a text to tell warn you of a leak in the Then section only?

Link to comment

I guess I should have explained the program more clearly.

The Program is designed to send me a text and to repeatedly flash certain lights when the sensor detects water.

The door pad refers to a keypad button “away†which if on causes the “else†condition which will send a text but no flashing lights.

I’m a novice when it comes to ISY programing so I may not be using the appropriate commands. I used the repeat 1 times command to limit the number of texts and it helped. I went from unlimited to two or three.

Is there a better command then status and repeat for my application?

Link to comment

The "repeat 1 time" should not have changed anything. The default is to do things 1 time. "repeat 1 time" is only used after a repeat multiple times to signal that what comes after does not get repeated.

 

This program will execute the else clause every single time that keypad changes status, and assuming the lead sensor is dry, will thus send you a text.

 

You need 2 programs to do what you want.

 

If
Status 'Leak Sensor Basement Door-Wet' is On
And Status 'Door Pad 8 / Door Pad 8-G / Away Mode' is Off

Then
Send Notification to 'Verizon Text' content 'Leak Alarm Basement Door'
Repeat Every 2 seconds
Set Scene 'Leak Alarm' On
Wait 2 seconds
Set Scene 'Leak Alarm' Off

Else
- - blank

 

If
Status 'Leak Sensor Basement Door-Wet' is On
And Status 'Door Pad 8 / Door Pad 8-G / Away Mode' is On

Then
Send Notification to 'Verizon Text' content 'Leak Alarm Basement Door'


Else
- - blank

 

If you still are getting multiple emails, then the cause would be that the leak sensor is not holding steady at on. In other words, it is maybe not fully wet and it is sensing wet, then not wet, etc. If indeed that is the case, let me know, and I can show you how to limit the texts to 1 per some period of time of your choosing.

 

Edit: Here it is anyway.

 

Program send text
If
$limit.text = 1  (this is a state variable you need to create)
Then
Send Notification to 'Verizon Text' content 'Leak Alarm Basement Door'
wait 1 hour (or whatever)
Set $limit.text to 0
Else 
- - 

 

And change the other two programs as follows

If
Status 'Leak Sensor Basement Door-Wet' is On
And Status 'Door Pad 8 / Door Pad 8-G / Away Mode' is Off

Then
Set $limit.text to 1
Repeat Every 2 seconds
Set Scene 'Leak Alarm' On
Wait 2 seconds
Set Scene 'Leak Alarm' Off

Else
- - blank

 

If
Status 'Leak Sensor Basement Door-Wet' is On
And Status 'Door Pad 8 / Door Pad 8-G / Away Mode' is On

Then
Set $limit.text to 1

Else
- - blank

 

The program "send text" will only trigger and be true (and thus send a text) when the variable changes from 0 to 1. It will not run again no matter how many times the other 2 programs set the variable to 1, because it is already 1. State variables are only triggers when the change, so if it is already 1, setting it to 1 is not a change. Then an hour after it changes to 1, it resets itself back to 0, at which point it can be triggered again.

Link to comment

Archived

This topic is now archived and is closed to further replies.


  • Recently Browsing

    • No registered users viewing this page.
  • Forum Statistics

    • Total Topics
      36.9k
    • Total Posts
      370.3k
×
×
  • Create New...