Jump to content

Notification issues.


tlkohler

Recommended Posts

Posted

I'm using an Insteon [2635-222] On/Off module to power on an ELK heavy duty relay for water heater timing. I use an ISY994i/IR Pro and a PLM as the device controllers.

 

This is one of the programs I use during the day as a water heater timer program:

If
       Time is  3:30:00PM
   And Status  'WH On-Off Module' is not On

Then
       Set 'WH On-Off Module' On

Else
       Send Notification to 'Terry's All' content 'WH Status'

Turns hot water heater on daily @ 3:30 pm

 

The custom notification is to be sent to both my email and text if the module is not set to "ON" for some reason.

 

Up until very recently my notifications worked fine as I had them included under the THEN statement. Once I was sure things were working with the timing programs and the heater was coming on and off as I had planned, I moved the notification line to the ELSE statement and the problems began.

What is in fact happening now is I'm getting numerous emails and texts around the event timings every time even though the module has actually come on. Making things even more difficult is the fact that its not always the same amount of notifications. In all there are 8 events: an ON and an OFF set up for early morning on weekdays, an ON and an OFF for later morning on the weekend, an ON and an OFF for early afternoons and an ON and an OFF for evenings. Sometimes I will get only one or two notifications while other times I will get 8 separate emails and 8 texts indicating an event has occurred but with each of the titles of the timing event.

 

Any help in clearing this up would be much appreciated.

Posted
I'm using an Insteon [2635-222] On/Off module to power on an ELK heavy duty relay for water heater timing. I use an ISY994i/IR Pro and a PLM as the device controllers.

 

This is one of the programs I use during the day as a water heater timer program:

If
       Time is  3:30:00PM
   And Status  'WH On-Off Module' is not On

Then
       Set 'WH On-Off Module' On

Else
       Send Notification to 'Terry's All' content 'WH Status'

Turns hot water heater on daily @ 3:30 pm

 

The custom notification is to be sent to both my email and text if the module is not set to "ON" for some reason.

 

Up until very recently my notifications worked fine as I had them included under the THEN statement. Once I was sure things were working as I had planned I moved the notification line to the ELSE statement and the problems began.

What is in fact happening now is I'm getting numerous emails and texts around the event timings every time even though the module has actually come on. Making things even more difficult is the fact that its not always the same amount of notifications. In all there are 8 events: an ON and an OFF set up for early morning on weekdays, an ON and an OFF for later morning on the weekend, an ON and an OFF for early afternoons and an ON and an OFF for evenings. sometimes I will get only one or two notifications while other I will get 8 separate emails and 8 texts indicating the event.

 

Any help in clearing this up would be much appreciated.

 

The way this program is written (assuming that the notifications deliver) you will receive a notification every time the water heater turns on (not just at 3:30) or Off (except at 3:30). This is because the program is triggered every time the status of the water heater changes. The Else is evaluated and if it evaluates false, the else runs. This will evaluate False any time the WH turns Off except at 3:30 and every time it turns On. At 3:30, the Then clause runs, the WH turns on, the Status changes, the if re-evaluates and the else clause runs and you get notified.

 

A separate program like:

If 
   Time is 3:30:01PM
   And Status  'WH On-Off Module' is Off

Then
       Send Notification to 'Terry's All' content 'WH Status'

Else

 

Should do what you want.

 

-Xathros

Posted

 

Up until very recently my notifications worked fine as I had them included under the THEN statement. Once I was sure things were working as I had planned I moved the notification line to the ELSE statement and the problems began.

What is in fact happening now is I'm getting numerous emails and texts around the event timings every time even though the module has actually come on. Making things even more difficult is the fact that its not always the same amount of notifications. In all there are 8 events: an ON and an OFF set up for early morning on weekdays, an ON and an OFF for later morning on the weekend, an ON and an OFF for early afternoons and an ON and an OFF for evenings. sometimes I will get only one or two notifications while other I will get 8 separate emails and 8 texts indicating the event.

 

Any help in clearing this up would be much appreciated.

 

I usually use two separate programs and rarely use Else. Only specific finite conditions will fire for Then based on your If's. The else is EVERYTHING else and you might not even be able to consider them all depending on the complexity of the If's. In this particular case, when the module is turned on the If's are evaluated again and now fires the Else.

 

Make it two programs to turn on the module and another to monitor the status. If your network isn't reliable and it's often not getting turned on my might even add a query to run every hour during the appropriate time period and then fire the notification

Posted

