Read pushes: ask mod_apush for them and withdraw a chat's notices on one #33
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/push-read-withdraw"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The phone asks for read pushes and clears a chat's notifications when the chat is read on another device, as the Android app does.
push set_targetfor the APNs token now carriesapushRead: "1"(the PushKit token, calls only, does not), so anotherim-server's mod_apush sends a read push when the chat was read or answered elsewhere and this phone has no live session.backgroundpush with the sealed summary (noapushKindin the clear on APNs).AppPushPayloadreadskind: "read", or a message summary with an explicitcount: 0(anotherim-js docs/push.md, "Read elsewhere"), as.read(account:chat:).AppDelegategets a background-push handler that withdraws the chat's delivered notices by their thread (AppPushThread), the same thread the notification service extension files them under. A clearapushKind: readis honoured too.project.ymladds theremote-notificationbackground mode; without it iOS delivers no silent push to the app.Tests: PushEnvelopeTests (read summary, count 0, read without a chat refused; apushRead only on the APNs token) and TackyAPITests' set_target frame. Built and run on an iOS 27 simulator: 36 tests, 0 failures. Not yet tried end to end on a device.
🤖 Generated with Claude Code
Ported onto
feat/ui-redesignin branchfeat/push-read-withdraw-ui(fb7c264): https://dev.another.im/another-im/anotherim-swift/compare/feat/ui-redesign...feat/push-read-withdraw-ui — TestFlight builds come fromfeat/ui-redesign;masteris 92 commits behind and has the old AppDelegate and push code. One difference: akind: messagesummary withcount: 0stays a message (PushEnvelopeTests has pinned that since8846f6a; it comes as an alert through the notification service extension). This PR is closed once the port's PR is open.apushRead: 1, never the PushKit one), and a silent background push ofkind: readwithdraws the chat's delivered notices by its thread, so a chat read or a… #35Pull request closed