Hello -
I have deployed a notification that has two action button options…yet when I receive the notification on my phone, there are no buttons to click, even with a long press. The only thing that happens is the notification turns WHITE when I long press.
My code for the notification is below…any guidance or suggestions would be greatly appreciated.
iOS - 26.01
iPhone Pro Max 14
Squid
alias: Enhanced Trash Reminder
description: Reminds about all waste collections for tomorrow
triggers:
- trigger: time
at: "19:00:00"
conditions:
- condition: template
value_template: >-
{% set tomorrow = (now().date() + timedelta(days=1)) %} {% set upcoming =
state_attr('sensor.upcoming_waste', 'upcoming') %} {% if upcoming %}
{% set tomorrow_collections = upcoming | selectattr('date', 'eq', tomorrow.isoformat()) | list %}
{{ tomorrow_collections | length > 0 }}
{% else %}
false
{% endif %}
actions:
- action: notify.mobile_app_sids_iphone
metadata: {}
data:
title: >-
{% set tomorrow = (now().date() + timedelta(days=1)) %} {% set upcoming
= state_attr('sensor.upcoming_waste', 'upcoming') %} {% set
tomorrow_collections = upcoming | selectattr('date', 'eq',
tomorrow.isoformat()) | list %} {% set count = tomorrow_collections |
length %} {% if count == 1 %}
🗑️ Trash Reminder
{% elif count == 2 %}
🗑️♻️ Waste Collection Reminder
{% else %}
🗑️ Multiple Collections Tomorrow
{% endif %}
message: >-
{% set tomorrow = (now().date() + timedelta(days=1)) %} {% set upcoming
= state_attr('sensor.upcoming_waste', 'upcoming') %} {% if upcoming %}
{% set tomorrow_collections = upcoming | selectattr('date', 'eq', tomorrow.isoformat()) | list %}
{% if tomorrow_collections %}
{% set types = tomorrow_collections | map(attribute='type') | list %}
{% set count = types | length %}
{% if count == 1 %}
Tomorrow, your {{ types[0] }} gets picked up. Please take it out tonight! 🌙
{% elif count == 2 %}
Tomorrow, both {{ types[0] }} and {{ types[1] }} get picked up. Don't forget to put both bins out tonight! 📦🗂️
{% else %}
Tomorrow, {{ types | join(', ') }} get picked up. Make sure all bins are out tonight! 📦📦📦
{% endif %}
{% else %}
Error: No collections found for tomorrow.
{% endif %}
{% else %}
Error: Unable to access waste collection data.
{% endif %}
data:
push:
sound: default
badge: 1
action_data:
actions:
- action: MARK_DONE
title: ✅ Bins are out
- action: SNOOZE
title: ⏰ Remind me in 1 hour
mode: single
BUMP
Anyone have a suggestion to try? Would really like to know if the action buttons are supported in iOS 26
I also would like to know how actionable notifications work on iOS
Please remove action_data.
This should work:
data:
push:
sound: default
badge: 1
actions:
- action: MARK_DONE
title: ✅ Bins are out
- action: SNOOZE
title: ⏰ Remind me in 1 hour
@ReneNulschDE
I’ve removed the acton_data and still do not receive any button on iOS.
Please post your complete formatted code again…
@ReneNulschDE
Sorry For the Slow Response…did not get a notification…
Here’s the code for the notification and actions…
Really appreciate your assistance with this!
Squid 
alias: Enhanced Trash Reminder
description: Reminds me about all waste collections for tomorrow
triggers:
- trigger: time
at: "19:00:00"
conditions:
- condition: template
value_template: >-
{% set tomorrow = (now().date() + timedelta(days=1)) %} {% set upcoming =
state_attr('sensor.upcoming_waste', 'upcoming') %} {% if upcoming %}
{% set tomorrow_collections = upcoming | selectattr('date', 'eq', tomorrow.isoformat()) | list %}
{{ tomorrow_collections | length > 0 }}
{% else %}
false
{% endif %}
actions:
- action: notify.mobile_app_iphone
metadata: {}
data:
title: >-
{% set tomorrow = (now().date() + timedelta(days=1)) %} {% set upcoming
= state_attr('sensor.upcoming_waste', 'upcoming') %} {% set
tomorrow_collections = upcoming | selectattr('date', 'eq',
tomorrow.isoformat()) | list %} {% set count = tomorrow_collections |
length %} {% if count == 1 %}
🗑️ Trash Reminder
{% elif count == 2 %}
🗑️♻️ Waste Collection Reminder
{% else %}
🗑️ Multiple Collections Tomorrow
{% endif %}
message: >-
{% set tomorrow = (now().date() + timedelta(days=1)) %} {% set upcoming
= state_attr('sensor.upcoming_waste', 'upcoming') %} {% if upcoming %}
{% set tomorrow_collections = upcoming | selectattr('date', 'eq', tomorrow.isoformat()) | list %}
{% if tomorrow_collections %}
{% set types = tomorrow_collections | map(attribute='type') | list %}
{% set count = types | length %}
{% if count == 1 %}
Tomorrow, your {{ types[0] }} gets picked up. Please take it out tonight! 🌙
{% elif count == 2 %}
Tomorrow, both {{ types[0] }} and {{ types[1] }} get picked up. Don't forget to put both bins out tonight! 📦🗂️
{% else %}
Tomorrow, {{ types | join(', ') }} get picked up. Make sure all bins are out tonight! 📦📦📦
{% endif %}
{% else %}
Error: No collections found for tomorrow.
{% endif %}
{% else %}
Error: Unable to access waste collection data.
{% endif %}
data:
push:
sound: default
badge: 1
actions:
- action: MARK_DONE
title: ✅ Bins are out
- action: SNOOZE
title: ⏰ Remind me in 1 hour
mode: single
ACTIONS
alias: Waste Reminder Actions
description: Handle quick actions from waste reminder
triggers:
- trigger: event
event_type: mobile_app_notification_action
event_data:
action: MARK_DONE
- trigger: event
event_type: mobile_app_notification_action
event_data:
action: SNOOZE
conditions: []
actions:
- choose:
- conditions:
- condition: template
value_template: "{{ trigger.event.data.action == 'MARK_DONE' }}"
sequence:
- action: notify.mobile_app_new_iphone
data:
message: Great! Your bins are ready for pickup tomorrow. 👍
title: Bins Ready ✅
- conditions:
- condition: template
value_template: "{{ trigger.event.data.action == 'SNOOZE' }}"
sequence:
- delay: "01:00:00"
- action: notify.mobile_app_sids_new_iphone
data:
title: "🔔 Reminder: Bins Still Need to Go Out"
message: >-
{% set tomorrow = (now().date() + timedelta(days=1)) %} {% set
upcoming = state_attr('sensor.upcoming_waste', 'upcoming') %} {%
set tomorrow_collections = upcoming | selectattr('date', 'eq',
tomorrow.isoformat()) | list %} {% set types =
tomorrow_collections | map(attribute='type') | list %} Don't
forget: {{ types | join(' and ') }} collection tomorrow!
mode: parallel
You need to fix the spacing. push and actions need to be on the same level.
data:
push:
sound: default
badge: 1
actions:
- action: MARK_DONE
title: ✅ Bins are out
- action: SNOOZE
title: ⏰ Remind me in 1 hour
here is an example that I use for my notification (using “waste collection schedule” component as source).
triggers:
- at: "19:00:00"
trigger: time
conditions:
- condition: template
value_template: "{{ 'in 1 days' in states('sensor.next_collection') }}"
actions:
- target:
entity_id: input_boolean.tonne_bestaetigt
action: input_boolean.turn_off
- data:
title: 🗑️ Tonnenkontrolle
message: "{{ states('sensor.next_collection') }} - Bitte Tonne rausstellen!"
data:
actions:
- action: TONNE_BESTAETIGT
title: ✅ Draußen
push:
sound:
name: default
critical: 1
badge: 1
action: notify.mobile_app_iphone_16_2_von_rene
Adjusting the spacing did the trick…
Thank you for all of the assistance!!
Squid 