发布数字孪生的遥测消息

问题描述

我是 Azure 的新手。我正在使用 Visual Studio 代码和 Python。我已经为 azure 函数设置了一个事件网格触发器,但我不知道如何从物联网设备访问遥测消息。

我从代码片段中得到以下日志信息:

Log Info

代码片段:

import json
import logging

import azure.functions as func


def main(event: func.EventGridEvent):
    result = json.dumps({
        'id': event.id,'data': event.get_json(),'topic': event.topic,'subject': event.subject,'event_type': event.event_type,})

    logging.info('Python EventGrid trigger processed an event: %s',result)

我想从物联网设备访问遥测消息:

Telemetry Message from IoT Explorer

Telemetry Message from VSCode using IoT Tools Extension

如何在 Azure 事件网格触发器中访问来自物联网设备的遥测消息?我认为它会在 event.get_json() 中的“body”下。但它是一个长字符串。如果有人对此有所了解,我将不胜感激。

解决方法

事件网格绝不是为了处理实际的消息内容,而不是处理已发生的某些事件。当您使用事件网格处理 IOT 中心事件时,有一些预定义的 event types。如果要读取实际消息,则需要编写自己的代码以使用 IOT SDK 来使用消息。请参阅this

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...