Re: [Standards] IOT-Events

2014-11-10 Thread Kevin Smith
[Sending a few mails to try to rekindle this discussion]

My summary of where the thread is at the moment is that there’s some support 
for doing things in a xep60ish way, and no technical objections to doing so but 
that we need to ensure that what we produce is feasible to implement on the 
necessary device types (not having unnecessary flexibility beyond that required 
by the current iot-events proposal).

Does that sound fair?

/K

Re: [Standards] IOT-Events

2014-11-10 Thread Kevin Smith
[Sending a few mails to try to rekindle this discussion]

On Thu, Oct 9, 2014 at 10:53 AM, Joachim Lindborg
 wrote:
> I agree in the need for multiple subscriptions. I have that in several
> usecases.

OK, thanks.

>  I would also adress the "keep it simple need" the xep 323 is very easy to
> use and the need for events for small sensors are essential to prevent
> extensive polling.
> Demanding pubsub and forms notation to the devices adds a lot of complexity
> to the implementor of the sensor implementor.
>
> I could almost argue that the  stanza should be added to the
> xep 323 for simplicity but a see the need for a separate namespace and
> perhaps other usecases

It's not clear to me exactly how big an issue this is. I stress that I
am not suggesting that IoT devices should need to have a full xep60
implementation (if such a thing exists), but rather just that the
syntax (and where possible semantics) can be sensibly reused. I'm not
suggesting, for example, that there needs to be a full xep4
implementation in the clients allowing them to deal with arbitrary
fields (if this is not necessary), just a different representation of
the semantics presented by the iot-events proposal so as to have more
consistency between IoT XMPP and non-IoT XMPP. I think we should avoid
having two ecosystems of IoT and non-IoT XMPP, and just have "XMPP".

/K


Re: [Standards] IOT-Events

2014-11-10 Thread Kevin Smith
[Sending a few mails to try to rekindle this discussion]

On Tue, Sep 30, 2014 at 5:20 PM, Hund, Johannes
 wrote:
