W3C

– DRAFT –
WoT Scripting API

13 June 2022

Attendees

Present
Cristiano_Aguzzi, Jan_Romann, Kaz_Ashimura, Michael_McCool, Tomoaki_Mizushima, Zoltan_Kis
Regrets
Daniel
Chair
Cristiano_Aguzzi
Scribe
zkis

Meeting minutes

previous minutes

<cris_> May-30

CA corrected some typos

Minutes approved.

aligning Discovery spec with Scripting

<kaz> WoT Discovery draft

McCool: the Discovery spec needs a section for CoAP (for self description)
… otherwise is pretty much done

Discoverer section

The spec assumes CoAP is supported, but not yet

McCool: the Discoverer section will lists requirements for introductions by clients
… 1. at least one introduction mechanism MUST be supported, e.g. a URL

Zoltan: these are the capabilities the runtime needs for discovery (i.e. Scripting implementation)

McCool: this is related to who is doing discovery
… any introduction, including mDNS or CoRE is enough
… even for direct discovery, the hostname is needed
… 2. Discovery MUST find at least one TD

Zoltan: why is this one needed?

McCool: the fetching capability is needed
… could be a file as well

Cristiano: details for files?

McCool: file support might go away because of the URL quirks
… the protocols are mentioned below: HTTP, CoAP, (file)

McCool: presents diagram for discovery

Cristiano: so we should define algorithms and tests in Scripting

Zoltan: you need a priori knowledge for URLs

McCool: one can also use mDNS etc

Zoltan: this is relevant because we might want to reintroduce multicast (mDNS like) discovery

McCool: multicast is probably a local discovery method, for security reasons
… it might be behind a well known single URI

Zoltan: if we dont' reintroduce multicast, we could say the empty arguments to discovery means the impl can use any available methods it can figure out

McCool: the client needs to make distinction between local network discovery and the rest

Cristiano: there are 2 kinds of apps: ones that know the URLs, but others don't know where to get these from, and would delegate to the runtime

Zoltan: MMc made the point that no args be limited to the local network, for security

McCool: yes, and moreover, a given failed URL could be used by the impl to figure out eventual discovery methods

Cristiano: what if the runtime is provisioned with a directory? is that still allowed?

McCool: it gets in the management API, outside of Scripting
… a fallback directory might make sense

Zoltan: that is a choice the solution has to make

McCool: yes, and the impl provides mechanisms for that

Cristiano: so in node-wot we'd support these mechanisms

McCool: yes, so when no args are given, the runtime defaults can be used

Zoltan: we need references from Scripting algorithms to Discovery spec clauses

Cristiano: yes, thinking the same

McCool: we were thinking to define also flowcharts (algorithms) in addition to the pictures

Cristiano: we can prototype the algorithms and they could be also used in the Discovery spec

McCool: if we follow Thing links, it may enter into loops
… there is the requirements to avoid loops
… since id's are optional, impl needs to attach a hash
… however, the impl can make decisions whether to follow links

Zoltan: the discovery provides TDs, and whether it contains links, it's a representation problem, in the consume process

McCool: we need to think more about handling TDs with links

McCool: we'd stop with this now, but need feedback from Scripting today
… let's see of CoAP will be removed for now

Zoltan: would be nice for OCF things

McCool: we can do without CoAP, HTTP is enough for now

Cristiano: maybe Jan could comment on this

Jan: certainly, could take a look

McCool: most of this needs to be done today
… in fact it might be easier to add CoAP, so let's try to make it, make a PR for the missing section

Cristiano: we can move on

issue 403

<cris_> https://github.com/w3c/wot-scripting-api/issues/403

Cristiano: should we close this or make a small PR with explicit statement?

<cris_> https://github.com/w3c/wot-scripting-api/issues/407

Zoltan: the latter, more explicit is better

Cristiano: ok

issue 407

https://github.com/w3c/wot-scripting-api/issues/407

Cristiano: we might need to replace observeHandler with propertyChangeHandler

Zoltan: good idea to sweep the spec for the use of internal slots on properties

issue 408

<cris_> https://github.com/w3c/wot-scripting-api/issues/408

Cristiano: IMHO we can remove this, as the app is always controlling emitting an event

Zoltan: let's discuss that offline, too

Cristiano: please also take a look at issue 409

adjourned

Minutes manually created (not a transcript), formatted by scribe.perl version 185 (Thu Dec 2 18:51:55 2021 UTC).