0

У меня есть рабочий ботман Facebook.Trigger User Action от Facebook Messenger Bot

Из приложения Messenger я хотел бы, чтобы мой бот вызывал действие «камеры» (чтобы щелкнуть новое изображение или видео) для пользователя.

Чтобы уточнить в гипотетическом контексте, я бы создал постоянное действие меню, которое имитирует поведение нажатия кнопки «камера» в текстовой области сообщения.

Я просмотрел операцию «Обращение к действию страницы» Graph Api, но не смог найти параметры, которые могли бы привести к желаемому поведению.

ответ

1

Вот решение проблемы.

В Facebook Messenger вы можете открыть веб-просмотр и загрузить веб-страницу. Но помните, что старый добрый HTML 5 дает нам простой способ попросить пользователя использовать свою камеру, когда они находятся на мобильных устройствах.

Эти шаги, указанные ниже, сегодня

  1. Вы можете использовать кнопку URL-адрес, чтобы открыть WebView как такие

    "кнопки"

    : [ { "типа": "web_url", " URL ":" https://url_to_your_webpage», "название": "Вид товара", "webview_height_ratio": "компактный" } ]

  2. В своей домашней странице, включить этот элемент HTML5, который позволяет пользователю принимать изображение с помощью камеры на мобильном

    <input type="file" accept="image/*" capture="camera" />

  3. Добавить изображение к серверам, закройте WebView, и сделать какой-либо обработки требуется. Например, теперь вы можете отправить изображение обратно пользователю из своего бота.

+0

Да, это то, что у меня есть как разрыв пробела, но у него есть главный недостаток. Поскольку у Messenger есть собственный пользовательский интерфейс захвата, это решение приводит к непоследовательному опыту пользователя. Я приму свой ответ, потому что не похоже, что лучше писать. –

0

Я уверен, что сейчас нет способа сделать то, что вы хотите. Надеюсь, в будущем команда Messenger добавит больше бонусов, подобных этим.

0

Вы можете просто послать сообщение пользователю, чтобы щелкнуть значок камеры, нажать на картинку и отправить ее боту. Затем вы можете получить это изображение как attachment -> read 'Message with image attachment' и ответить пользователю. Это будет скорее родной опыт. В webview пользователь может отказать в разрешении на камеру (если ее попросят). Надеюсь это поможет!

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