Я создаю чат-бота с Telegram и Google Dialogflow. Когда я интегрирую Dialogflow в Telegram через вкладку Dialogflow «Интеграции», Dialogflow регистрируется как служба Webbhook для перехвата всех полученных сообщений Telegram. К сожалению, я не могу работать с нетекстовыми сообщениями , такими как наклейки, изображения и сообщения о проверке платежей Telegram.
Я бы хотел, чтобы Dialogflow перенаправлял все полученные сообщения в мой пользовательский веб-крюк выполнения с намерением отступления,В моем веб-крюке я смог бы проанализировать полученное тело и соответствующим образом действовать в отношении неподдерживаемых сообщений телеграммы.
Я знаю, что в диалоге есть событие FACEBOOK_MEDIA. Это событие вызывается, когда изображение отправляется через программу обмена сообщениями Facebook в Dialogflow. Есть ли что-то вроде TELEGRAM_MEDIA или даже событие TELEGRAM_UNSUPPORTED?
Я действительно хотел бы иметь возможность воздействовать не только на текстовые сообщения в диалоге.
Нужно ли добавить еще один слой между Telegram и Dialogflow, чтобы иметь возможность работать со всеми сообщениями Telegram?
Что я проанализировал до сих пор:
Я пересылаю все журналы взаимодействия Google Dialogflow в стековый драйвер Google Cloud. Кажется, что нетекстовые сообщения полностью игнорируются Dialogflow. Я не вижу никакой записи в журнале, когда отправляю нетекстовое сообщение своему боту-телеграмме. С другой стороны, когда я отправляю текст, журнал и его полезная нагрузка JSON немедленно появляются в драйвере стека.
Я создал резервное намерение в Dialogflow и включил «Включить вызов webhook для этого намерения» в разделе «Выполнение». К сожалению, моя функция выполнения не срабатывает при любых нетекстовых событиях. Dialogflow блокирует его в первую очередь.