You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@edgent.apache.org by "Dale LaBossiere (JIRA)" <ji...@apache.org> on 2017/01/31 19:56:52 UTC

[jira] (EDGENT-376) Support an edge device using both the Edgent API and WIoTP "Managed Device" APIs

Dale LaBossiere created EDGENT-376:
--------------------------------------

             Summary: Support an edge device using both the Edgent API and WIoTP "Managed Device" APIs
                 Key: EDGENT-376
                 URL: https://issues.apache.org/jira/browse/EDGENT-376
             Project: Edgent
          Issue Type: Improvement
          Components: Connectors
            Reporter: Dale LaBossiere


Use case: I need to be able to write an edge device application that uses both the Edgent APIs/programming model for analytics and the IBM Watson IoT Platform "Managed Device" APIs for other capabilities (e.g., to support the WIoTP "reboot the device" protocol).

I don't need the Edgent IoT connector to support WIoTP defined "Managed Device" capabilities -- e.g., I don't need my Edgent application to be able to create a TStream of subscribed "WIoTP device management" commands using {{IotDevice.commands(...)}}.

Today the [IotpDevice|https://github.com/apache/incubator-edgent/blob/master/connectors/iotp/src/main/java/org/apache/edgent/connectors/iotp/IotpDevice.java] connector precludes this use case.  It hides the WIoTP API objects used to connect to WIoTP.  The WIoTP {{DeviceClient}} API is for a simple device (used by today's connector); {{ManagedDevice}} is for a "managed device" --   {{ManagedDevice extends DeviceClient}}.

I think the best way to enable this use case, and generally add more flexibility in configuring an underlying WIoTP connection, would be to add a  {{IotpDevice(DeviceClient)}} constructor, allowing the application to create and use the ManagedDevice object for WIoTP managed device capabilities and intialize the IotpDevice connector with it.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)