我正在使用 Visual Studio Code 和 python。我下载了 Visual Studio Code 的 Azure Functions 扩展并创建了一个本地项目。我编辑了init .py 文件以处理示例遥测消息并提取人数,并添加了代码以发布数字孪生的遥测消息(来自 Python 中的 Azure Digital Twins API 的 SDK)。但是,在我部署该函数并尝试将其连接到 IoT 中心后,Azure 无法在函数应用中找到该函数(请参阅快照)。
这是我的代码__init__.py
:
import logging
import azure.functions as func
from azure.identity import DefaultAzureCredential
from azure.digitaltwins.core import DigitalTwinsClient
def processHubToDTEvents(telemetry_payload):
url = "https://ADT-instance-xut.api.wcus.digitaltwins.azure.net"
credential = DefaultAzureCredential()
service_client = DigitalTwinsClient(url, credential)
digita_twin_id = "spaceTwin-1"
service_client.publish_telemetry(
digita_twin_id,
telemetry_payload
)
def main(req: func.HttpRequest) -> func.HttpResponse:
logging.info('Python HTTP trigger function processed a request.')
req_body = req.get_json()
detected = req_body.get("body")
count = 0
for obj in detected:
if obj.get('label') == "person":
count += 1
telemetry_payload = '{"Occupancy": ' + str(count) + '}'
processHubToDTEvents(telemetry_payload)
return func.HttpResponse(telemetry_payload)
如果有人能解释我如何设置 Azure Function 应用程序,我将不胜感激。提前致谢