在消息中找不到字段:fullfillmentText,而它存在

时间:2017-12-15 13:33:19

标签: json actions-on-google dialogflow

我开始在一些小时间项目的第一个版本中使用API​​.AI和Dialogflow。 最近我想尝试深入了解Dialogflow的新V2,看看我如何继续使用它构建漂亮的Google智能助理应用程序。

在尝试制定响应时(基于此处的文档https://dialogflow.com/docs/reference/api-v2/rest/v2beta1/WebhookResponse),我无法实际呈现任何类型的响应。每次我这样做只会给我一个webhook错误。

我在我的演示项目中使用的目的是(仍然相当简单,因为我只是想回复一下):

Trending News intent editor on Dialogflow

My Webhook(基于Elixir)返回以下响应(实际生产响应):

HTTP response

检查"显示JSON"在Dialogflow屏幕的右侧进行测试后,我收到:

fullfillmentText error

我必须做错事,如果我现在发送的整个回复都包含在内容中吗?

更新: 删除" fullfillmentText"并保持" fullfillmentMessages"我似乎得到了同样的错误,但接着是fullfillmentMessages。看起来DialogFlow并不了解我发送给它的JSON参数。例如:

enter image description here

1 个答案:

答案 0 :(得分:3)

男人,这里有什么错字......最后通过编写" fulfillmentMessage"来管理它。

为每个人开始使用Protip并希望了解数据结构:

  1. 做一个简单的意图,就像测试一样
  2. 通过GUI添加一些谷歌或其他回复
  3. 保存意图
  4. 从"现在试用"触发意图功能在右侧。
  5. 单击SHOW JSON以检查响应的外观。
  6. 最终结果代码示例:

    {
      "fulfillmentMessages": [
        {
          "platform": "ACTIONS_ON_GOOGLE",
          "simpleResponses": {
            "simpleResponses": [
              {
                "displayText": "Sorry, something went wrong",
                "ssml": "<speak>Sorry, Something went wrong <break time=\"200ms\"/> Please try again later</speak>"
              }
            ]
          }
        }
      ]
    }