Инициировать действие пользователя от бота Facebook Messenger

У меня есть работающий бот Facebook Messenger.

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

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

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


person Frederic Fortier    schedule 17.02.2017    source источник


Ответы (3)


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

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

Эти шаги ниже работают сегодня

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

    "buttons":[ { "type":"web_url", "url":"https://url_to_your_webpage", "title ":"Просмотр элемента", "webview_height_ratio": "compact" } ]

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

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

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

person akinmail    schedule 29.03.2017
comment
Да, это то, что у меня есть в качестве стоп-гэпа, но у него есть существенный недостаток. Поскольку Messenger имеет собственный пользовательский интерфейс захвата, это решение приводит к непоследовательному взаимодействию с пользователем. Я приму ваш ответ, потому что на момент написания не похоже, что есть лучший способ. - person Frederic Fortier; 29.03.2017

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

person sotirelisc    schedule 24.03.2017

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

person Kunal Parekh    schedule 19.06.2017