2016-12-11 5 views
3

Я развернул действия в Google Chrome (Actions SDK), и я взаимодействую с ним с помощью симулятора. Однако я получаю сообщение об ошибке: «Действие: имя действия не отвечает прямо сейчас. Повторите попытку в ближайшее время». Как устранить эту проблему?Действие не отвечает прямо сейчас Ошибка

Это шаги, которые я предпринял для получения этой ошибки.

Развертывание webhook. Я проверил, что он общедоступен, использует HTTPS и способен обрабатывать example request. Он также устанавливает заголовок ответа Google-Assistant-API-Version.

Точка action.json в общедоступном webhook, а затем просмотреть действия:

gactions --verbose preview --action_package=action.json -invocation_name="action name" 

Start имитатора:

gactions --verbose simulate 

симулировать взаимодействие:

Finished checking for updates -- no updates available 
Reading credentials from: creds.data 
User TTS (CTRL-C to stop): 
talk to action name 
Sending POST request to: https://assistant.googleapis.com/v1/assistant:converse 
Request body: 
{ 
    "query": "talk to action name" 
} 

Response body: 
{ 
    "response": "action name isn’t responding right now. Try again soon.\n", 
    "audioResponse": "...", 
    "debugInfo": {} 
} 

Хотя сообщение указывает, что действие не отвечает, я вижу из своих журналов веб-хостинга, что он s успешно отвечает с кодом состояния HTTP 200 и производит ответ JSON, который очень похож на example responses.

Что можно сделать для отладки этой проблемы?

На стороне примечания, похоже, фактический запрос, который я получаю, не совсем соответствует документации. Вот пример фактического запроса:

{"user":{"user_id":"..."},"conversation":{"conversation_id":"...","type":1},"inputs":[{"intent":"assistant.intent.action.MAIN","raw_inputs":[{"input_type":2,"query":"talk to action name"}],"arguments":[]}]} 

Обратите внимание, что conversation.type представляет собой целое число, а не строка. Кроме того, нет conversation_token и, следовательно, conversation_token в ответе, который я генерирую, составляет null.

ответ

1

Вы можете получить дополнительную информацию об отладке с помощью Web Simulator. Выполните те же шаги выше, но после предварительного просмотра действия с помощью команды gactions перейдите к Web Simulator и введите тот же текст, который вы ввели в симулятор командной строки. Это заполнит поле debugInfo в ответе JSON.

Смежные вопросы