我有一个能量监视器,只能通过http post输出xml数据。我希望将这些数据发送到Azure-iot集线器进行处理和存储。将xml数据从其中一些设备发送到集线器的最佳方法是什么?我研究过各种网关,但还没有找到一种简单,可扩展且具有成本效益的方式来做到这一点。我乐于接受某种中介,但是它们都为简单地将数据发送到集线器引入了一层复杂性。
答案 0 :(得分:2)
您的能源监视器可以使用HTTPs protocol将遥测数据直接发布到Azure IoT中心。
以下是示例:
和身体:
和设备资源管理器输出:
和blob存储空间:
{
"EnqueuedTimeUtc": "2019-09-25T15:58:25.0900000Z",
"Properties": {
"abcd": "abcd1234"
},
"SystemProperties": {
"connectionDeviceId": "device2",
"connectionAuthMethod": "{\"scope\":\"device\",\"type\":\"sas\",\"issuer\":\"iothub\",\"acceptingIpFilterRule\":null}",
"connectionDeviceGenerationId": "636842109368955167",
"contentType": "application/xml",
"contentEncoding": "",
"enqueuedTime": "2019-09-25T15:58:25.0900000Z"
},
"Body": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4gDQo8UGFyYUluZm8gPg0KICA8TmFtZT5Wb2x0YWdlPC9OYW1lPg0KICA8Q29kZT5VczwvQ29kZT4NCiAgPFVuaXQ+VjwvVW5pdCA+DQogIDxGcmVxPjQwPC9GcmVxID4NCiAgPFN0YXJ0PjA8L1N0YXJ0Pg0KICA8RW5kPjI4OS41PC9FbmQ+DQo8L1BhcmFJbmZvPg0K"
}
请注意,主体是Base64编码的xml文本: