Я использую веб-перехватчик api.ai для реализации Action on Google. Я следую формату запроса и ответа, описанному здесь
Ответ, который я отправляю обратно от веб-перехватчика:
{
"speech": "Ok I am doing the stuff",
"displayText": "Ok I am doing the stuff",
"data": {
"google": {
"expect_user_response": false,
"is_ssml": false,
"permissions_request": {
"opt_context": "",
"permissions": []
}
}
},
"contextOut": []
}
Когда я тестирую это в веб-симуляторе для дома Google, он говорит: «Ваш агент сейчас не отвечает. Повторите попытку позже» со следующим ответом JSON.
{
"response": "Car Bot isn’t responding right now. Try again soon.\n",
"audioResponse": "//NExAASW..."content_copy,
"debugInfo": {
"sharedDebugInfo": [
{
"name": "ExecutionResponse",
"debugInfo": "Failed to..."
}
]
}
}
Информация об отладке в ответе
"Не удалось проанализировать ответ SDKResponse от http_response: 'HTTP / 1.1 200 OK \ r \ nContent-Type: application / json; charset = UTF-8 \ r \ nContent-Length: 218 \ r \ nConnection: keep-alive \ r \ nDate : Вс, 8 января 2017 г., 21:47:00 GMT \ r \ nСервер: nginx / 1.11.2 \ r \ nAccess-Control-Allow-Credentials: true \ r \ nКод ошибки-взаимодействия с помощником: 1 \ r \ nПомощник -Взаимодействие-Error-Message: Пустой ответ речи \ г \ nCache-контроль: нет кэша = \ "Set-Cookie \" \ г \ nПравильно-Cookie: AWSELB = 9D5B4D210CCFFAF1BE1E0CD7C7E6FCBD7B46140CAA45DBF2953C1CA6A2C5B5AD15740DAC3D9FC21AE7E6356E101785BA33F8274D819A39085F4BDBBE52D3F44CD1BB461230; PATH = / \ г \ пХ-Cache: Miss из cloudfront \ r \ nЧерез 1.1 51c76241371dfc20d25094a51b4759eb.cloudfront.net (CloudFront) \ r \ nX-Amz-Cf-Id: bP2EaYL-00IkMABSCWhwbaDr5GU7sIgC02OB-31LGojecex message: \ nQayQecex = "\" "Пустой речевой ответ \", \ "apiResponse \": {\ "id \": \ "ac3551e9-1f71-4f38-8ef7-efa8acff78aa \", \ "timestamp \": \ "2017-01-08T21: 47: 00.191Z \ ", \" результат \ ": {}, \" статус \ ": {\" код \ ": 200, \" errorType \ ": \" успех \ "}, \" sessionId \ ": \" 1483912013331 \ "}} '"
Я не понимаю, что здесь не так.
ОБНОВЛЕНИЕ:
Я преобразовал свое речевое сообщение в символы ASCII, но теперь Home отвечает следующим сообщением.
I'll just need to get your from Google. Is that ok?
Вместо того, что я отправляю в ответе, прикрепленном к метке речи. Также JSON, показанный в симуляторе, - это не то, что я возвращаю из веб-перехватчика.