Sung,

This work is already done. That is, we announced the the JS API for
Iotivity several months ago. The work is now nearing the completion.

The JS API is here (WebIDL):

https://github.com/otcshare/iotivity-node/blob/master/spec/iot-js-spec.md

We also have 3 implementations of the API

Node.js: https://github.com/otcshare/iotivity-node
Crosswalk (Tizen/Linux):
https://github.com/crosswalk-project/iotivity-extensions-crosswalk
Crosswalk (Android): repo opening soon, implementation ongoing

Let?s not invent new JS API now. It will cause confusion for the
developers. If there is something missing in the API lets fix that.

We need to move the API spec and implementations to iotivity repos. We?ll
start the process soon.

Sakari


On 10/15/15, 08:47, "YoulWoong Sung" <yw.sung at samsung.com> wrote:

>Hi Sakari,
>
>My colleagues and I are making a JavaScript-IoTivity binding for node.js
>as a part of Web Service Interface project.
>findResource, CRUDN functions are immature but working, so you can use
>IoTivity functionality in node.js code.
>Basic callback machanisms have been implemented by using libuv.
>
>
>Node.js code looks like:
>
>  IoTivity.findResource('', '/oic/res?rt=core.light', 'CT_ADAPTER_IP',
>function(resourceid) {
>    console.log(resourceid);
>    IoTivity.get(resourceid, function(resource) {
>      IoTivity.post(resourceid, "power", 20, function(resource__) {
>        console.log(resource__);
>      
>        IoTivity.observe(resourceid, 0,function(resource3) {
>          console.log(resource3);
>        }
>               
>         IoTivity.cancelObserve(resourceid,function(resource5) {
>           console.log(resource5);
>         });
>      });
>    });
>  });
>
>We are making node.js wrapping layer for IoTivity. So we haven't defined
>any Web IDL with JavaScript.
>I think we can collaborate to make node.js module for IoTivity.
>I'd like to know your opinion.
>
>Regards,
>Sung.
>
>
>------- Original Message -------
>Sender : RAVI NANJUNDAPPA<nravi.n at samsung.com> Chief
>Engineer/SRI-Bangalore-Open Source/Samsung Electronics
>Date : 2015-10-15 14:02 (GMT+09:00)
>Title : Re: [dev] [request for feedback] Proposal - IoTivity Bindings
>Generation Using SWIG
>
>Hi Sakari, 
>
>Thanks for the reply.
>Sure. We will exclude the JS bindings from our plan and provide the
>bindings for others (initially to start with Python and perl).
>I hope this is fine.
>
>Thanks and Best Regards,
>N Ravi
>------- Original Message -------
>Sender : Poussa, Sakari<sakari.poussa at intel.com>
>Date : Oct 08, 2015 13:14 (GMT+05:30)
>Title : Re: [dev] [request for feedback] Proposal - IoTivity Bindings
>Generation Using SWIG
>
>Hi Ravi,
>
>I think the plan is OK. But as Gabriel pointed out, we would like to
>leave the JS APIs out of it and have the JS APIs to be how it is now
>being implement for Node.js, Tizen and Crosswalk.
>
>The JS API spec is here:
>
>https://github.com/otcshare/iotivity-node/blob/master/spec/iot-js-spec.md#
>web-idl-of-the-javascript-api
>
>Sakari
>
>From: > on behalf of RAVI NANJUNDAPPA >
>Reply-To: "nravi.n at samsung.com" >
>Date: Thursday, October 8, 2015 at 08:34
>To: RAVI NANJUNDAPPA >
>Cc: iotivity-dev >
>Subject: Re: [dev] [request for feedback] Proposal - IoTivity Bindings
>Generation Using SWIG
>
>
>Dear All,
>
>
>
>Gentle reminder.
>
>In case of no issues on this proposal, I'll start working on this
>proposal.
>
>
>
>Thanks and Best Regards,
>
>N Ravi
>
>------- Original Message -------
>
>Sender : RAVI NANJUNDAPPA> Chief Engineer/SRI-Bangalore-Open
>Source/Samsung Electronics
>
>Date : Oct 05, 2015 09:57 (GMT+05:30)
>
>Title : Re: Re: [dev] [request for feedback] Proposal - IoTivity Bindings
>Generation Using SWIG
>
>
>
>Hello Gabriel,
>
>
>
>Thanks for the information.
>
>As mentioned in the proposal document, the initial plan is to support for
>Python and perl language bindings.
>
>Once these are completed and depending on the community's response, we
>will take this further to consider other bindings.
>
>
>
>Thanks and Best Regards,
>
>N Ravi
>
>------- Original Message -------
>
>Sender : Schulhof, Gabriel>
>
>Date : Oct 01, 2015 18:56 (GMT+05:30)
>
>Title : Re: [dev] [request for feedback] Proposal - IoTivity Bindings
>Generation Using SWIG
>
>
>
>Hey, all!
>
>We're already writing JS bindings for the CSDK to be used with node.js,
>and we have higher level binding that mimic the C++ API as well. Writing
>JS bindings is not as simple as producing them using SWIG. You need to
>know for which environment you wish to write bindings. Bindings for
>Chromium are completely different than bindings for Node.js, for example.
>
>As far as the node.js bindings are concerned, it might be beneficial to
>integrate them with iotivity itself, because the contents of the bindings
>is determined by the build flags used to build iotivity. For example,
>certain constants are not defined if remote access is not enabled, and
>they are defined otherwise. Right now, I have to parse the header files
>using a bash script, which is super-undesirable because it doesn't
>recognize which C preprocessor directives were used during the
>compilation of iotivity itself.
>
>In addition, the interface between node.js and the bindings to native
>libraries changes all the time - so much so, that a second project called
>"native abstractions for node" (NAN) has sprung up to provide C
>preprocessor macros and C++ classes that allow developers to address
>multiple versions of node.js using the same C++ code.
>
>https://github.com/otcshare/iotivity-node
>
>Cheers!
>
>
>
>Gabriel
>
>[http://www.samsung.net/service/ml/AttachController/201510081105792_Z5JE7E
>UA.gif?cmd=downdirectly&filepath=/LOCAL/ML/CACHE/n/20151015/BGFC2LL5XOK0 at n
>amo.co.kr388nravi.n&contentType=IMAGE/GIF;charset=ISO-8859-1&msgno=388&par
>tno=1&foldername=INBOX&msguid=37642]

Reply via email to