Home Assistant Notifications — Complete Guide
In this tutorial, you'll learn about Home Assistant Notifications. We cover key concepts, practical examples, and best practices.
Hook
You set up an automation to send a notification when your washing machine finishes. The automation runs, but no notification arrives on your phone. You check the Companion App — notifications are enabled. You test from Developer Tools — nothing.
The Wrong Way
Installing multiple notification services (Telegram, Pushover, mobile app) all sending the same message creates noise but does not fix the original delivery failure.
# BAD: Adding more notification services instead of fixing one
- service: notify.mobile_app_iphone
data:
message: "Washing done"
- service: notify.telegram
data:
message: "Washing done"
- service: notify.pushover
data:
message: "Washing done"
All three notifications fail — none delivered
The issue is at the service level, not the number of services
Adding more notification services compounds the problem without fixing it.
The Right Way
Test each notification service independently starting with the simplest.
# 1. Test the notification service via API
curl -X POST -H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{"message": "Test notification", "title": "Test"}' \
http://hass.local:8123/api/services/notify/mobile_app_iphone
{"message": "Notification sent"}
If the API call succeeds but the phone does not receive it:
# 2. Check the Companion App status
# iPhone: Companion App → Settings → Notifications → Enable
# Android: App info → Notifications → Allow
# 3. On iOS, check Focus modes
# Settings → Focus → Ensure Home Assistant is allowed
# 4. Check if the notification URL is valid
curl -s -H "Authorization: Bearer <token>" \
http://hass.local:8123/api/states/notify.mobile_app_iphone | jq .
{
"state": "ready",
"attributes": {
"friendly_name": "Mobile App iPhone"
}
}
# 5. For persistent notifications (dashboard alert):
- service: persistent_notification.create
data:
message: "Washing machine cycle complete"
title: "Laundry Alert"
Dashboard shows notification banner ✓
Prevention
- Test each notification service from Developer Tools → Services before using it in automations.
- For mobile notifications, ensure the Companion App is running and has notification permissions.
- Set up a backup notification channel (e.g., email or persistent notification) for critical alerts.
- Use
data: push: sound: defaultfor audible notifications on mobile. - Check battery optimization settings on Android — they can block background notifications.
Common Mistakes with assistant notify
- Using
foldlinstead offoldl'causing stack overflow on large lists - Forgetting
deriving (Show, Eq)on custom data types needed for debugging - Placing the wildcard pattern first in case expressions, making all subsequent patterns unreachable
These mistakes appear frequently in real-world HOME code. DodaTech's contributors have identified these patterns through analysis of open-source projects and production systems.
Practice Exercise
Write a pure function that safely divides two integers using Maybe, then test it with edge cases like division by zero and negative numbers.
This exercise reinforces the concepts covered in this guide. Try implementing it before checking online solutions.
FAQ
DodaTech — notifications that reach you.
Built by the developers of DodaTech
Doda Browser, DodaZIP & Durga Antivirus Pro