iOS: push notifications for new episodes, and an exact badge #433

Closed
opened 2026-11-08 11:34:32 -08:00 by rays · 3 comments
Owner

Needs an APNs key from Apple and a push sender in ipx (server side, built and deployed on Tower), and the app registering its device token. Replaces the background refresh's guess at the badge (#421).

Needs an APNs key from Apple and a push sender in ipx (server side, built and deployed on Tower), and the app registering its device token. Replaces the background refresh's guess at the badge (#421).
rays added the enhancement label 2026-11-08 11:34:32 -08:00
Author
Owner

Written in bd53585 (and da6cda2): push_devices table, POST/DELETE /api/push/devices, a once-a-minute sender in ipx (crates/ipx/src/push.rs) sending badge-only pushes when a person's All Subscriptions unread count changes, [push] in config.toml (docs/configuration.md), the app's aps-environment entitlement and token, and the page registering it. Tested: signing round-trip against a test P-256 key, the device table, the page's register/unregister in tests/native-bridge.ts. Not yet: an APNs key, an ipx and ipx-web deploy, and build 11, whose upload is waiting on Xcode's account sign-in. Stays open until a badge arrives on the phone.

Written in bd53585 (and da6cda2): push_devices table, POST/DELETE /api/push/devices, a once-a-minute sender in ipx (crates/ipx/src/push.rs) sending badge-only pushes when a person's All Subscriptions unread count changes, [push] in config.toml (docs/configuration.md), the app's aps-environment entitlement and token, and the page registering it. Tested: signing round-trip against a test P-256 key, the device table, the page's register/unregister in tests/native-bridge.ts. Not yet: an APNs key, an ipx and ipx-web deploy, and build 11, whose upload is waiting on Xcode's account sign-in. Stays open until a badge arrives on the phone.
Author
Owner

ipx with the push sender (bd53585) is deployed, 1.5.2-dev, 2026-11-09, with [push] set in config.toml (key 8DKMCU2Y8P, team 8743L8D729), and ipx-web with the page's side. Nothing is sent until the app registers a device; the Swift side is not built or checked here.

ipx with the push sender (bd53585) is deployed, 1.5.2-dev, 2026-11-09, with [push] set in config.toml (key 8DKMCU2Y8P, team 8743L8D729), and ipx-web with the page's side. Nothing is sent until the app registers a device; the Swift side is not built or checked here.
Author
Owner

Working in production, 2026-11-09: ipx and ipx-web deployed with [push] set, build 11 on the phone registered at 00:15:52 (production APNs), and the icon followed reads made in a browser with the app closed. Badge only for now; alerts for new episodes would be a follow-up.

Working in production, 2026-11-09: ipx and ipx-web deployed with [push] set, build 11 on the phone registered at 00:15:52 (production APNs), and the icon followed reads made in a browser with the app closed. Badge only for now; alerts for new episodes would be a follow-up.
rays closed this issue 2026-11-08 16:19:05 -08:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: rays/ipx#433