Интегрируйте Dialogflow с Actions on Google с намерениями, используя Fulfillment

Когда я пытаюсь взаимодействовать с Actions on Google, он не реагирует, когда у намерения активно «Выполнение».

Я получаю эту ошибку в журналах Google Cloud Platform:

MalformedResponse: Failed to parse Dialogflow response into AppResponse because of empty speech response

Мой веб-перехватчик отвечает вводом последующего события. Вот ответ моего API:

{
  "followupEventInput": {
    "name": "campo-harmonico-found",
    "languageCode": "pt-BR",
    "parameters": {
      "campo-harmonico": "campo harmônico de dó maior ou campo harmônico de ré maior"
    }
  }
}

Намерение, которое должно вызывать мой веб-перехватчик:

Намерение, которое должно вызвать веб-перехватчик

Намерение, которое должно вызываться после ответа веб-перехватчика:

введите здесь описание изображения

Что случилось?


person Matheus    schedule 05.05.2019    source источник
comment
Можете ли вы обновить свой вопрос, включив снимок экрана с намерением или намерениями, которые, по вашему мнению, должны быть вызваны вашим ответом, любым кодом, который вы используете, и т. Д.? См. Привет, Google, мне нужно Помогите с моими действиями   -  person Prisoner    schedule 05.05.2019
comment
@Prisoner, да, конечно, обновил.   -  person Matheus    schedule 05.05.2019
comment
Вы разрешили использовать ответ по умолчанию для Google Assistant на вкладке Google Assistant? Если нет, включите его и проверьте еще раз.   -  person Satish Pandey    schedule 16.08.2019


Ответы (1)


Я не совсем уверен, в чем проблема, но меня бросают в глаза две вещи.

  1. В вашем campo-harmonico-found намерении есть обучающие фразы и набор событий. У вас должно быть только одно или другое. Я ожидал, что событие будет иметь приоритет, но это может сбивать с толку Dialogflow.

  2. Непонятно, нужно ли вообще использовать followupEventInput. Если ваша цель - просто ответить этим сообщением - вы можете просто ответить сообщением от acorde Intent Handler. В большинстве случаев нам не нужно использовать Followup Events, мы должны просто вернуть ответ, который мы хотим, от самого обработчика Intent.

person Prisoner    schedule 05.05.2019
comment
Спасибо вам большое за ваше внимание. Я использовал обучающую фразу, потому что без нее Dialogflow показывает следующую ошибку при интеграции с Google Assistant: Запрос содержит недопустимый аргумент. Отсутствует шаблон запроса для настраиваемого намерения "найдена гармоника поля". Я хочу использовать followupEventInput, чтобы иметь возможность определять ответы в Dialogflow, таким образом, например, копирайтер определит множество разных ответов. - person Matheus; 05.05.2019
comment
@Prisoner Помогите мне решить проблему, с которой я столкнулся. Это ссылка: stackoverflow.com/questions/67548238/ - person Anil Sarode; 17.05.2021