Illusion Posted November 8, 2009 Posted November 8, 2009 I have a program that alerts me if my house goes outside preset temperature ranges. I have another program that queries the t-stats about every 3 hours. Immediately after one of those automated queries yesterday at about 5p I received multiple notifications of temperature outside the range, but nothing was wrong at the house. Any thoughts as to what happened here? Temperature Alert! If Status 'Bedroom T-Stat' > 88° (Temperature) Or Status 'Bedroom T-Stat' < 56° (Temperature) Or Status 'Living Room T-Stat' > 87° (Temperature) Or Status 'Living Room T-Stat' < 56° (Temperature) Then Send Notification to All Else - No Actions - (To add one, press 'Action')
Illusion Posted November 8, 2009 Author Posted November 8, 2009 Sorry. I am having to post this as multiple posts for some reason. I cannot get all the info into one post, the system just will not take it, plus I had to turn HTML off for that first post cause I guess the greater than and less than symbols mean something in HTML and were messing up the text. Anyway, continuing on.... Relevant Log Entries: Living Room T-Stat Status Query° Sat 11/07/2009 05:00:56 PM Program Log Living Room T-Stat Status Query° Sat 11/07/2009 05:00:56 PM Program Log Living Room T-Stat Status 76° Sat 11/07/2009 05:00:56 PM System Log Living Room T-Stat Status 127.5° Sat 11/07/2009 05:00:57 PM System Log Living Room T-Stat Humidity 74% Sat 11/07/2009 05:00:58 PM System Log
Illusion Posted November 8, 2009 Author Posted November 8, 2009 and on... More relevant log entries: Bedroom T-Stat Status Query° Sat 11/07/2009 05:01:01 PM Program Log Bedroom T-Stat Status Query° Sat 11/07/2009 05:01:01 PM Program Log Bedroom T-Stat Status 75° Sat 11/07/2009 05:01:01 PM System Log Bedroom T-Stat Humidity 75% Sat 11/07/2009 05:01:03 PM System Log And here are the notifications I received: Temperature Alert! 'Bedroom T-Stat (xx xx xx 1)' Status set to 75.00° at 11/7/2009 16:59:33. Temperature Alert! 'Living Room T-Stat (xx xx xx 1)' Status set to 127.50° at 11/7/2009 16:59:33.
Illusion Posted November 8, 2009 Author Posted November 8, 2009 Questions: 1. It looks like there were two temperatures set for the living room t-stat in the system log, one of which was 127.5. This is what I believe caused the erroneous notifications. Has anyone else had this issue with reported status? 2. Why did the system have 2 temperatures for the livingroom t-stat? 3. Why did I get 2 emails? One for the living room that the system thought was out of bounds and one for the bedroom which the system knew was still in bounds? 4. Why is the time inside the notifications before the time of the query? I got the notifications after the erroneous query was performed. Why do the notifications have time stamps before they could have been generated?
Chris Jahn Posted November 8, 2009 Posted November 8, 2009 Questions: 1. It looks like there were two temperatures set for the living room t-stat in the system log, one of which was 127.5. This is what I believe caused the erroneous notifications. Has anyone else had this issue with reported status? 2. Why did the system have 2 temperatures for the livingroom t-stat? 3. Why did I get 2 emails? One for the living room that the system thought was out of bounds and one for the bedroom which the system knew was still in bounds? 4. Why is the time inside the notifications before the time of the query? I got the notifications after the erroneous query was performed. Why do the notifications have time stamps before they could have been generated? I can't explain the 127.5, we'll have to look into that, but it does explain the program running twice. In your program if either the status of the Bedroom t-stat or Living Room t-stat changes the program will run. - The program ran the Then the first time when the living room temperature changed to 127.5. - The program ran the Then the second time because the bedroom temperature changed (still in the normal range), but the overall condition was still true because the status of the living room was still 127.5 The timestamps in the log are created when the log entry is created and may be off from the actual notification timestamp.
Illusion Posted November 9, 2009 Author Posted November 9, 2009 - The program ran the Then the first time when the living room temperature changed to 127.5. - The program ran the Then the second time because the bedroom temperature changed (still in the normal range), but the overall condition was still true because the status of the living room was still 127.5 The timestamps in the log are created when the log entry is created and may be off from the actual notification timestamp. Nice to hear from you, Chris. Thanks for the quick response. Well that answers question 3 and 4 pretty completely. Of course when you explain it, it is obvious that the program would run twice. My brain just does not work that way. I keep forgetting just how event based the ISY is. I will be breaking that into two programs immediately. It is funny, because I have dozens of programs that I have engineered to take advantage of exactly this behavior, I just did not see it here for some reason.
Recommended Posts