0

我有一个带有连接设备的 azure iot 集线器,可以进行活动。如果我在 azure 站点中检查特定的设备孪生,我将得到正确的“connectionState”和“lastActivityTime”,例如:

{
 "deviceId": "test",
 "etag": "AAAAAAAAAAM=",
 "version": 5,
 "status": "enabled",
 "statusUpdateTime": "0001-01-01T00:00:00",
 "connectionState": "Connected",
 "lastActivityTime": "2018-02-13T08:35:08.7759733",
},

但是,一旦我使用查询资源管理器(或节点 sdk 中的 registry.query),我就会得到错误的 connectionState 和 lastActivityTime,例如,这是查询资源管理器中查询“SELECT deviceId,lastActivityTime,connectionState FROM devices”的结果:

{
 "DeviceId": "test",
 "ConnectionState": "Disconnected",
 "LastActivityTime": "0001-01-01T00:00:00"
}

为什么注册表查询不会返回正确的数据?

谢谢,

4

1 回答 1

1

可能是在问这个问题时,Azure IoT Hub 的 Node.js SDK 没有使用最后一个服务 API 版本。这已通过 azure-iothub@1.2.5 和 iothub-explorer@1.2.1(今天发布)修复。

如果您使用这些新版本运行相同的查询,它应该可以工作!

于 2018-02-17T01:28:24.253 回答