System Bridge now has an Android app. It pairs with a computer from a QR code, opens that computer's own web client, and gets pushes from it while closed: mirrored notifications, with their buttons, and new releases. The app is on GitHub releases and in the F-Droid repository at https://android.timmo.dev/repo (docs) (#4599)
Android app
- Pair a phone by scanning the QR code from Settings, Devices in the web client, by picking a computer found on the network, or by entering its address and token
- Switch between, edit or remove paired computers from Computers in the header
- Show an offline page when a computer can't be reached, and find it again on the network if its address changed
- Push the computer's notifications, named for the computer, with their buttons, which press the button on the computer too. Clear a notification from the phone when it's closed on the computer
- Give each computer its own notification categories, Notifications and Updates, so one can be muted
- Add Lock and Sleep quick settings tiles, and pull down to reload a page
- Share links and text from other apps to the computer, to open the link or copy the text
Pairing and pushes
- Add
POST /api/pair/codeandPOST /api/pair, which hand a phone the API token for a one-time code that lasts 5 minutes (docs) - Add Web Push subscriptions at
/api/push/subscriptionsand/api/push/preferences, for mirrored notifications and new releases. A new subscription gets releases only (docs) - Add
POST /api/event, which runs one WebSocket event over HTTP (docs) - Add the
NOTIFICATION_PRESSevent, which presses a notification's button from somewhere else, such as a phone (docs)
Web client
- Add Settings, Devices, with the pairing QR code, this phone or browser's pushes, and every device getting pushes, and a Devices button in the header
- Install as an app over HTTPS, with pushes through the browser
- Reload when the computer serves a new build, such as after an update
- Show the connection's status as a dot in the header, with the address in its tooltip
Connector
- Add
press_notificationto the Python connector andpressNotificationto the TypeScript connector
Dependencies
- Update wrangler to 4.158.0 (#4597)
Full Changelog: 5.27.1...5.28.0