Hi Martin, note that the latest proposal is to have only a single
registration at a time:
http://lists.w3.org/Archives/Public/public-webapps/2014AprJun/0223.html

This means that unregister can remain on PushManager and requires no
arguments.

Yesterday I also posted a github issue with the suggestion to change the
unregister return value:
https://github.com/w3c/push-api/issues/4

Respec was fixed recently to support parameterization after this discussion:
http://lists.w3.org/Archives/Public/public-webapps/2014JanMar/0697.html

Regards,

Michael






On Tue, May 13, 2014 at 6:10 PM, Martin Thomson <martin.thom...@gmail.com>wrote:

> On 13 May 2014 06:39, Michael van Ouwerkerk <mvanouwerk...@google.com>
> wrote:
> > Martin, in Chrome we use registrationId and endpoint for distinct
> purposes.
> > The endpoint is the push server url to which the app server posts new
> > messages. The registrationId identifies the correct {device, user, page}
> to
> > which the message will be sent.
>
> I think that the spec needs to be a lot clearer on the purpose (and
> usage) of each of these things.  Personally, I think that a better
> model would be this:
>
> interface PushManager {
>   Promise<PushRegistration> register();
>   Promise<sequence<PushRegistration>> registrations();
> };
>
> interface PushRegistration {
>   Promise unregister();
>   attribute DOMString id;
>   attribute DOMString endpoint;
> };
>
> interface PushMessage {
>   attribute PushRegistration registration;
>   attribute ?? data;
> }
>
> Yes, aside from moving unregister, it's just names, but sometimes
> names are important.  The reason behind moving unregister being that
> 'id' is only present for bookkeeping purposes, and many apps won't
> have to use it.
>
> That said, looking at this, I am sorely tempted to suggest adding
> EventTarget to PushRegistration and use events.  Any reason that
> wouldn't be appropriate?
>
> p.s., I assume that the mess in the editor's draft regarding
> PushManager is due to a Respec.js issue around the use of promises.
>

Reply via email to