Home Assistant Notifications with Echobell: Instant Alerts for Your Smart Home
Home Assistant's built-in mobile notifications blend in with everything else on your phone. Echobell adds priority levels—push, time-sensitive, or an actual phone call—so critical smart home events don't get buried. The integration requires no custom components: just a REST command and your webhook URL.
Basic Setup
- Download Echobell and create a channel (e.g., "Home Alerts")
- Copy the webhook URL from channel settings
- Add a REST command to
configuration.yaml:
rest_command:
echobell_home:
url: "https://hook.echobell.one/t/YOUR_TOKEN"
method: POST
content_type: "application/json"
payload: '{"title": "{{ title }}", "message": "{{ message }}"}'- Restart Home Assistant
- Call the service from any automation
Test with a simple door sensor automation:
automation:
- alias: "Door Open Test"
trigger:
- platform: state
entity_id: binary_sensor.front_door
to: "on"
action:
- service: rest_command.echobell_home
data:
title: "Front Door"
message: "Door opened at {{ now().strftime('%H:%M') }}"Practical Automation Examples
Temperature Monitoring with Call Alert
For sensors that protect food, equipment, or safety — set the Echobell channel type to Calling so it rings like a phone:
automation:
- alias: "Freezer Temperature Alert"
trigger:
- platform: numeric_state
entity_id: sensor.freezer_temperature
above: -10
for:
minutes: 15
action:
- service: rest_command.echobell_home
data:
title: "⚠️ Freezer Temperature Alert"
message: "Freezer is at {{ states('sensor.freezer_temperature') }}°C for 15+ minutes"
severity: "critical"Smart Security Alerts
Send context variables with the webhook, then use Echobell conditions to filter on the channel side:
automation:
- alias: "Smart Security Alert"
trigger:
- platform: state
entity_id:
- binary_sensor.motion_living_room
- binary_sensor.motion_bedroom
to: "on"
action:
- service: rest_command.echobell_home
data:
title: "Security Event"
message: "{{ trigger.to_state.attributes.friendly_name }} detected motion"
alarm_state: "{{ states('alarm_control_panel.home_alarm') }}"
hour: "{{ now().hour }}"Channel condition: alarm_state == "armed_away" || (hour >= 22 || hour <= 7)
This sends alerts only when the alarm is armed or it's nighttime — filtering out daytime motion noise without disabling the automation.
Appliance Completion Alerts
automation:
- alias: "Laundry Done"
trigger:
- platform: state
entity_id: sensor.washer_power
to: "0"
for:
minutes: 3
action:
- service: rest_command.echobell_home
data:
title: "🧺 Laundry Complete"
message: "Washing machine finished. Don't let it sit!"Morning Summary
automation:
- alias: "Morning Home Report"
trigger:
- platform: time
at: "08:00:00"
action:
- service: rest_command.echobell_home
data:
title: "Good Morning - Home Status"
message: >
Temperature: {{ states('sensor.living_room_temperature') }}°C
Humidity: {{ states('sensor.living_room_humidity') }}%
Energy yesterday: {{ states('sensor.daily_energy') }} kWh
All windows: {% if is_state('binary_sensor.window_group', 'off') %}Closed{% else %}OPEN{% endif %}Advanced Features
Contextual Links
The externalLink variable adds a tappable link to your notification history in Echobell:
action:
- service: rest_command.echobell_home
data:
title: "Motion at Front Door"
message: "Check the camera feed"
externalLink: "https://my-home-assistant.duckdns.org/lovelace/security"Multi-Channel Strategy
Use separate channels with different notification types:
- Home Routine (normal): Appliances, daily summaries
- Home Monitoring (time-sensitive): Temperature, humidity, energy spikes
- Home Security (calling): Armed-mode motion, door sensors, critical failures
Securing Webhook URLs
Use Home Assistant secrets to avoid exposing your webhook URL in configuration files:
# secrets.yaml
echobell_webhook: "https://hook.echobell.one/t/YOUR_TOKEN"
# configuration.yaml
rest_command:
echobell_home:
url: !secret echobell_webhookFor full technical documentation including advanced templating and troubleshooting, see the Home Assistant integration guide. For other integrations, see GitHub Actions notifications and Grafana monitoring alerts.