---
title: "Home Assistant Notifications with Echobell: Instant Alerts for Your Smart Home"
description: "Connect Home Assistant to Echobell via REST commands and webhooks to get prioritized push notifications or phone calls for security events, temperature alerts, and automation triggers."
date: 2025-12-01
author: Nooc
authorAvatarLink: /images/avatars/nooc.webp
authorLink: https://nooc.me
tags:
  - Echobell
  - Home Assistant
  - Smart Home
  - Home Automation
  - Webhook Notifications
---

# 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

1. [Download Echobell](https://apps.apple.com/app/apple-store/id6743597198?pt=128151925&ct=blog-home-assistant-notifications-1ozbir&mt=8) and create a channel (e.g., "Home Alerts")
2. Copy the webhook URL from channel settings
3. Add a REST command to `configuration.yaml`:

```yaml
rest_command:
  echobell_home:
    url: "https://hook.echobell.one/t/YOUR_TOKEN"
    method: POST
    content_type: "application/json"
    payload: '{"title": "{{ title }}", "message": "{{ message }}"}'
```

4. Restart Home Assistant
5. Call the service from any automation

Test with a simple door sensor automation:

```yaml
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:

```yaml
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](/en/docs/conditions) to filter on the channel side:

```yaml
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

```yaml
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

```yaml
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:

```yaml
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:

1. **Home Routine** (normal): Appliances, daily summaries
2. **Home Monitoring** (time-sensitive): Temperature, humidity, energy spikes
3. **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:

```yaml
# secrets.yaml
echobell_webhook: "https://hook.echobell.one/t/YOUR_TOKEN"

# configuration.yaml
rest_command:
  echobell_home:
    url: !secret echobell_webhook
```

For full technical documentation including advanced templating and troubleshooting, see the [Home Assistant integration guide](/en/docs/developer/home-assistant). For other integrations, see [GitHub Actions notifications](/en/blog/github-actions-notifications) and [Grafana monitoring alerts](/en/blog/grafana-call-notification).