> My $0.02:
>
>> > >> My core concern here is that this spec
>> >> (http://xmpp.org/extensions/inbox/iot-events.html) is designed such
>> >> that one entity can publish events, to which assorted other entities
>> >> can subscribe, which fundamentally sounds like pubsub, for which we
>> >> have some coverage in XEP-0060. IOT-Events comes up with a
>> completely
>> >> new syntax for both the subscribing and the publishing from that
>> >> described in XEP-0060, and I'd like to see if there is common ground
>> >> for sharing syntax (and, ideally, semantics).
>> >>
>> >> I note at this point that re-use of XEP-0060 syntax would not imply
>> >> the use of central pubsub services on components or servers. In
>> >> IOT-Events, a Thing is its own (IOT-Events)pubsub service; I'm
>> >> interested in seeing if they could be their own (XEP-0060
>> >> subset)pubsub service instead.
>> >
>> > I like this general approach!
>>
>> Excellent.
>
> I fully agree that the best way IMHO  is generalizing XEP-0060 and keeping as 
> close as possible to the regular semantics

Great.

>> The way I read IOT-Events, it was a single subscription, but I'm hoping
>> Peter or other IOT folks can weight in here much more usefully than I
>> can. Fortunately we have the mechanisms in xep60 to cope with either.
>
> Maybe I am misundertanding it, but I think single-subscriptions would 
> restrict some use cases.

Could well be, yes. 60 will support either model, though, I think (at
least - I don't think it misses anything), we would just need to
decide which to go with (assuming we want to tightly define the xep60
subset in use for IoT, so as to minimise complexity for small
devices)..

> An example use case is if you have different subscriptions with different 
> timely resolutions, maximum ages etc.
> This can happen when you have an entity that has several applications running 
> which do require different event notifications.
>
> I would not restrict it to single-subscription given it does not cause an 
> unreasonable overhead.

Sounds reasonable, thanks.

/K


[Standards] IOT-Events

2014-10-09 Thread Joachim Lindborg
I agree in the need for multiple subscriptions. I have that in several
usecases.

 I would also adress the "keep it simple need" the xep 323 is very easy to
use and the need for events for small sensors are essential to
prevent extensive polling.
Demanding pubsub and forms notation to the devices adds a lot of complexity
to the implementor of the sensor implementor.

I could almost argue that the  stanza should be added to the
xep 323 for simplicity but a see the need for a separate namespace and
perhaps other usecases


*Regards*
Joachim Lindborg
CTO, systems architect

Sustainable Innovation  SUST.se
Barnhusgatan 3 111 23 Stockholm
Email: joachim.lindb...@sust.se

linkedin: http://www.linkedin.com/in/joachimlindborg
Tel +46 706-442270

2014-09-30 18:20 GMT+02:00 Hund, Johannes >:

> My $0.02:
>
> > > >> My core concern here is that this spec
> > >> (http://xmpp.org/extensions/inbox/iot-events.html) is designed such
> > >> that one entity can publish events, to which assorted other entities
> > >> can subscribe, which fundamentally sounds like pubsub, for which we
> > >> have some coverage in XEP-0060. IOT-Events comes up with a
> > completely
> > >> new syntax for both the subscribing and the publishing from that
> > >> described in XEP-0060, and I'd like to see if there is common ground
> > >> for sharing syntax (and, ideally, semantics).
> > >>
> > >> I note at this point that re-use of XEP-0060 syntax would not imply
> > >> the use of central pubsub services on components or servers. In
> > >> IOT-Events, a Thing is its own (IOT-Events)pubsub service; I'm
> > >> interested in seeing if they could be their own (XEP-0060
> > >> subset)pubsub service instead.
> > >
> > > I like this general approach!
> >
> > Excellent.
>
> I fully agree that the best way IMHO  is generalizing XEP-0060 and keeping
> as close as possible to the regular semantics
>
> > The way I read IOT-Events, it was a single subscription, but I'm hoping
> > Peter or other IOT folks can weight in here much more usefully than I
> > can. Fortunately we have the mechanisms in xep60 to cope with either.
>
> Maybe I am misundertanding it, but I think single-subscriptions would
> restrict some use cases.
>
> An example use case is if you have different subscriptions with different
> timely resolutions, maximum ages etc.
> This can happen when you have an entity that has several applications
> running which do require different event notifications.
>
> I would not restrict it to single-subscription given it does not cause an
> unreasonable overhead.
>



-- 
*Regards*
Joachim Lindborg
CTO, systems architect

Sustainable Innovation  SUST.se
Barnhusgatan 3 111 23 Stockholm
Email: joachim.lindb...@sust.se
linkedin: http://www.linkedin.com/in/joachimlindborg
Tel +46 706-442270


Re: [Standards] IOT-Events

2014-09-30 Thread Hund, Johannes
My $0.02:

> > >> My core concern here is that this spec
> >> (http://xmpp.org/extensions/inbox/iot-events.html) is designed such
> >> that one entity can publish events, to which assorted other entities
> >> can subscribe, which fundamentally sounds like pubsub, for which we
> >> have some coverage in XEP-0060. IOT-Events comes up with a
> completely
> >> new syntax for both the subscribing and the publishing from that
> >> described in XEP-0060, and I'd like to see if there is common ground
> >> for sharing syntax (and, ideally, semantics).
> >>
> >> I note at this point that re-use of XEP-0060 syntax would not imply
> >> the use of central pubsub services on components or servers. In
> >> IOT-Events, a Thing is its own (IOT-Events)pubsub service; I'm
> >> interested in seeing if they could be their own (XEP-0060
> >> subset)pubsub service instead.
> >
> > I like this general approach!
> 
> Excellent.

I fully agree that the best way IMHO  is generalizing XEP-0060 and keeping as 
close as possible to the regular semantics

> The way I read IOT-Events, it was a single subscription, but I'm hoping
> Peter or other IOT folks can weight in here much more usefully than I
> can. Fortunately we have the mechanisms in xep60 to cope with either.

Maybe I am misundertanding it, but I think single-subscriptions would restrict 
some use cases.

An example use case is if you have different subscriptions with different 
timely resolutions, maximum ages etc. 
This can happen when you have an entity that has several applications running 
which do require different event notifications. 

I would not restrict it to single-subscription given it does not cause an 
unreasonable overhead.


Re: [Standards] IOT-Events

2014-09-26 Thread Kevin Smith
Thanks Ralph.

On Fri, Sep 26, 2014 at 3:36 PM, Ralph Meijer  wrote:
> On 2014-09-26 15:26, Kevin Smith wrote:
>> Hi folks,
>>   I promised to see if I could think of something sensible to say
>> about IOT-Events.
>>
>> My core concern here is that this spec
>> (http://xmpp.org/extensions/inbox/iot-events.html) is designed such
>> that one entity can publish events, to which assorted other entities
>> can subscribe, which fundamentally sounds like pubsub, for which we
>> have some coverage in XEP-0060. IOT-Events comes up with a completely
>> new syntax for both the subscribing and the publishing from that
>> described in XEP-0060, and I'd like to see if there is common ground
>> for sharing syntax (and, ideally, semantics).
>>
>> I note at this point that re-use of XEP-0060 syntax would not imply
>> the use of central pubsub services on components or servers. In
>> IOT-Events, a Thing is its own (IOT-Events)pubsub service; I'm
>> interested in seeing if they could be their own (XEP-0060
>> subset)pubsub service instead.
>
> I like this general approach!

Excellent.

>> I suggest we define a standard form that can hold the subscription
>> options in IOT-Events, so example 1:
>>
>>  >from='cli...@clayster.com/amr'
>>to='dev...@clayster.com'
>>id='S0001'>
>>   > momentary='true' maxInterval='PT5M' req='true'/>
>>
>>
>> would become something a bit like
>>
>>  >from='cli...@clayster.com/amr'
>>to='dev...@clayster.com'
>>id='S0001'>
>>   
>>
>> > node='somethings'
>> jid='cli...@clayster.com/amr'/>
>> 
>>   
>> 
>>   http://jabber.org/protocol/pubsub#subscribe_options
>> 
>> 1
>> true
>> PT5M
>> 1
>>   
>> 
>>   
>>
>>
>> These fields can be standardised in IOT-Events such that discovery is
>> not necessary, and the number of roundtrips remains the same.
>
> A few things here, where I'll refer to XEP-0060 (Publish-Subscribe)
> version 1.13, as a bunch will move out of XEP-0060 post-split.
>
> 1) If I read iot-events correctly, it appears that an entity can have
> multiple subscriptions to the same 'device'. I see this example uses the
> node 'somethings'. The combination of these results in the following
> questions:
>
>   1a) How would node identifiers be used in this context? I note that
>   XEP-0323 has the concept of node identifiers. Do these map to general
>   concept of nodes we have in XEP-0060 and also service discovery
>   (XEP-0030)?
>
>   If so, I note that the attribute used in XEP-0323 (IoT Sensor Data)
>   should really be called 'node' and not 'nodeId' for consistency. If
>   not, it should receive a different name than 'node'. I have more beef
>   with attribute/element naming in XEP-0323 in general, but that's
>   probably out of scope for this exchange.
>
>   1b) Can an entity have more than one subscription to the same
>   node/device/entity?
>
>   1c) Or, alternatively, will there be a single node identifier (maybe
>   the empty one, also called root node) and will subscriptions be
>   content based rather than topic based? Or a combination of such maybe,
>   where this is like Collections (XEP-0248), but with just a single
>   collection at the root.

The way I read IOT-Events, it was a single subscription, but I'm
hoping Peter or other IOT folks can weight in here much more usefully
than I can. Fortunately we have the mechanisms in xep60 to cope with
either.

> 2) Is 'seqnr' as currently proposed not exactly like the subscription
> identifier in Content-based Subscriptions as defined in section 12.19 of
> XEP-0060 [1]?

