Azure IoT SDK - 创建没有连接字符串的模块孪生

问题描述

我正在将 Azure IoT 设备 SDK for C 用于我设备上运行的应用程序。

我的设备使用签名证书在 Azure IoT 中心配置和验证自身。然后,我会定期使用我的设备报告的属性更新设备孪生。

但是,我的设备孪生变得越来越复杂,我确实需要为设备创建单独的模块并为模块创建单独的孪生。我正在关注此 Microsoft 教程:

https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-c-c-module-twin-getstarted

一个模块创建如下:

IOTHUB_REGISTRYMANAGER_RESULT IoTHubRegistryManager_CreateModule(
  IOTHUB_REGISTRYMANAGER_HANDLE  registryManagerHandle,const                          moduleCreate,IOTHUB_MODULE                  module
);

问题是,我如何获得 IOTHUB_REGISTRYMANAGER_HANDLE 参数?

为了得到这个,我需要一个 IOTHUB_SERVICE_CLIENT_AUTH_HANDLE,然后它似乎只能使用连接字符串来创建。

我不使用连接字符串,因为我的设备最初使用证书在 Azure IoT 门户上进行自我配置。我创建我的设备处理程序如下:

_device_handle = IoTHubDeviceClient_CreateFromDeviceAuth(user_ctx.iothub_uri,user_ctx.device_id,iothub_transport);

我有点迷失在这里。在此先感谢您的帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)