Я создаю чат-бота Google dialogflow для данных COVID-19. Я создал намерение, которое вызовет службу веб-перехватчика. Эта услуга представляет собой приложение-флягу на Python, которое собирает и обрабатывает данные. Мой вариант использования - пользователь будет запрашивать подробную информацию о местности. Я создаю изображение (файл .png) в своем приложении Flask. Но как я могу вернуть его обратно в диалог? До сих пор он принимает изображения с общедоступным URL-адресом. Но в моем случае у меня нет общедоступного URL. каждое изображение является динамичным по своей природе на основе пользовательского ввода. Может ли кто-нибудь помочь, как я могу этого добиться? Любая помощь приветствуется. Сообщите мне любые подробности.
Как отправить файл .png из моего приложения python в google dialogflow webhook
Ответы (1)
вам понадобится ваш бэкэнд (другое приложение или другая конечная точка того же веб-перехватчика), чтобы предоставить изображение, как если бы оно было стандартной загрузкой.
Например, в DialogFlow вы должны настроить пользовательские полезные данные для отображения изображения
{
"metadata": {
"templateId": "11",
"contentType": "300",
"payload": [
{
"name": "Download",
"action": {
"type": "link",
"url": "#avatar.avatarUrl",
"openLinkInNewTab": "yes"
}
}
]
},
"platform": "kommunicate"
}
URL #avatar.avatarUrl
будет URL для получения данного изображения (например, http://myserver/get/image0001) : это конечная точка, которая получает желаемое изображение (на основе вашей логики и реализации) и возвращает поток с содержимым изображения, а также устанавливает content-type=image/png
(или другой подходящий тип).
Приведенный выше пример может зависеть от того, какой канал вы используете (браузер? Чат-приложение?) И язык программирования, но подход должен быть допустимым в любом случае.