Good catch.

> 3) I want to remark the fields in the example of the form are not named
> like we want them to look eventually (see XEP-0068). It would be more like:
>
>   
> 
>   http://jabber.org/protocol/pubsub#subscribe_options
> 
> 
>   1
> 
> 
>   true
> 
> 
>   PT5M
> 
> 1
>   

Yep - my strings were meant to be placeholders rather than real
suggestions (but you're right that I should have just written them in
a sensible format to start with).

/K


Re: [Standards] IOT-Events

2014-09-26 Thread Ralph Meijer
On 2014-09-26 15:26, Kevin Smith wrote:
> Hi folks,
>   I promised to see if I could think of something sensible to say
> about IOT-Events.
> 
> My core concern here is that this spec
> (http://xmpp.org/extensions/inbox/iot-events.html) is designed such
> that one entity can publish events, to which assorted other entities
> can subscribe, which fundamentally sounds like pubsub, for which we
> have some coverage in XEP-0060. IOT-Events comes up with a completely
> new syntax for both the subscribing and the publishing from that
> described in XEP-0060, and I'd like to see if there is common ground
> for sharing syntax (and, ideally, semantics).
> 
> I note at this point that re-use of XEP-0060 syntax would not imply
> the use of central pubsub services on components or servers. In
> IOT-Events, a Thing is its own (IOT-Events)pubsub service; I'm
> interested in seeing if they could be their own (XEP-0060
> subset)pubsub service instead.

I like this general approach!


> I suggest we define a standard form that can hold the subscription
> options in IOT-Events, so example 1:
> 
>  from='cli...@clayster.com/amr'
>to='dev...@clayster.com'
>id='S0001'>
>momentary='true' maxInterval='PT5M' req='true'/>
>
> 
> would become something a bit like
> 
>  from='cli...@clayster.com/amr'
>to='dev...@clayster.com'
>id='S0001'>
>   
> 
>  node='somethings'
> jid='cli...@clayster.com/amr'/>
> 
>   
> 
>   http://jabber.org/protocol/pubsub#subscribe_options
> 
> 1
> true
> PT5M
> 1
>   
> 
>   
>
> 
> These fields can be standardised in IOT-Events such that discovery is
> not necessary, and the number of roundtrips remains the same.

A few things here, where I'll refer to XEP-0060 (Publish-Subscribe)
version 1.13, as a bunch will move out of XEP-0060 post-split.

1) If I read iot-events correctly, it appears that an entity can have
multiple subscriptions to the same 'device'. I see this example uses the
node 'somethings'. The combination of these results in the following
questions:

  1a) How would node identifiers be used in this context? I note that
  XEP-0323 has the concept of node identifiers. Do these map to general
  concept of nodes we have in XEP-0060 and also service discovery
  (XEP-0030)?

  If so, I note that the attribute used in XEP-0323 (IoT Sensor Data)
  should really be called 'node' and not 'nodeId' for consistency. If
  not, it should receive a different name than 'node'. I have more beef
  with attribute/element naming in XEP-0323 in general, but that's
  probably out of scope for this exchange.

  1b) Can an entity have more than one subscription to the same
  node/device/entity?

  1c) Or, alternatively, will there be a single node identifier (maybe
  the empty one, also called root node) and will subscriptions be
  content based rather than topic based? Or a combination of such maybe,
  where this is like Collections (XEP-0248), but with just a single
  collection at the root.

