Похоже, у вас есть несколько вопросов. Давайте попробуем разбить их.
Почему мой webhook не вызывается?
Вы не показываете скриншоты своего намерения или вашей конфигурации, но Наиболее распространенная причина, по которой webhook не вызывается, заключается в том, что, хотя вы установили URL-адрес выполнения, вы специально не включили его для Intent.
Убедитесь, что в разделе «Выполнение» в нижней части вашего намерения вы включили «Включить вызов веб-крюка для этого намерения».
Это хорошо для одного Намерения. Как установить разные веб-крюки для каждого намерения?
Вы не делаете.
Каждый агент Dialogflow может вызвать только один веб-крючок. Информация, отправляемая на этот веб-крючок, включает имя намерения, которое его запускает, и ожидается, что веб-крюк предпримет соответствующие действия на основе этого имени. Точную функцию, которую вызывает webhook, иногда называют Intent Handler.
Что, если мне нужно?
Тогда вам нужно написать слой, который обрабатывает диспетчеризацию выполнения из Dialogflow, проверяет запрос, извлекает имя намерения и другие параметры из отправленного JSON, при необходимости выполняет вызов к другим конечным точкам REST, возвращает результат и, возможно, форматирует результаты обратно в Dialogflow.
Могут ли события помочь с этим?
Я не понимаю, как.
Содержимое, которое вызывается событием, работает одинаково как те, которые запускаются по фразам пользователей. Все события в агенте по-прежнему вызывают один и тот же webhook, передавая одну и ту же информацию.
События действительно наиболее эффективны для точного представления именно этого - пользовательское действие , а не голосовой или печатный ввод из пользователь.