← Back to team overview

ubuntu-push-devs team mailing list archive

Re: How and what other people do it

 

On Tue, Sep 10, 2013 at 4:42 PM, Lucio Torre <lucio.torre@xxxxxxxxxxxxx> wrote:
>
> I've been looking at some other push systems and what they do.
>
> The first thing I've found is that apple also uses a developer controlled
> side channel to share the notification queue with the developer:
>
> https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Art/token_generation.jpg
>
> This makes sense since there must be some way for the developer to associate
> the device/Ubuntu id with the user id on their app.
>
> For example, gmail needs to know that lucio.torre@xxxxxxxxxxxxx and his
> device Nexus 4 id XXXX has the gmail app installed and connected to the
> lucio.torre@xxxxxxxxx account. So when mail arrives for
> lucio.torre@xxxxxxxxx they know they have to send an ubuntu push
> notification to my device/account.
>
> We could mediate this message, but this does not mean that the developer
> will not need to setup a server to get notified when someone installs the
> app and who that user is. The issue is that if we mediate that we are just
> adding overhead.
>
> The options I've seen that don't require the app developer to have a server
> are mostly around broadcasting or targeting. "Send message to all" or "Send
> message to this segment of the users of my app.". Besides the targeting
> information or opaque ids, the users remain anonymous.
>
> The other thing I've seen these services do is integrate notifications for
> all platforms.
>
> So, to summarize:
> a- To send broadcasts there is no need for a developer service.
> b- To send unicasts, the user needs to associate the device with the app id,
> and that requires talking to the developer service
> c- Doing segmentation or a meta notification service seems out of scope at
> this point.
>
> We could (b) differently. Instead of getting the queue id and giving it to
> the developer service, we could get the developer service id and store it in
> the queue. The problem with this is that, to continue with the gmail
> example, google would have to contact us for every mail they get just in
> case some user has an ubuntu device connected to that account.
>
> Thoughts?

I think that the appdev-server-less family of notifications are a
different kettle of fish, that come with their own set of problems and
challenges, and are rather separate from the ones we're setting out to
fix. We should just concentrate on unicast (where uni- means to a
single user, possibly multiple devices).


References