Hello everyone,

We want to use the new Push API to improve the general latency of Sync
between operations.
Let's consider for example the case of sending a tab to another synced
device : Device A writes in the /clients collection an opentab command
and pushes its changes to the sync server. On its next sync, Device B
will pick up the new tabs in the /clients collection and open them.
We want to keep this behavior because it works and we would like to
avoid having push servers as a mandatory dependency.
The plan is to send a Push notification to Device B to tell it to sync
its /clients collection immediately because "something changed".
In this case, the push technology only accelerates things, but does not
change the underlying protocol.

Which brings us to the architecture problem:
The Firefox Accounts servers already have a list of devices and their
associated pushCallbackUrls, but this server is not hit when we sync
things up and it would be semantically bizarre to send a request to this
server after syncing something.

We discussed this with ckarlof and we ended up thinking that the sync
storage servers should send the notifications themselves: Post-sync,
retrieve the device list from the FxA server, maybe cache it, try to
figure out the correspondence between its own device list and the FxA
device list (is this a solved problem?) and send the push notifications.

We feel like keeping a single source of truth for the pushCallbackUrls
on the FxA servers is important.

What do you think of this solution? I would appreciate feedback on this.

Thanks,
Edouard
_______________________________________________
Sync-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/sync-dev

Reply via email to