2) Is 'seqnr' as currently proposed not exactly like the subscription
identifier in Content-based Subscriptions as defined in section 12.19 of
XEP-0060 [1]?

3) I want to remark the fields in the example of the form are not named
like we want them to look eventually (see XEP-0068). It would be more like:

  

  http://jabber.org/protocol/pubsub#subscribe_options


  1


  true


  PT5M

1
  

[1] http://xmpp.org/extensions/xep-0060.html#impl-content

-- 
ralphm


[Standards] IOT-Events

2014-09-26 Thread Kevin Smith
Hi folks,
  I promised to see if I could think of something sensible to say
about IOT-Events.

My core concern here is that this spec
(http://xmpp.org/extensions/inbox/iot-events.html) is designed such
that one entity can publish events, to which assorted other entities
can subscribe, which fundamentally sounds like pubsub, for which we
have some coverage in XEP-0060. IOT-Events comes up with a completely
new syntax for both the subscribing and the publishing from that
described in XEP-0060, and I'd like to see if there is common ground
for sharing syntax (and, ideally, semantics).

I note at this point that re-use of XEP-0060 syntax would not imply
the use of central pubsub services on components or servers. In
IOT-Events, a Thing is its own (IOT-Events)pubsub service; I'm
interested in seeing if they could be their own (XEP-0060
subset)pubsub service instead.

I suggest we define a standard form that can hold the subscription
options in IOT-Events, so example 1:

 
  
   

would become something a bit like

 
  



  

  http://jabber.org/protocol/pubsub#subscribe_options

1
true
PT5M
1
  

  
   

These fields can be standardised in IOT-Events such that discovery is
not necessary, and the number of roundtrips remains the same.

What do folks think of this as a starting point? (There are further
questions that need answering about this approach later...)

/K