Combining Alerts with Scripts or Automations for TTS Repeating Alerts

So, I have several alerts. The common ones, door left open, temp above a threshold, etc. I get notifications on my iphone, and they repeat until the alert is clear. I can acknowledge them to stop getting the alerts.

That all works well. I’m finally getting around to TTS, and thought it would be nice to get the same Alert over TTS.

I believe I’ll have to create a seperate automation/scripts for that. But not sure how to get it to do exactly as I would like.

For example here is my garage door alert

  garage_door:
    name: Garage is open
    done_message: Garage is closed
    entity_id: cover.garage_door_opener
    state: 'open'
    repeat:
      - 30
      - 60
    can_acknowledge: True
    skip_first: True
    notifiers:
      - ios_mes_iphone
      - pushbullet_notifications

I would like to get a TTS at 30 minutes, then one at 60, repeating until either it was closed or until I acknowledged it.

Another example

  garage_fridge_temp:
    name: Garage Fridge temp above 40 degreees
    done_message: Garage Fridge temp is now less than 40 degrees
    entity_id: binary_sensor.garage_fridge_warm
    state: 'on'
    repeat:
      - 15
      - 30
      - 60
    can_acknowledge: True
    skip_first: True
    notifiers:
      - ios_mes_iphone
      - pushbullet_notifications

Can a TTS device be a notifier? I feel confident that I could do a single alert right now, or possibly a repeating alert, but what about acknowledging that alert, and then having the TTS stop alerting me.

Hope this is makes sense.

media_player (required for TTS) is not a notification platform (maybe a feature request should be created, would actually be quite useful).
A way round this could be to use the MQTT notifications and create an automation that plays TTS every time such a notification is fired.
Alternatively there may be a way to catch the event_fired event to trigger an automation but I’ve not really looked into that side of things yet except to catch my doorbell:

  trigger:
    - platform: event
      event_type: signal_received
      event_data:
        entity_id: sensor.doorbell_sound

If you can catch the alert or notification event I suspect you could also retrieve its name and use this to generate the correct TTS message…

Hi @ptdalen did you ever get this to work? If so, please share your github so I can learn. I am trying to do something very similar.

Thanks.