动态添加建议芯片在Api.ai上谷歌动作

时间:2017-06-07 09:46:15

标签: artificial-intelligence bots dialogflow actions-on-google google-assistant-sdk

我想在Google智能助理机器人中为用户添加建议。我正在使用API​​.ai进行bot开发和使用履行,我正在与我的后端进行数据通信。
我无法使用建议芯片向我的机器人发送建议 我在这里回答Webhook response with "suggestion chips" 以及https://developers.google.com/actions/assistant/responses#json处的文件。 但是,我只能在我的机器人和模拟器上看到简单的文本响应。

我还在https://discuss.api.ai/t/google-assistant-rich-message-responses/5134/19查了一下。但没有找到任何方法切换到V1或V2。样本格式也不起作用!

这是我的2个JSON:
在API.ai

"fulfillment": {
  "speech": "want to proceed further?",
  "messages": [
    {
      "type": 0,
      "speech": "want to proceed further?"
    }
  ],
  "data": {
    "google": {
      "conversationToken": "[\"AS-PER-JSON-FROM-SIMULATOR\"]",
      "expectedInputs": [
        {
          "inputPrompt": {
            "richInitialPrompt": {
              "items": [
                {
                  "simpleResponse": {
                    "textToSpeech": "want to proceed further?",
                    "displayText": "want to proceed further?"
                  }
                }
              ],
              "suggestions": [
                {
                  "title": "Yes"
                },
                {
                  "title": "No"
                }
              ]
            }
          }
        }
      ]
    }
  }
},


在Google上采取行动

"expectUserResponse": true,
    "expectedInputs": [
        {
            "inputPrompt": {
                "richInitialPrompt": {
                    "items": [
                        {
                            "simpleResponse": {
                                "textToSpeech": "want to proceed?"
                            }
                        }
                    ]
                },
                "noMatchPrompts": [],
                "noInputPrompts": []
            },
            "possibleIntents": [
                {
                    "intent": "assistant.intent.action.TEXT"
                }
            ],
            "speechBiasingHints": [
                "$subject",
                "$answer"
            ]
        }
    ]


python服务器

return = '{"speech":"want to proceed?", "data": {"google":{"expectedInputs":[{"inputPrompt":{"richInitialPrompt":{"items":[{"simpleResponse":{"textToSpeech":"want to proceed?","displayText":"want to proceed?"}}],"suggestions":[{"title":"Yes"},{"title":"No"}]}}}]}}}'

3 个答案:

答案 0 :(得分:0)

您的JSON错误,请删除数据对象前的引号:

"data" : { ... }

而不是

"data" : "{ ... }"

基本上,你发送一个包含该对象的字符串而不是一个JSON对象。

答案 1 :(得分:0)

使用此处所述的格式解决https://developers.google.com/actions/apiai/webhook

答案 2 :(得分:0)

'expectUserResponse'添加到data - > google

'expectUserResponse': true,
'isSsml': false,