[quote="Xathros

I'm not sure what you want to happen. The way this program is written (assuming that the notifications deliver) you will receive a notification every time the water heater turns on (not just at 3]

 

Thanks for your quick reply. What I'd like is to get a text and email (which the custom notification is set up to do) if my water heater does not turn on and off at each of the prescribed times. It's just that I'm getting up to 8 at a time.

Posted

 

Up until very recently my notifications worked fine as I had them included under the THEN statement. Once I was sure things were working as I had planned I moved the notification line to the ELSE statement and the problems began.

What is in fact happening now is I'm getting numerous emails and texts around the event timings every time even though the module has actually come on. Making things even more difficult is the fact that its not always the same amount of notifications. In all there are 8 events: an ON and an OFF set up for early morning on weekdays, an ON and an OFF for later morning on the weekend, an ON and an OFF for early afternoons and an ON and an OFF for evenings. sometimes I will get only one or two notifications while other I will get 8 separate emails and 8 texts indicating the event.

 

Any help in clearing this up would be much appreciated.

 

I usually use two separate programs and rarely use Else. Only specific finite conditions will fire for Then based on your If's. The else is EVERYTHING else and you might not even be able to consider them all depending on the complexity of the If's. In this particular case, when the module is turned on the If's are evaluated again and now fires the Else.

 

Make it two programs to turn on the module and another to monitor the status. If your network isn't reliable and it's often not getting turned on my might even add a query to run every during the appropriate time period and then fire the notification

 

I do utilize two programs for each "timing event". One to turn the heater on and another to turn it off. That's not what your suggesting but I'm not sure how to do what you've proposed.

Posted

Just a little more clarification to the program. It could be possible that someone manually turns the water heater on outside of the "scheduled" times. I added the line to check if the heater is already on before attempting a turn on and conversely already off before I attempt to tune it off. Would you say those lines are not needed and therefore I could remove them.

 

 

Instead of having one program to turn on the heater at a given time and another to turn it off at a specified time, would it make more sense to utilize jut one program for the on and off sessions?

Posted

tkohler-

 

I had edited my post after you saw it apparently.

 

Absolutely no point in checking the status before changing the status.

 

You can certainly move the On and Off into one program as follows:

If 
     Time is From 3:30:00PM to 9:30:00PM (Same Day)

Then
       Set 'WH On-Off Module' On

Else
       Set 'WH On-Off Module' Off

 

Use a second program to check the status as I posted previously.

 

-Xathros

Posted
Just a little more clarification to the program. It could be possible that someone manually turns the water heater on outside of the "scheduled" times. I added the line to check if the heater is already on before attempting a turn on and conversely already off before I attempt to tune it off. Would you say those lines are not needed and therefore I could remove them.

 

If ISY has an "On" status for the device it won't send another "On" to it and when checking it's looking at it's current status database rather than a live query to the device. Therefore, adding your own checks is unnecessary unless required to create a specific logic event.

 

Assuming your time for on is 330pm - 12am.

 

Water Heater Control (On/Off)

If

From 3:30:00PM

To 11:59:00PM (same day)

 

Then

Set 'Water Heater Widget' On

 

Else

Set 'Water Heater Widget' Off

 

Monitor Unscheduled Use

If

From 12:00:00AM

To 3:29:00PM (same day)

And Status 'Water Heater Widget' is On

 

Then

Send Notification to 'Default'

 

Else

- No Actions - (To add one, press 'Action')

 

Monitor Water Heater During On Schedule

If

From 3:30:00PM

To 11:59:00PM (same day)

And Status 'Water Heater Widget' is not On

 

Then

Send Notification to 'Default'

 

Else

- No Actions - (To add one, press 'Action')

 

 

The notification will fire every time the water heater is turned off during the On schedule.

Posted

With a custom notification giving me the status of the device (WH Status), does the following program

 

If
      -(
      |     On Mon, Tue, Wed, Thu, Fri
      |     Time is  4:31:00AM
      |  Or On Sat, Sun
      |     Time is  8:01:00AM
      |  Or Time is  3:31:00PM
      |  Or Time is  7:01:00PM
      | And Status  'WH On-Off Module' is not On
      -)
    Or-(
      |     On Mon, Tue, Wed, Thu, Fri
      |     Time is  6:01:00AM
      |  Or On Sat, Sun
      |     Time is 10:01:00AM
      |  Or Time is  5:31:00PM
      |  Or Time is  9:31:00PM
      | And Status  'WH On-Off Module' is not Off
      -)

Then
       Send Notification to 'Terry All' content 'WH Status'

Else
  - No Actions - (To add one, press 'Action')

 

 

Send an email at 4:31 am during the week, 8:01 am on the weekend, 3:31 pm and 7:01 pm if the water heater is not ON

 

- AND -

 

send an email at 6:01 am during the week, 10:01 am on the weekend, 5:31 pm and 9:01 pm if the water heater is not OFF

 

 

Thanks in advance

Posted

If
      -(
      |     On Mon, Tue, Wed, Thu, Fri
      |     Time is  4:31:00AM
      |  Or On Sat, Sun
      |     Time is  8:01:00AM
      |  Or Time is  3:31:00PM
      |  Or Time is  7:01:00PM
      | And Status  'WH On-Off Module' is not On
      -)
    Or-(
      |     On Mon, Tue, Wed, Thu, Fri
      |     Time is  6:01:00AM
      |  Or On Sat, Sun
      |     Time is 10:01:00AM
      |  Or Time is  5:31:00PM
      |  Or Time is  9:31:00PM
      | And Status  'WH On-Off Module' is not Off
      -)

Then
       Send Notification to 'Terry All' content 'WH Status'

Else
  - No Actions - (To add one, press 'Action')

Thanks in advance

Careful of your parenthesis placement.

The 7:01 and 9:31 times are the only ones getting ANDed with the WH_Status. You should get notifications at all other times listed.

 

Boolean AND takes higher precedent of order over an OR usually.

Posted

The additional parens indicated larryllix will have the Program look like this

 

If
      (
         (    
           On Mon, Tue, Wed, Thu, Fri
            Time is  4:31:00AM
         Or On Sat, Sun
            Time is  8:01:00AM
         Or Time is  3:31:00PM
         Or Time is  7:01:00PM
         )       
       And Status  'WH On-Off Module' is not On
      )
    Or (
         (     
          On Mon, Tue, Wed, Thu, Fri
           Time is  6:01:00AM
         Or On Sat, Sun
            Time is 10:01:00AM
         Or Time is  5:31:00PM
         Or Time is  9:31:00PM
         )
       And Status  'WH On-Off Module' is not Off
      )

Then
       Send Notification to 'Terry All' content 'WH Status'

Else
  - No Actions - (To add one, press 'Action')

Posted

Thanks to all who replied. I've taken the best of several suggestions and combined then. My program is now working exactly as I would like with the notifications arriving as needed and (more importantly) my water heater is powering on and off and I require.

Guest
This topic is now closed to further replies.

×
×
  • Create New...