Wrap each push backend as XPCOM component
Categories
(Core :: DOM: Push Subscriptions, task)
Tracking
()
People
(Reporter: saschanaz, Assigned: saschanaz)
References
Details
Currently it's all JS modules and that makes it impossible to have a system compatible with Android.
We already somehow have backend system for http2 (which should be removed)/websocket, we should be able to wrap it into XPCOM component.
We need to make sure the existing Android component can also fit into XPCOM one.
Comment 1•1 year ago
|
||
(In reply to Kagami Rosylight [:saschanaz] (they/them) from comment #0)
Currently it's all JS modules and that makes it impossible to have a system compatible with Android.
I don't think this is really true -- JS modules are pretty flexible -- but I think there is a deeper truth, which is that we have a well-understood way to let implementations vary between Gecko applications and it's not JS modules, it's XPCOM.
We already somehow have backend system for http2 (which should be removed)/websocket, we should be able to wrap it into XPCOM component.
We need to make sure the exitsing Android component can also fit into XPCOM one.
The key distinction is that Android is an "autopush bridge" implementation, meaning that a "last mile router" like FCM or APNS delivers message to devices rather than Gecko keeping a socket of some description open.
| Assignee | ||
Updated•1 year ago
|
| Assignee | ||
Comment 2•1 year ago
|
||
Marking bug 1874394 as the blocker as I don't feel confident to do anything without a good test.
| Assignee | ||
Comment 3•1 year ago
|
||
But to run any test in WPT we need to make sure it doesn't hit the mozilla push server but a local mock service (to prevent external network communication which deliberately causes crash in any testing environment). That would need this refactoring? 🤔
Description
•