Notifications: local-only session reminders; drop the FCM-bridge framing
- Session-expiry reminders are purely on-device (AlarmManager); added an Android notification channel and a "Send a test reminder" button (Account > Notifications) to verify delivery without a real session - Strip all FCM/bridge talk from unifiedPush.ts + README; UnifiedPush(ntfy) is now an optional no-op stub for hypothetical future server-initiated messages only Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
0bc9aa97ba
commit
02e2c750ea
4 changed files with 88 additions and 56 deletions
16
README.md
16
README.md
|
|
@ -40,8 +40,8 @@ bigbrainparking/
|
|||
| Save / share kiosks | ✅ wired | local (no server favorites API exists) |
|
||||
| Active / past sessions | ✅ wired | list views |
|
||||
| Start a paid session | 🟡 gated | flow wired to `postStartParkingSession`, disabled pending review (real charge) |
|
||||
| Session-expiry reminders | ✅ wired | **local** notifications — no FCM needed |
|
||||
| UnifiedPush (ntfy) | 🟡 partial | endpoint registration done; server→ntfy bridge still needed (see below) |
|
||||
| Session-expiry reminders | ✅ wired | **local** on-device notifications — no server, no push |
|
||||
| UnifiedPush (ntfy) | ⚪ optional | not needed for reminders; stub for future server-initiated msgs |
|
||||
|
||||
## Build & run (dev)
|
||||
|
||||
|
|
@ -61,12 +61,12 @@ in `app/app.json` to point elsewhere.
|
|||
|
||||
## Notifications on GrapheneOS
|
||||
|
||||
Session-expiry reminders are scheduled **locally** from each session's end time, so they
|
||||
need no push infrastructure and work fully offline of Google. `app/src/notifications/`
|
||||
also wires **UnifiedPush** (distributor: ntfy) for any genuinely server-initiated push —
|
||||
but note the ParkSmarter backend only pushes via **FCM**, so server push requires a small
|
||||
**FCM→ntfy bridge** (a service holding an FCM token that forwards to your ntfy topic, then
|
||||
registered via `PUT /api/Device`). Until that exists, local reminders cover the main case.
|
||||
Session-expiry reminders are scheduled **entirely on-device** from each session's end time
|
||||
(Android `AlarmManager`, via expo-notifications) — no server, no push, no FCM, no Play
|
||||
Services. They work fully offline. Configure the lead time (default 15 min) in
|
||||
**Account → Notifications**, where a **"Send a test reminder"** button lets you confirm it
|
||||
fires on your phone. UnifiedPush (ntfy) is wired only as an optional, no-op stub for any
|
||||
*future* server-initiated messages; nothing time-based needs it.
|
||||
|
||||
## Distribution via Obtainium (self-hosted)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue