基于 ServiceBus 触发 Azure Function 并回写不起作用 (Python)

Triggering Azure Function based on ServiceBus and writing back not working (Python)

我有一个 Python Azure 函数,它根据主题消息触发,独立运行良好。但是,如果我随后尝试也将消息写入不同的 ServiceBus 队列,则它不起作用(因为在 Azure Function 中,如果新消息发布到主题,甚至不会触发)。当我包含 msg_out: func.Out[str] 组件时,感觉不满足触发条件。任何帮助将不胜感激!

__init.py

import logging
import azure.functions as func

def main(msg: func.ServiceBusMessage, msg_out: func.Out[str]):
    # Log the Service Bus Message as plaintext

    # logging.info("Python ServiceBus topic trigger processed message.")
    logging.info("Changes are coming through!")
   
    msg_out.set("Send an email")

function.json

{
  "scriptFile": "__init__.py",
  "entryPoint": "main",
  "bindings": [
    {
      "name": "msg",
      "type": "serviceBusTrigger",
      "direction": "in",
      "topicName": "publish-email",
      "subscriptionName": "validation-sub",
      "connection": "Test_SERVICEBUS"
    },
    {
      "type": "serviceBus",
      "direction": "out",
      "connection": "Test_SERVICEBUS",
      "name": "msg_out",
      "queueName": "email-test"
    }
  ]
}

host.json

{
  "version": "2.0",
  "logging": {
    "applicationInsights": {
      "samplingSettings": {
        "isEnabled": true,
        "excludedTypes": "Request"
      }
    }
  },
  "extensionBundle": {
    "id": "Microsoft.Azure.Functions.ExtensionBundle",
    "version": "[2.*, 3.0.0)"
  },
  "extensions": {
    "serviceBus": {
        "prefetchCount": 100,
        "messageHandlerOptions": {
            "autoComplete": true,
            "maxConcurrentCalls": 32,
            "maxAutoRenewDuration": "00:05:00"
        },
        "sessionHandlerOptions": {
            "autoComplete": false,
            "messageWaitTimeout": "00:00:30",
            "maxAutoRenewDuration": "00:55:00",
            "maxConcurrentSessions": 16
        }
    }
}
}

我可以重现你的问题,似乎是由以下错误引起的:

Property sessionHandlerOptions is not allowed.

删除sessionHandlerOptions可以正常触发