Azure IOT PnP Digital Twin API / SDK检索设备/双胞胎的属性,命令和遥测定义

问题描述

我目前正在学习Azure IOT即插即用和数字孪生。

我正在运行以下设备示例:Azure \ IOT即插即用\ azure-iot-samples-csharp \ iot-hub \ Samples \ device \ PnpDeviceSamples \ Thermostat

和相应的服务示例:Azure \ IOT即插即用\ azure-iot-samples-csharp \ iot-hub \ Samples \ service \ PnpServiceSamples \ Thermostat

与恒温器交互:json4delphi

我想通过基于孪生ID的API / SDK发现可用于设备/双胞胎的属性,遥测和命令,但是我注意到Microsoft.Azure.Devices.Device和Microsoft.Azure.Devices .Shared.Twin类仅包含属性信息,而没有定义命令或遥测。

Microsoft.Azure.Devices.RegistryManager registryManager = _registryManager;

Microsoft.Azure.Devices.Device device = await registryManager.GetDeviceAsync(_digitalTwinId);

Microsoft.Azure.Devices.Shared.Twin twin = await _registryManager.GetTwinAsync(_digitalTwinId);

有人可以告诉我如何获取命令和遥测定义吗?

解决方法

要在应用程序中动态发现设备模型的所有详细信息,请执行以下操作:

  1. 标识设备的型号ID
  2. 将其从存储库解析为模型文件
  3. 解析模型文件

在此处查看文档: https://docs.microsoft.com/en-us/azure/iot-pnp/concepts-model-discovery

要解析模型,您可以直接读取json,或使用模型解析器库获取设备模型的丰富对象模型。在这里查看文档: https://docs.microsoft.com/en-us/azure/iot-pnp/concepts-model-parser

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...