home-assistant / home-assistant/iOS

Push notifications silently fail (0 sent, 0 errors) despite successful service call — persists across Push ID reset, full reinstall, device reboot, and older HA config restore

Open
#5,790 0 comments 0 reactions 0 assignees View on GitHub
bug ios
Dominant language
Swift
Stars
2.4k
Forks
520
Avg merge
7h 27m
Merged PRs (30d)
264

Description

## Summary
Calling `notify.send_message` (and previously the legacy `notify.mobile_app_`
service) reports successful execution in Home Assistant — no errors anywhere,
automation trace completes normally — but the push notification never arrives
on the iOS device. This happens consistently, across multiple independent
troubleshooting attempts described below.

## Environment
- Home Assistant Core: 2026.9.2
- Installation type: Home Assistant OS (Raspberry Pi 4)
- iOS device: iPhone (please fill in exact model)
- iOS version: (please fill in — Settings > General > About)
- Companion App version: (please fill in — visible at top of Settings > Companion App)
- Not connected to Home Assistant Cloud (Nabu Casa) — using the free push relay only

## Symptom
`homeassistant.components.mobile_app.notify` debug log consistently shows:
##**_"mobile_app push notification rate limits for : 0 sent, 500 allowed,
0 errors, resets in ..."_**
...even immediately after a manual test send via Developer Tools > Actions,
and even for a real-world automation trigger (see below). The counter never
increments beyond 0, and no error is ever logged anywhere in the Core log
(debug logging enabled for `homeassistant.components.mobile_app`, `bleak` not
relevant here, no relevant lines in `homeassistant.components.cloud` either).

## What has been ruled out
- **Push ID reset**: Done twice via Settings > Companion App > Notifications >
Push ID > Reset. New Push ID generated successfully both times, no error
shown (specifically checked for the "certificate issue" reported in #4433 —
not present here). Still nothing arrives.
- **Full app reinstall**: Deleted the app completely, reinstalled from the App
Store, logged in fresh, granted notification permission during onboarding.
Due to iOS Keychain persistence, the app re-registered under the same
underlying `notify` entity as before — but the actual APNs push registration
should have been renewed regardless. Still nothing arrives.
- **Full device reboot**: Power-cycled the iPhone completely (not just force-
quitting the app). Still nothing arrives.
- **iOS notification settings**: Confirmed "Allow Notifications" enabled,
delivery set to immediate (not scheduled summary), no Focus/Do Not Disturb
mode active.
- **VPN interference**: Confirmed no VPN (Tailscale) active on the device
during test.
- **Wrong automation target**: Found and fixed an automation that was
targeting a stale `device_id` instead of the current `entity_id` — corrected
to `target: entity_id: notify.`. No change in behavior.
- **Broadcast test**: Tried `notify.notify` (sends to all registered mobile_app
targets at once) instead of a specific device target. Still nothing arrives
on any device.
- **Older Home Assistant config state**: Restored a full backup from ~3 days
prior (predating an unrelated app reinstall that we initially suspected as
the trigger). The problem persisted identically under this older config
state — Home Assistant Core version was unchanged (2026.9.2) between the
two states, so this rules out a Core-version regression as the cause, at
least in this instance.
- **Real-world trigger**: Physically disconnected shore power at the vehicle
to trigger the automation via its actual `numeric_state`/`state` sensor
trigger (not a manual `automation.trigger` service call). Notification
still did not arrive.

## Additional context
There is a second, stale `notify` entity for a previous device registration
(from a prior phone) that has been inactive since a device swap — this is
understood and not the current target, mentioned only for completeness in
case it's relevant to how the backend correlates devices/registrations.

## Question
Given the rate limiter never shows an increment past "0 sent" regardless of
method, target, app state, or Core config version, this looks like the actual
dispatch to the push relay is either never reached, or fails completely
silently before being counted. Is there a way to get more verbose logging
specifically around the outbound HTTP call to the push relay service (not
just the rate-limiter check), or is there a known server-side issue that
could cause this? Happy to provide any further diagnostics.

Model Name: iPhone 12
Software Version: 26.6.1
Companion App version: 2026.9.1 (2026.2985)

**Home Assistant Core Version**

**Describe the bug**

**To Reproduce**

**Expected behavior**

**Screenshots**

**Additional context**

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the failure with notify.send_message or the notify.mobile_app_ service and enable the mentioned homeassistant.components.mobile_app debug logging. Trace whether the outbound push-relay HTTP call is reached and whether its result is reflected in the rate-limit counters. Done means identifying the silent failure or documenting the missing diagnostics and server-side behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios, swift
Domain
api, mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.