08:18:32 RRSAgent has joined #wot-di 08:18:32 logging to http://www.w3.org/2016/01/28-wot-di-irc 08:18:40 Zakim has joined #wot-di 08:18:42 Hitoshi has joined #wot-di 08:18:42 toru has joined #wot-di 08:18:55 RuiFerreiraDaCosta has joined #wot-di 08:18:55 topic: TF Breakout - Work Item Discussion 08:19:05 Meeting: AP+DI (Room 153) 08:19:33 dom has joined #wot-di 08:19:55 soumya: work items for the WG 08:20:17 -> https://www.w3.org/WoT/IG/wiki/Proposals_for_WoT_WG_work_items WG item proposals 08:20:37 i/soumya:/topic: WG item proposals 08:20:58 soumya: starting with "Uniform and Technology Independent Discovery" 08:21:18 ... common mechanism for various physical devices, e.g., radio 08:21:27 mdadas has joined #wot-di 08:21:38 present+ Mohammed Dadas 08:21:43 ... would be useful to have information as metadata 08:21:56 dsr has joined #wot-di 08:22:16 present+ Dave_Raggett 08:22:23 romain has joined #wot-di 08:22:26 akeranen has joined #wot-di 08:22:39 johannes: regarding the proposal here 08:23:19 ... most relevant topic is "Web of Things scripting API" and "Bindings to Common Protocols" 08:23:35 ... (goes through "Web of THings scripting API") 08:24:22 ... any comments at the moment? 08:24:34 ... deriverable for WG? 08:24:48 ... in scope or out of scope? 08:25:20 ... (goes to "Bindings to Common Protocols") 08:25:24 ... two comments already 08:25:51 dsr: shown layered diagram 08:25:59 ... we can define abstraction layer 08:26:09 ... how to map specific protocols 08:26:26 ... collaboration with IETF core WG 08:26:41 s/WG/WG, etc./ 08:26:56 kajimoto has joined #wot-di 08:26:58 s/core/CoAP/ 08:27:11 s/abstraction layer/abstraction layer for things with abstract messages etc./ 08:27:26 johannes: we have a common picture 08:27:52 ... collaboration with IETF and other SDOs 08:28:03 dsr: WebSocket protocols is done by IETF 08:28:20 ... while WebSocket API is done by W3C 08:28:57 johannes: minimum requirements for binding 08:29:11 ... there would be assumptions, guidelines 08:29:26 ... starting with HTTP and CoAP 08:29:37 dsr: also need for testing environment 08:29:51 ... testing framework 08:30:05 ... to guarantee interoperability 08:30:25 present+ Toru_Kawaguchi 08:30:31 johannes: test framework means script on one side and...? 08:30:45 dsr: test suite for checking features 08:31:15 HTTP protocol binding - http://www.onem2m.org/images/files/deliverables/TS-0009-HTTP_Protocol_Binding-V1_0_1.pdf 08:31:21 johannes: includes a reference implementation? 08:31:28 MQTT protocol binding - http://www.onem2m.org/images/files/deliverables/TS-0010-MQTT_protocol_binding-V1_0_1.pdf 08:32:15 ... some kind of compliance test? 08:32:27 dsr: W3C doesn't do compliance test itself 08:32:44 ... tests and test suite approved by WG 08:33:05 joerg: tests include abstract layer? 08:33:10 dsr: yes 08:34:05 (going back to the discussion on "protocol binding") 08:34:12 soumya: put URLs on the IRC 08:34:21 ... Overview of HTTP Binding 08:34:31 ... (OneM2M spec) 08:34:31 The W3C Working Group would define a suite of tests for normative statements in the Candidate Recommendation, and would be at the abstraction layer the WG is defining, i.e. the “things” layer. 08:34:56 let's talk about that as a separate topic later in detail 08:35:26 soumya: MQTT Binding 08:35:54 johannes: reference architecture and guidelines 08:36:04 ... would push it on the Github 08:36:26 soumya: (visits the Github repo) 08:36:50 -> https://github.com/w3c/wot WoT repo 08:37:44 johannes: under the WG sub directory 08:37:46 mdadas has joined #wot-di 08:37:59 -> https://github.com/w3c/wot/blob/master/WG/wot-wg-items-ap.md Web of Things scripting API 08:38:31 johannes: what is the actual target to be done by the WG? 08:39:09 ... (goes through the list of "Scope") 08:39:17 ... API definitions 08:39:24 ... Define callback signatures 08:39:30 ... Security model and policies 08:40:03 ... concept of applications spanning multiple things... might be an appendix 08:40:10 ... TD interactions as manifest 08:40:22 ... (next "Out-of scope") 08:40:30 ... solutions for particular runtimes/frameworks 08:40:44 ... middlewares and protocol drivers 08:40:50 ... (Deliverables) 08:41:09 dsr: when it comes to language independent definition 08:41:20 ... still need mapping to languages 08:41:58 johannes: that is the case with our implementation 08:42:11 ... but still could do discussion as a standard work 08:42:30 ... it would be good to have discussions 08:42:58 ... (goes to the next section, "Bindings To Common Protocols") 08:43:25 ... if I'm an implementer, how to implement the binding mechanism? 08:43:46 ... actual protocol definitions are out of scope 08:44:32 dsr: "resource model and URI concepts" would be too strong assumption 08:45:10 ... we're not talking about concrete protocols but abstract model 08:45:35 ... abstract data model and abstract messaging mechanism 08:45:41 ... small set of things 08:46:57 dsr: we have CSS, XPath, etc., as well 08:47:13 johannes: may consider mapping between XPath and URI 08:47:29 dsr: in the abstraction layer, we don't care about that 08:48:14 johannes: in that case, what would be the moderate target? 08:48:52 dsr: why do you need to? 08:49:23 ... how to map the abstraction model is the key 08:50:20 ... using URI implies schema 08:50:37 johannes: we want to provide guidelines 08:50:52 ... MQTT, BLE could be mapped to URIs 08:51:07 romain_ has joined #wot-di 08:51:16 dsr: each programming language has its own mechanism 08:51:54 johannes: we still need to provide how to map each protocol 08:52:03 ... using some uniform way to specify resources 08:52:22 claes: a bit confused by this discussion... 08:52:36 ... there are more than one ways 08:53:56 johannes: if you want to use bluetooth, we need to map it to web mechanism for web browser 08:54:14 ... URI is used for that 08:54:48 ... when I have a property, how to use that property? 08:54:58 dsr: in JavaScript that is an object 08:55:38 dape: you still want to know the URI for communication, don't you? 08:56:19 (some more discussions) 08:58:20 kaz: is it ok by you, Dave, if we handle "Resource Model" topic and "URI concept" separately? 08:58:28 dsr: yes, we should handle them separately 08:58:58 (some more discussions) 08:59:33 joerg: we should do the detailed discussion on this later 09:00:06 everybody: agrees 09:00:38 soumya: (goes back to the WG item proposal wiki) 09:02:11 joerg: recognize different categories? 09:02:46 soumya: could be a work item 09:03:10 joerg: would assume the same model as protocol mapping 09:04:19 johannes: we had discussion yesterday, and don't think there is anything missing 09:04:46 soumya: if no further comments, would finish this session 09:05:06 dsr: can add further comments to the wiki 09:05:19 soumya: (goes back to the agenda wiki) 09:05:49 ... TD+DI (room 151) 09:05:53 rrsagent, draft minutes 09:05:53 I have made the request to generate http://www.w3.org/2016/01/28-wot-di-minutes.html Soumya 09:05:55 ... AP+SP (room 153) 09:06:06 [ break ] 09:06:10 rrsagent, draft minutes 09:06:10 I have made the request to generate http://www.w3.org/2016/01/28-wot-di-minutes.html kaz 09:06:10 s/can add further comments to the wiki/can easily find our way to the github page from the Task Force wiki/ 09:06:22 rrsagent, draft minutes 09:06:22 I have made the request to generate http://www.w3.org/2016/01/28-wot-di-minutes.html kaz 09:08:50 rrsagent, make log public 09:08:52 rrsagent, draft minutes 09:08:52 I have made the request to generate http://www.w3.org/2016/01/28-wot-di-minutes.html kaz 09:09:42 s/TF Breakout/9am-10am: TF Breakout/ 09:09:44 rrsagent, draft minutes 09:09:44 I have made the request to generate http://www.w3.org/2016/01/28-wot-di-minutes.html kaz 09:10:24 s/TF Breakout/TF Breakout - AP+DI/ 09:10:25 rrsagent, draft minutes 09:10:25 I have made the request to generate http://www.w3.org/2016/01/28-wot-di-minutes.html kaz 09:18:05 mdadas_ has joined #wot-di 09:31:18 toru has left #wot-di 09:40:13 akeranen has left #wot-di 10:22:02 haxxpop has joined #wot-di 10:32:32 dsr has joined #wot-di 10:40:38 Soumya has joined #wot-di 10:41:36 RRSAgent, draft minutes 10:41:36 I have made the request to generate http://www.w3.org/2016/01/28-wot-di-minutes.html tidoust 10:42:00 scribe: tidoust 10:42:29 Topic: Provisioning and next steps 10:42:58 Soumya: Objective of this last session is to discuss provisioning that we haven't had time to touch upon yet, and discuss next steps. 10:43:23 ... For provisioning, I wanted to give a brief overview of OMA LwM2M 10:43:44 ... It defines an application layer protocol, between client and server for constrained devices. 10:43:56 ... Toward that goal, it provides several interfaces 10:44:20 ... One of them is the Bootstrap, but also the registration and device management interfaces. 10:44:40 ... Not planning to review all of them here. 10:45:02 ... About the bootstrap, the goal is to provision essential information into the LwM2M client. 10:45:16 ... Four supported modes (see slide) 10:45:45 [looking at the specification] 10:46:11 Mohammed: I may explain. This is based on what we have in OMA. 10:46:44 ... The factory bootstrap is when the device already knows where to connect because it has all the information needed. 10:47:20 ... The second mode is the SIM card model. The SIM card connects to any network and retrieves the provisioning information from the right operator. 10:48:12 ... The Client initiated bootstrap requests a user action to generate the bootstrapping. It can be from an app or whatever. Example of the setup button on the gateway. 10:48:32 ... Last one is server initiated where the server needs to send updates to a particular device. 10:49:13 Soumya: Thanks. This covers provisioning. It may be useful to have secure provisioning. 10:49:42 ... We all understand why it's necessary, it would be good to scope it properly. 10:50:36 Mohammed: The main thing is to identify which device is connected to the server. The bootstrap is the main step. After that, you can do whatever you want. 10:50:48 ... It benefits the server and the client. 10:52:00 Soumya: One open question, let's say you have a mobile server, anybody can attach to your server. How do you trust the exchanges? 10:52:31 Mohammed: All defined in the protocol. 10:56:02 [Mohammed explains the different steps of the bootstrapping in the case of mobiles. The URI of the server to which the client will send the request is constructed out of the parameters and identifiers contained in the SIM card. No authentication needed] 10:56:48 Francois: Cannot the URI be faked? 10:57:28 Mohammed: It can, but this is just about receiving a small set of information that is not that sensitive and with which you cannot do much without further authentication. 10:58:19 Rui: Free does it all automatically, server-initiated bootstrap. 10:58:53 Mohammed: Server-initiated is typically used in roaming. The "welcome" message you get is an illustration of it. 11:00:04 ... Establishing the client-server communication is the most important part. 11:00:35 s/IETF CoAP/IETF CoRE/ 11:01:05 Francois: Looking at it from the application layer perspective, what would we need to expose? 11:01:41 Soumya: Right. 11:01:57 ... It has to be part to the scripting API, I guess. 11:02:09 ... This part would be the setup part in the setup/operation parts we mentioned yesterday. 11:03:08 Francois: What is the relationship between registration and provisioning? 11:03:43 Soumya: First point, during provisioning, you get the URI to which you will upload your thing description. 11:04:03 Mohammed: It may be viewed as a special case of registration, perhaps. 11:04:27 ... The server gives you a lot of information about what you can do. 11:06:01 ... A difference is that a provisioning server listens to you specifically. The registration server listens to devices on a particular network or area. 11:06:48 Soumya: If you consider thing-to-thing perspective. Maybe during provisioning, you understand that there may be a thing you connect to. That could be part of the setup operation. 11:08:07 Mohammed: One thing that should be in scope is what kind of management you want to have on a thing? Do I need to restart, pause, reset a thing? 11:08:33 Zakim has left #wot-di 11:08:33 ... As server, I need to do this device management actions. Important from a provisioning perspective. 11:09:34 ... Usually, the server defines the different management functions. 11:09:57 Soumya: Do you know about other technologies that we can look into on top of OMA? 11:10:47 ... I tried to look into Nest for instance. The setup is complicated. You have to attach it to your Wifi, etc. 11:11:33 Mohammed: Nest is proprietary. Another spec to look at maybe could be BBF TR-069 11:11:53 BBF TR-069 - https://www.broadband-forum.org/technical/download/TR-069.pdf 11:11:59 ... It would be interesting to see how they do the provisioning and other functions. 11:15:02 Francois: As part of the setup operation, many devices, e.g. Chromecast, start in a mode where they create an ad-hoc Wifi network that the user connects to to pass the Wifi credentials. Is it part of provisioning? 11:15:20 Mohammed: Yes, to some extent. The configuration parameters should be part of the provisioning response. 11:16:26 Soumya: The goal is to come up with a definition of what provisioning is, as we did with discovery. In terms of the group, discovery gives you a thing description. 11:17:17 ... [showing the related WoT IG wiki page on provisioning] 11:17:40 ... One thing that I noticed is that there are ways to include security aspects to provisioning. 11:18:18 Mohammed: I would suggest putting these definitions in a central place. 11:18:58 Francois: Hopefully, the IG deliverable will merge these definitions in a Terminology section. 11:20:00 OMA LwM2M DevKit : https://github.com/OpenMobileAlliance/OMA-LWM2M-DevKit 11:21:57 Francois: Taking the analogy of Internet Connection, provisioning is like DHCP or user may enter manual settings. In that sense, provisioning is what allows you to get the parameters you need to switch to proper operation mode. 11:22:09 Topic: Next steps 11:22:24 s/Topic: Provisioning and next steps/Topic: Provisioning/ 11:22:44 Soumya: I will work on the transition of the Tech Landscape survey to GitHub. 11:23:34 ... One thing to emphasize is that now is the right time to have joint description, e.g. with Sebastian on thing descriptions to create filters for discovery 11:24:00 ... Of course, bindings to protocols is important. We need to have a way to give that information to the AP task force. 11:26:17 Francois: I agree with the general description. Now it may be time to merge all task forces back into the IG to ensure that everyone converges on a similar vision, and that the IG is able to extract a concrete list of technical gaps. 11:26:49 [breakout adjourned] 11:26:58 RRSAgent, draft minutes 11:26:58 I have made the request to generate http://www.w3.org/2016/01/28-wot-di-minutes.html tidoust 12:12:33 dsr has joined #wot-di 12:55:13 tidoust has joined #wot-di 13:10:29 tidoust has joined #wot-di 14:44:36 yingying has joined #wot-di