2

在 Azure IoT Hub 中创建设备时,是否可以在 deviceTwin 的标签中定义属性?或者需要先创建设备,然后获取并更新deviceTwin。似乎“Registry.create”(来自节点 sdk)不接受这样的选项。我想要实现的是以下

`...
const device ={
    deviceId: '1',
    tags: {
        location: 'London'
    }
}
registry.create(device, callback)
...`
4

1 回答 1

2

Registry使用in node创建设备时,无法在 Device Twin 的标签中定义属性。实际上,createRegistry 类中的方法是调用 PUT REST API 来创建或更新 device。设备信息应参考请求体,它不接受请求体中的属性项。

但是,有一种解决方法。您可以使用批量创建或更新设备来创建具有标签和属性的新设备。

例如,将请求正文发布如下:

[
    {"Id":"7ADF1F8E-0208-49B7-B62A-021323EF1B55","tags":{"location": "London"},"properties":{"desired":{"Temperature":30}},"Status":"enable","importMode":"create"},
    {"Id":"F2805601-1F4D-459F-9D8F-E2F7D3638EF5","tags":{"location": "New York"},"properties":{"desired":{"Temperature":31}},"Status":"enable","importMode":"create"},
    {"Id":"D0447599-5B2D-4EDB-A809-29643CC7E30E","tags":{"location": "Paris"},"properties":{"desired":{"Temperature":32}},"Status":"enable","importMode":"create"}
]

之后,您将在设备孪生中找到标签和所需属性。

在此处输入图像描述

于 2018-07-05T02:28:31.703 回答