【发布时间】:2018-02-14 11:28:48
【问题描述】:
我正在尝试创建一个身份转换网关,如 here 中所述。
我还阅读了很多关于他们的 IoT 解决方案的 Microsoft 文档。
我有:
- 叶设备 (A) 通过自定义协议连接到我的网关,而不直接连接到集线器。
- 网关设备 (B) 作为 IoT Edge 设备连接到 A 和 物联网中心。
- 我的 IoT 中心。
据我所知:
- 我的 IoT Edge 必须以这种方式在 IoT 中心注册每个设备 一个设备将出现在我的集线器上,我们将能够发送 直接通过其 ID 发送消息。
- 我可以通过路由在网关上发送消息并收听它们 /devices/{deviceId}/messages
例如,假设我有:
- ID 为“Edge1”的 IoTEdge 设备
- ID 为“Edge2”的 IoTEdge 设备
- ID 为“DeviceA”的设备连接到“Edge1”
- ID 为“DeviceB”的设备连接到“Edge2”
由于集线器和叶设备之间没有连接,我不明白的是,当我使用“/devices/DeviceA/messages”向“DeviceA”发送消息时,如何,集线器将知道哪个网关地址以及如何从我的网关监听它。简而言之,进行(非)多路复用过程
- 有没有一种方法可以使用我看不到的 IoT 中心自动处理它?连接字符串中的 GatewayHostName 可以解决问题吗?
- 我必须手动处理它,而是将我的所有消息发送到我的网关 ID(即设备/Edge1/消息)并在我的消息正文中发送最终的目标设备 ID 吗?如果是,我不明白在 Hub 上注册每个设备的好处
- 我必须在网关内监听每个连接的设备路由(即 /devices/DeviceA/messages for Edge1) ?
感谢您的帮助。
【问题讨论】:
标签: iot azure-iot-hub azure-iot-edge