c# - 使用 IoT Hub 文件上传通知作为 Webjob 触发事件
问题描述
我正在开发 IoT 项目,我们使用 Azure IoT 中心进行设备通信。我们需要将文件从 IoT 设备上传到云端。因此,我开始分析 IoT Hub 的文件上传功能(IoT hub 文件上传功能)。我们配置了 blob 存储帐户容器并在 IoT 中心启用了文件上传通知。据我了解,每当我们将文件上传到 blob 存储时,通知都会到达“ messages/servicebound/fileNotifications ”。
我的问题是,
使用通知的有效方法是什么?
1.)我是否需要像这样(物联网中心文件上传功能)在 Webjob 中不断轮询端点(“ messages/servicebound/fileNotifications ” )?
2.) 或者我应该创建 Blob 触发器 Webjob 以在 Blob 存储中发生更改时触发?
3.) 有没有什么有效的方法来设置这个通知?
注意:我们使用的是 webjob 而不是 Azure 函数,因为我们已经在运行 Azure Web 应用程序实例。为了降低成本,我们使用 Webjobs 而不是 Azure 函数。
请帮助我前进。
提前致谢!
解决方案
请注意,当上传过程成功完成时,Azure IoT 中心将仅发送 ACK 通知消息。这与 C2D 消息传递不同,其中通知消息也可以是 NACK。
另请注意,当设备通知 Azure IoT Hub 上传过程已成功完成(不关心是否已上传真正的 blob,但文件已存在于容器中)时,会向其发送通知 ACK 消息.
基于 Azure IoT Hub 中上传文件通知功能的内置行为,Azure 事件网格是上传 blob 文件的事件驱动通知的不错选择。在这个选项中,文件通知设置可以关闭。
推荐阅读
- sql - SQL 获取本年度直到前一周星期五的数据
- docker - 启动失败,ddev-router 无法准备好,复制上游
- python - 来自同一模型的 Django 两个 ForeignKey
- python - 在 QStackedWidget 对象内定位内部小部件
- sqlite - 为矩阵创建sql表并将csv文件插入表中
- github - 如何在 Github 上更新拉取请求
- javascript - Sequelize:使用函数添加默认范围
- security - 如何允许具有内容安全策略 (CSP) 的 iframe
- javascript - 如何使用打字稿通过其名称作为变量引用枚举
- r - 使用 purr 和 RoogleVision 批量调用 Google Vision 的整洁方法?