Jump to content

Multiple pushover notifications from ISY


SHM
Go to solution Solved by MrBill,

Recommended Posts

23 minutes ago, SHM said:

My ISY sends Pushover a notification that my garage door has closed.  For some reason, I am now getting 3 Pushover notifications for each closure.  Pushover suggest that their API is getting 3 messages.  Any thoughts?

Post your program.  Right click the program name, pick copy to clipboard (the last item) and paste it into a reply below.  No way to know without seeing how the program is written.

Link to comment
38 minutes ago, SHM said:

'vashon2/ east door' state is open

What kind of sensor is that?

several random thoughts:

1) One thing that would probably work is remove "Resource 'vashon east door' " from that program and create a second program:

If

 'vashon2/ east door' state is close

THEN

Resource 'vashon east door'

2) I think the if statement is likely triggering multiple times... to find out create a create a temp integer variable... something like $iCount and add $iCount += 1 to the then body of the program you have.

3) the garage door takes time to close.  therefor it's status is still open while it's closing allowing the "retrips" in #2

another way to solve this is to only allow the trip to occur once...

you could do that with and integer (not state in this case) variable.

If

SHM_Geofence =0

AND SHM_Tahoe =1

AND 'vashon2/ east door' state is open

AND $iClosingFlag = 0

THEN

$iClosingFlag = 1

SET vashon2/ east door' close

-- then in that second program from #1

If

 'vashon2/ east door' state is close

THEN

Resource 'vashon east door'

$iClosingFlag = 0

 

which will prevent the IF from being retriggered while it's closing.

Link to comment
  • Solution
12 minutes ago, SHM said:

I'll give that a try.  My goal was to use Pushover to send a message to my phone telling me that the garage door successfully closed after leaving the geofence

I do alot of that except my notification are all triggered off a variable called $sAway that is generally set by geofence but has actually 5 possible values:

  • -1 = Away mode off, Geofence Off
  • 0 = Away Mode Off, geofence active
  • 1 = Away Mode On, geofence active
  • 2 = Away mode On, Geofence off
  • 3 = Vacation Mode (Away on, geofence off, extra lighting controls enabled)

Normally that variable bounces back and forth between 0 and 1 based on geofence... the other modes are manually set via Home Assistant buttons that I created.

However I don't send notifications for things that are normal, Instead I send notifications for things that are not normal, like "the upstairs fireplace is still on".. if it's off I don't need to be told that...

For doors I have a string of daisy chained programs, which send a notification if a door is not closed and a total count of doors if it finds some open.

(note: all but the first program are disabled and are only run by the daisy chain).

for example:

===================================================================================
Door Check - [ID 015C][Parent 0034]

Folder Conditions for 'Door Check'

If
   - No Conditions - (To add one, press 'Schedule' or 'Condition')
 
Then
   Allow the programs in this folder to run.
 

 

-----------------------------------------------------------------------------------
dc00._trigger.0 - [ID 015D][Parent 015C]

If
        $sAway.HA is 1
 
Then
        $iDoorCheck.tally  = 0
        Run Program 'dc00._trigger.1' (Then Path)
 
Else
   - No Actions - (To add one, press 'Action')

-----------------------------------------------------------------------------------
dc00._trigger.1 - [ID 0160][Parent 015C][Not Enabled]

If
   - No Conditions - (To add one, press 'Schedule' or 'Condition')
 
Then
        Disable Program 'dc00._trigger.0'
        Run Program 'dc01.FrontDr' (If)
 
Else
   - No Actions - (To add one, press 'Action')

-----------------------------------------------------------------------------------
dc01.FrontDr - [ID 0150][Parent 015C][Not Enabled]

If
        'Door Switches / Front Door' Status is On
 
Then
        Resource 'NotificationNS.doordc.FrontDoor'
        $iDoorCheck.tally += 1
        Wait  2 seconds
        Run Program 'dc02.GarageToHouse' (If)
 
Else
        Run Program 'dc02.GarageToHouse' (If)

-----------------------------------------------------------------------------------
dc02.GarageToHouse - [ID 0153][Parent 015C][Not Enabled]

If
        'Door Switches / Garage to House Door 2' Status is On
 
Then
        Resource 'NotificationNS.doordc.Garage2House'
        $iDoorCheck.tally += 1
        Wait  2 seconds
        Run Program 'dc03.GarageSouthOHD' (If)
 
Else
        Run Program 'dc03.GarageSouthOHD' (If)
 

 

-----------------------------------------------------------------------------------
dc03.GarageSouthOHD - [ID 0152][Parent 015C][Not Enabled]

If
        'Door Switches / Garage-South OHD' Status is On
 
Then
        Resource 'NotificationNS.doordc.GarageSouthOHD'
        $iDoorCheck.tally += 1
        Wait  2 seconds
        Run Program 'dc04.GarageNorthOHD' (If)
 
Else
        Run Program 'dc04.GarageNorthOHD' (If)

 

---------

[Redacted a bunch of steps... all the programs follow the same format as those shown above]

-----------------------------------------------------------------------------------
dc16._tally0 - [ID 015E][Parent 015C][Not Enabled]

If
        $iDoorCheck.tally is 0
 
Then
        Set '{hide}Node Servers / Notification Controller / Service Pushover doordc' Sound Magic
        Wait  2 seconds
        Resource 'NotificationNS.doordc._TallyZero'
        Wait  10 seconds
        Set '{hide}Node Servers / Notification Controller / Service Pushover doordc' Sound Door Open
        Enable Program 'dc00._trigger.0'
 
Else
        Run Program 'dc16._tally1' (If)

-----------------------------------------------------------------------------------
dc16._tally1 - [ID 015F][Parent 015C][Not Enabled]

If
        $iDoorCheck.tally is 1
 
Then
        Set '{hide}Node Servers / Notification Controller / Service Pushover doordc' Sound Chime
        Wait  2 seconds
        Resource 'NotificationNS.doordc._TallyOne'
        Wait  10 seconds
        Set '{hide}Node Servers / Notification Controller / Service Pushover doordc' Sound Door Open
        Enable Program 'dc00._trigger.0'
 
Else
        Set '{hide}Node Servers / Notification Controller / Service Pushover doordc' Sound Chime
        Wait  2 seconds
        Resource 'NotificationNS.doordc._ShowTally'
        Wait  10 seconds
        Set '{hide}Node Servers / Notification Controller / Service Pushover doordc' Sound Door Open
        Enable Program 'dc00._trigger.0'
 

 

 

 

  • Like 1
Link to comment
Guest
This topic is now closed to further replies.

×
×
  • Create New...