【问题标题】:Azure: How to connect to IOT-Central directly, via API or Webhook?Azure:如何通过 API 或 Webhook 直接连接到 IOT-Central?
【发布时间】:2019-09-25 06:53:39
【问题描述】:

我想知道是否有办法直接连接到 IOT-Centrals Rest-API,我想从那里显示的遥测数据创建一个 Web 应用程序。 据我所知,我相信我需要获取该 Json 字符串才能将数据移植到我的网络应用程序。 我愿意接受任何建议:)

非常感谢大家!

【问题讨论】:

  • 也许至少可以访问 IoT Central 后面的 IoT Hub?

标签: azure api azure-iot-hub azure-iot-sdk azure-iot-central


【解决方案1】:

Azure IoT Central (IoTC) 是构建在内部 Azure IoT 中心之上的 SaaS 应用程序。 IoTC 的目标是隐藏和抽象 IoT Hub 周围的所有基础设施,以便快速开发 IoT 解决方案。出于这个原因,IOTC 正在授予您一些设备连接等的访问权限。

我建议阅读文档Device connectivity for Azure IoT Central,您可以在其中找到如何根据 IoT Central 属性(例如 scopeIddeviceId 等)获取设备连接字符串的参考资料strong> 和 primaryKey

获得设备连接字符串后,您可以将设备连接到 Azure IoT Central 的内部 IoT 中心。

以下示例演示了将即插即用 IoT 设备的遥测数据发布到 IoT Central 预览应用程序(即插即用 IoT 功能)。请注意,POST 请求需要 Authorization 标头。这个 sas 令牌可以从设备连接字符串中获取。

IoT Central 会在仪表板上显示结果:

如你所见,上面的 POST 请求,“困难的部分”是获取内部 IoT Hub 的命名空间,在我的例子中是值 iotc-1e97f318-f85b-42fa-88f8-4f27f7d5a85d时间>。一旦我们有了这个值,设备连接字符串就是:

HostName=iotc-1e97f318-f85b-42fa-88f8-4f27f7d5a85d.azure-devices.net;DeviceId=azurekit-1;SharedAccessKey=**device-primary-key**

附言 如果您使用的是 C# 并且需要有关实现设备连接字符串和授权标头以连接到 Azure IoT Central 的帮助,我可以将其添加到此线程中。 另外,看看IoTC-Device-Bridge 是如何实现的。

【讨论】:

  • 嗨 Roman,问题不在于连接设备。我们需要知道,我们如何检索数据以在自定义 Web 应用程序上将其可视化。我们正在寻找 REST Api。
  • 没有记录的方法可以从 IoTC 提取遥测数据。但是,IoTC 支持 数据导出 功能,可以将遥测数据推送到 Blob 存储、服务总线或事件中心。我建议将它们推送到事件中心。在您的 Web 应用程序中使用 EventProcessorHost 可以很容易地实时使用它们,docs.microsoft.com/en-us/azure/event-hubs/…
  • 在您的业务需求只需要使用REST Api的情况下,可以将遥测数据导出到Service Bus队列中。要从队列中提取消息(一个接一个),可以使用 REST Api docs.microsoft.com/en-us/rest/api/servicebus/…,注意,没有用于从服务总线实体检索消息的 REST 批处理操作。
  • 谢谢,罗曼!我有一个关于如何连接到 iotc 后面的 iot hub 的问题。我真正需要的是在 Visual Studio Code 上显示 iot hub devices/edge。每次VS都需要注册一个iot hub或者连接字符串到iot hub,我无法从iotc获取这个连接字符串。
  • 您的问题是如何获取连接到 IoT Central 应用程序的设备的连接字符串,不是吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-01
  • 1970-01-01
  • 2018-01-10
  • 1970-01-01
  • 2023-01-27
相关资源
最近更新 更多