this post was submitted on 16 Feb 2024
29 points (100.0% liked)

homeassistant

12008 readers
126 users here now

Home Assistant is open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server. Available for free at home-assistant.io

founded 1 year ago
MODERATORS
 

I've been reading through the documentation and looked at several tutorials, but I can't get actionable notifications working.

Here's an example YAML that was originally done in the GUI. It's intented to send an actionable notification with two options, and when you click one, it should send another notification to confirm it worked.

It sends the notification fine, and when I tap the button the wait for trigger section in Home Assistant lights up to indicate that it's been triggered. But nothing further happens.

Any help appreciated!

alias: Actionable notification test
description: ""
trigger: []
condition: []
action:
  - service: notify.notify
    metadata: {}
    data:
      message: Message me?
      data:
        actions:
          - action: ACTION_NOTIFY
            title: Message me
          - action: ACTION_IGNORE
            title: Ignore
  - wait_for_trigger:
      - platform: event
        event_type: mobile_app_notification_action
        event_data:
          action: ACTION_NOTIFY
      - platform: event
        event_type: mobile_app_notification_action
        event_data:
          action: ACTION_IGNORE
    continue_on_timeout: false
    timeout:
      hours: 0
      minutes: 0
      seconds: 0
      milliseconds: 0
  - alias: Perform the action
    choose:
      - conditions:
          - condition: template
            value_template: "{{ wait.trigger.event.data.action == \"ACTION_NOTIFY\" }}"
        sequence:
          - service: notify.notify
            metadata: {}
            data:
              message: Requested message
mode: single
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 3 points 8 months ago* (last edited 8 months ago) (1 children)

Thanks!

I got it working, though it seemed to be a combination of two things. I added the timeout, but it didn't help. Then I read that sometimes calling a general notification doesn't work, so I set it to specifically my phone and suddenly it worked! I removed the timeout, and broken again, so it definitely needs the timeout (despite saying it's optional), so thanks for that tip! Weird that it still fires and recognises the trigger, but it just doesn't do other actions because the automation already aborted.

Is there any issue setting super long timeouts? Can I set it to 24 or 48 hours without issue?

[–] [email protected] 4 points 8 months ago (1 children)

I have actionable notifications with notify.notify service working so I’m not sure there - something sounds off.

I don’t think there’s issues with long timeouts, but realize that they won’t persist through restarts of Home Assistant, and depending on your automation settings you can control the number of instances. To disconnect the action from the running automation I often add the event as another trigger to the automation and then add logic to handle the normal trigger and the notification trigger separately. No wait needed in the automation then, just fire the notification and another instance of the automation handles the action.

[–] [email protected] 3 points 8 months ago

Oh that sounds like a better way of handling it! When I get a chance I'll take another stab at it and see if I can get it working your way.