Home Assistant
Alerts that arrive even when the internet doesn't
Why SMS, when you already have push notifications?
Push notifications fail exactly when you need them most: no data connection, phone in battery saver, app killed by the OS — or your home internet being the very thing that broke. An SMS gets through. And it comes from your own phone, on your own SIM, so there's no per-message fee and no third party reading your alerts.
What people use it for
The classic case where minutes cost real money.
A UPS sensor triggers while the router is already dead.
Hours of warning instead of a ruined freezer.
Alerts that don't depend on an app being alive.
1. Install
Via HACS (recommended)
- 1. HACS → three-dot menu → Custom repositories
- 2. Add the repository URL, category Integration
- 3. Install SMSTunnel, then restart Home Assistant
Manual
Copy custom_components/smstunnel
into your Home Assistant config/custom_components/
folder and restart.
2. Configure
Settings → Devices & Services → Add Integration → SMSTunnel
| Field | Notes |
|---|---|
| API key | Needs the sms:send permission. Validated during setup, so a wrong key fails immediately instead of at the first real alert. |
| Recipients | One or more numbers, comma separated. |
| Default country code | e.g. +40 — local numbers without a prefix still work. |
| Device ID | Optional. Pin sending to one specific phone. |
3. Use it
automation:
- alias: "SMS on water leak"
trigger:
- platform: state
entity_id: binary_sensor.basement_water_leak
to: "on"
action:
- service: notify.smstunnel
data:
title: "Home Assistant"
message: "Water leak detected in the basement!" service: notify.smstunnel
data:
message: "The alarm was triggered"
target:
- "+40712345678"
- "+40787654321" Worth knowing
- Watch out for flapping sensors. A trigger that fires repeatedly can burn your quota in minutes. Use
for:or a condition so a twitchy sensor doesn't text you 200 times. - Rate limit: 30 requests per minute. When hit, it's written plainly in the log instead of the message silently disappearing.
- Length: up to 1600 characters; longer messages are truncated before sending rather than rejected.
- A title is prepended to the message, since SMS has no separate title field.
Responsible use
Built for low-volume alerting to yourself and your household. Sending unsolicited bulk messages from a consumer SIM generally breaches mobile carrier terms of service.
No phone paired yet?
Install the Android app, scan a QR code, and you're ready in about a minute.
Get the Android app