物联网和设备之间的区别是什么?和' thingShadow'班?

时间:2017-07-04 16:40:02

标签: amazon-web-services iot aws-iot

我有一个应用程序订阅和发布关于物联网物联网的主题。我想知道两个班级之间的差异"设备"和" thingShadow"是。这个library给出了两者的例子,它们似乎都具有相似的功能。

1 个答案:

答案 0 :(得分:7)

device class用于订阅和发布有关遥测和消息传递的MQTT主题消息。

thingShadow classwrapper around the device class,它提供了其他方法,例如.register.updatedelete,用于与设备阴影进行交互。此类还会发出与影子生命周期相关的特定事件,例如statusdeltaforeignStateChange

  

[...] thingShadow类允许设备更新,通知AWS IoT的更改,获取当前状态或删除Thing Shadows。

所以基本上,如果你正在使用设备阴影,请使用thingShadow类,否则你可以使用device类。

修改

为了进一步扩展AWS IoT的基本原则,您可以在设备之间使用两种通信方案:

  • 由于AWS IoT实施了标准MQTT界面,您可以使用主题使用名为publish-subscribe的模式与您的设备进行通信。您的应用可以订阅主题并等待设备在其上发布消息。同样,您的应用可以在设备主题上发布消息,并让设备接收消息。

  • AWS IoT实现了一个名为device shadow的第二个通信接口,它允许您在设备断开连接时对设备进行寻址,并在您的应用和设备本身之间保持同步状态。 AWS文档明确说明了这一点。

  

一个东西阴影(有时也称为设备阴影)是一个JSON   用于存储和检索当前状态信息的文档   对于一件事(设备,应用程序等)。 Thing Shadows服务   为您连接到AWS IoT的每件事物维护一个事物阴影。您   可以使用事物阴影来获取和设置MQTT上的事物的状态   HTTP,无论事物是否连接到Internet。   每个阴影都由其名称唯一标识。

可以在SDK中使用device class在MQTT主题上进行订阅和发布,以及thing shadow class来检索,更新或删除设备事物影子文档。