Re: New web of things server projects

Hi Michael,

> On 24 Jun 2015, at 10:50, Michael Petychakis <mpetyx@epu.ntua.gr> wrote:
> 
> Hello Dave,
> 
> All those projects are indeed a nice community effort.
> I would be glad to start a python project either on django or flask regarding wot.
> Before doing so, I would first like to finalise the needs of the wot API.
> I started working on a public portal for this API, which you can find here.
> https://anypoint.mulesoft.com/apiplatform/mpetyx/#/portals/organizations/075fa592-40f7-4026-bb0d-5380a12fd1c3/apis/25173/versions/26729/pages/40497 <https://anypoint.mulesoft.com/apiplatform/mpetyx/#/portals/organizations/075fa592-40f7-4026-bb0d-5380a12fd1c3/apis/25173/versions/26729/pages/40497>
> 
> For comments on this we can use either this sample repo I just created (https://github.com/mpetyx/wot-python <https://github.com/mpetyx/wot-python>) or any official one.
> My main scope is to first finalise the scope of this API so that we can start implementing REST and CoaP bindings.

You can see the bindings for WebSockets at:

    https://github.com/w3c/web-of-things-framework/blob/master/bindings.md <https://github.com/w3c/web-of-things-framework/blob/master/bindings.md>

We’re currently trying to design bindings for MQTT and CoAP, as well as the server metadata needed to describe which protocols it supports, see the thread at:

  https://github.com/w3c/web-of-things-framework/issues/13 <https://github.com/w3c/web-of-things-framework/issues/13>

For CoAP I would like to take advantage of the pub-sub mechanism that the IETF is working on, as a basis for the thing server to send notifications to other servers with proxies for the things that the CoAP server hosts.  I am chatting with some MQTT experts to ensure that we hit the ground running with the MQTT bindings.   A further challenge is the choice of binary encodings for messages.  Carsten Bormann of CoAP fame advocates CBOR, but other people are keen on EXI, which can offer superior compression based upon the data model.

I’ve set up empty github repositories for the Arduino and ESP8266 boards, and made a very small step on starting a Go (lang) implementation.  There is still quite a bit of design work to do on the metadata and messaging formats, so it makes sense to hold off on a python implementation, so that when you get started, much more of the design has been done.

Best regards,
   Dave

> 
> Regards, 
> 
> Michael Petychakis
> Electrical & Computer Engineer, Dipl Eng, Research Associate 
> Decision Support Systems Laboratory
> School of Electrical and Computer Engineering
> National Technical University of Athens
> 
> 9 Heroon Polytechneiou Str
> Zografou - Attica, 15773, Hellas
> Tel:  +30 210 7723555
> Fax: +30 210 7723550
> 
>> On Jun 22, 2015, at 7:51 PM, Dave Raggett <dsr@w3.org <mailto:dsr@w3.org>> wrote:
>> 
>> The momentum is building …
>> 
>> As we now have volunteers interested in helping with developing web of things servers for different devices or in different programming languages, I have set up the following Github projects
>> 
>>     https://github.com/w3c/wot-arduino <https://github.com/w3c/wot-arduino>
>>     https://github.com/w3c/wot-esp8266 <https://github.com/w3c/wot-esp8266>
>>     https://github.com/w3c/wot-go <https://github.com/w3c/wot-go>
>> 
>> The Arduino project will seek to develop a minimalist Web of Things server in C using either CoAP or MQTT. The ESP8266 project will take advantage of the greater power of the ESP8266 microcontroller and support a wider range of protocols, and should be able to support dependencies with other “things”.  We hope to explore a pure C based implementation, as well as a Lua based implementation based upon NodeMCU.  The Go project will seek to develop a high performance server using the Go programming language, and offer up the same range of capabilities as the NodeJS based server. We now need to discuss ideas for protocol bindings and I will create a new thread for that.
>> 
>> I would like to rename the NodeJS project to match, i.e. to rename it to
>> 
>>     https://github.com/w3c/wot-nodejs <https://github.com/w3c/wot-nodejs>
>> 
>> from
>> 
>>     https://github.com/w3c/web-of-things-framework <https://github.com/w3c/web-of-things-framework>
>> 
>> Angelos Kapsimanis has already volunteered to administer the Arduino project, and we’re looking for people to administer the ESP8266 and Go projects.  Administration means taking care of pull requests, i.e. reviewing proposed changes and merging them into the master branch. Administrators can also add other people as collaborators, but note that for most people you can clone the repository, make your local changes and submit a pull request, without needing to be added to the corresponding Github team.
>> 
>> —
>>    Dave Raggett <dsr@w3.org <mailto:dsr@w3.org>>
>> 
>> 
>> 
> 

—
   Dave Raggett <dsr@w3.org <mailto:dsr@w3.org>>

Received on Thursday, 25 June 2015 18:22:31 UTC