Dialogflow 从 webhook 发送自定义负载 json

Dialogflow send custom payload json from webhook

在 Dialogflow 控制台中,我可以像这样设置自定义负载

如何从 webhook 自定义集成发送完全相同的响应。

我尝试从 Flask 发送它作为 JSON 但它没有用。

当您使用 webhook 时,您必须发回完整的 WebhookResponse。不幸的是,当他们将文档从 dialogflow.com 迁移到 cloud.google.com/dialogflow 时,webhook 协议的文档似乎丢失了。但是,它在 Dialogflow Discovery document 中仍然可用。如果你在那里寻找 GoogleCloudDialogflowV2WebhookResponse 你会发现你必须发回这样的东西:

{
    "payload": {
        "facebook": {
            "attachment": {
                # ... etc.
            }
        },
        "slack": {}  # ... etc.
    }
}

Dialogflow API 版本 v2beta1 的格式相同。

{
    "fulfillmentText": "Your text response",
    "fulfillmentMessages": [
        {
            // this item is optional
            "text": {
                "text": [
                    "Your text response"
                ]
            }
        },
        {
            "payload": {
                // Your custom fields payload
            }
        }
    ]
}