Recipe - Send Buttons Only Where They Work¶
Purpose¶
Use Pushover for everyday notifications, but send any notification with action buttons to the Home Assistant Companion App instead, since Pushover can't show buttons.
Supernotify picks deliveries by target, not by what the notification contains, so on its own a notification with buttons still goes to Pushover, with the buttons left out. A delivery's fallback: doesn't help either, as that is only used when a delivery fails.
Implementation¶
A Scenario with a condition on the notification_actions and notification_action_groups condition variables, which hold the actions and action_groups given on the notify action. When either has something in it, the scenario switches Pushover off and Mobile Push on.
Example Configuration¶
delivery:
pushover:
transport: pushover
inclusion: default
mobile_push:
transport: mobile_push
inclusion: scenario
scenarios:
needs_buttons:
alias: Buttons only work on the Companion App
conditions: "{{ (notification_actions + notification_action_groups) | length > 0 }}"
delivery:
pushover:
enabled: false
mobile_push:
action_groups:
garage:
- action: CLOSE_GARAGE
title: Close the garage
Either of these notifications goes to the Companion App, and one without actions or action_groups goes to Pushover:
action: notify.supernotify
data:
message: Garage door left open
actions:
- action: CLOSE_GARAGE
title: Close it now
Notes¶
- Action groups added by a scenario aren't in
notification_action_groups, since scenarios add them after their conditions are checked. Only what's given on the notify action is there. - Buttons put directly in a Companion App style
data: actions:aren't innotification_actions, but can be checked withnotification_data.actions. - To send to both, leave out the
pushover: enabled: falsepart.