Page MenuHomePhabricator

Introduce threadID to iOS rescind notification to enable easy SQLite update. Introduce setUnreadStatus flag to control whether to update SQLite in response to rescind
ClosedPublic

Authored by marcin on Jun 7 2022, 6:52 AM.
Tags
None
Referenced Files
F3379934: D4231.id13434.diff
Wed, Nov 27, 7:59 PM
Unknown Object (File)
Sun, Nov 24, 9:43 PM
Unknown Object (File)
Sun, Nov 24, 9:42 PM
Unknown Object (File)
Sun, Nov 24, 7:27 PM
Unknown Object (File)
Sun, Nov 24, 7:26 PM
Unknown Object (File)
Sun, Nov 24, 7:26 PM
Unknown Object (File)
Sun, Nov 24, 7:25 PM
Unknown Object (File)
Sun, Nov 24, 4:03 AM

Details

Summary

This diff introduces a flag to control whether we want to update thread unread status in persisted storage in reponse to notif rescind. Additionally it introduces threadID to iOS rescind, since we will need that in further diffs thath update unread status.

Test Plan

No test plan. Further differentials will use thos features and provide appropriate test plans.

Diff Detail

Repository
rCOMM Comm
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

marcin requested review of this revision.Jun 7 2022, 7:26 AM
keyserver/src/push/rescind.js
183 ↗(On Diff #13388)

I think on iOS we can simply use the boolean true (but not on Android, for some reason)

Use regular boolean for setUnreadStatus on iOS

Rebase to master after CI change

tomek added inline comments.
keyserver/src/push/rescind.js
62 ↗(On Diff #13424)

It's not necessary to send it for old iOS because the old client doesn't understand what threadID means. On the other hand, prepareIOSNotification doesn't include it for older clients, so keeping it is also fine, but less obvious.

183 ↗(On Diff #13388)

Android receives a notification data as Map<String, String> and does not convert the values in any way - that's why it's required to send strings.

This revision is now accepted and ready to land.Jun 8 2022, 6:47 AM