Workflow definitions for IoT automations. Copy/adapt these for Home Assistant.
Door Sensor Automations
Door Left Open Alert
Announces via Google Home when a door has been open for 5 minutes.
alias: "Alert - Door Left Open"description: "Announce when a door has been open too long"trigger:
- platform: stateentity_id:
- binary_sensor.front_door - binary_sensor.back_door - binary_sensor.office_door - binary_sensor.garage_entry_doorto: "on"for:
minutes: 5action:
- service: tts.google_translate_saytarget:
entity_id: media_player.living_room_speakerdata:
message: "{{ trigger.to_state.attributes.friendly_name }} has been open for 5 minutes."mode: parallel
Door Still Open Reminder
Repeats announcement every 5 minutes while an exterior door remains open.
alias: "Alert - Door Still Open Reminder"description: "Repeat reminder every 5 minutes while door is open"trigger:
- platform: stateentity_id:
- binary_sensor.front_door - binary_sensor.back_doorto: "on"for:
minutes: 5action:
- repeat:
while:
- condition: stateentity_id: "{{ trigger.entity_id }}"state: "on"sequence:
- service: tts.google_translate_saytarget:
entity_id: media_player.living_room_speakerdata:
message: "Reminder: {{ trigger.to_state.attributes.friendly_name }} is still open." - delay:
minutes: 5mode: parallel
Garage Entry Night Alert
Alerts when garage entry door opens at night, with camera snapshot.
Requires Tapo integration or generic camera with RTSP. Snapshots save to /config/www/ for web access.
Zigbee Events
Button events use zha_event (for ZHA) or mqtt triggers (for Zigbee2MQTT). Device IDs and commands vary by button model — check HA device page after pairing.
Receipt Automation
Receipt Fridge Launch — NFC App Launch
Tap the fridge NFC tag to open the receipt scanner app directly.
The NFC tag is the entry point. The app handles the actual capture and any per-receipt workflow.
Considerations:
If the app supports deep links or URL schemes, prefer that over a generic notification.
If people use different phones/scanner apps, map multiple notify targets or a choose block by person/presence.
Service Check / Router Status NFC
Router Status — NFC Status Page
Opens a locally hosted status page showing service health.
alias: "Status - Router NFC"description: "Serve local status page for router/service health"trigger:
- platform: nfctag_id: <router_status_nfc_uid>action:
- service: browser_mod.popupdata:
title: "Service Status"# Serve from a local/static endpoint; no external CDN depsurl: "/local/status/index.html"mode: single
Implementation notes:
Host status/index.html on the same host that serves HA or a lightweight internal web server.
Keep the page plain HTML with no external dependencies so it works when the internet is down.
Display gateway ping, DNS resolution result, Pi-hole stats, and a one-click router reboot if supported.
Consumable Replacement NFC
Consumable Tag — Reorder Trigger
Opens the replacement item’s reorder path.
alias: "Consumables - Replace"description: "Open consumable replacement action"trigger:
- platform: nfctag_id: <consumable_nfc_uid>action:
- service: browser_mod.popupdata:
title: "Replace Air Filter"# Prefer a stable local/HA endpoint; the destination can rotate behind this URLurl: "/local/consumables/air-filter.html"mode: single
Instead of encoding a retailer URL directly, use a stable local or Home Assistant destination so the reorder page can change without rewriting the tag.
Pi-hole Temporary Disable NFC
Pi-hole — 30 Minute Disable
Disables Pi-hole time-boxed for 30 minutes.
alias: "Pi-hole - Temp Disable 30m"description: "Disable Pi-hole for 30 minutes from NFC tap"trigger:
- platform: nfctag_id: <pihole_temp_disable_nfc_uid>action:
- service: rest_command.pihole_disable_30mmode: single
Time-box the disable window so ad-blocking is re-enabled automatically. Surface the remaining time on the local status page so the household can see the countdown.