This differential enables notifs inbound session creation on web platforms with race condition handling
Details
Details
- Apply this patch: https://gist.github.com/marcinwasowicz/c3da26ab164d1044aa3b2870f3434acd
- Log in on web and native
- Send message from native to web
- Copy the content of encrypted notification addressed to web client
- Paste the content in service-worker code and pass it to decryptWebNotification function. Log the result
- Expect that logged result is decrypted notification
Now repeat the test plan above but FIRST send message to native. Tunnelbroker can send pushes to native so session will be created on the native side and notification sent to web will be type MESSAGE_TYPE_MESSAGE (1).
Diff Detail
Diff Detail
- Repository
- rCOMM Comm
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Comment Actions
Improvement: use the same functions to fetch and persist olm data regardless of notification type (keyserver/peer device)
web/push-notif/notif-crypto-utils.js | ||
---|---|---|
164–169 ↗ | (On Diff #42718) | why do we need to throw if we will never reach this branch? |
202–209 ↗ | (On Diff #42718) | can you use validators here? |
343–349 ↗ | (On Diff #42718) | In this case I would create only one variable with object |
463–468 ↗ | (On Diff #42718) | if Flow forcing this, can you move this above and early-exit? |
web/push-notif/notif-crypto-utils.js | ||
---|---|---|
463–468 ↗ | (On Diff #42718) | I tried and unfortunately flow can't conclude that senderDeviceID is not nullish if we early exit. |