Есть ли у кого-нибудь еще способ взаимодействия с бот-сервером FB без использования реальных счетов FB? Я хочу сделать автоматическое тестирование и, очевидно, не использовать реальные учетные записи для этого. Мне не удалось выяснить, как разрешить доступ к странице для «проверки пользователей» или создать тестовую страницу и подписаться на тестовое приложение. Любые идеи о том, как это сделать?Как протестировать бот-робот FB с несколькими пользователями
ответ
На панели инструментов разработчиков Facebook выберите приложение и затем «Роли». Из ролей вы можете добавить других пользователей Facebook в качестве тестовых пользователей. Мне было проще использовать идентификатор пользователя facebook. Добавление по электронной почте не всегда срабатывало для меня.
Мне неизвестно, как получить доступ к боту Facebook без учетной записи Facebook. Я создал несколько поддельных учетных записей, и мои друзья проверили бота. После тестирования я удалил поддельные учетные записи.
Для получения дополнительной информации о настройке бота см мою статью Facebook Bots for Fun and Profit
Пример личинка DMS Software Bot
Исходный код Github fb-robot
Один простой способ достижения автоматизированного тестирования мессенджеров ботов по крайней мере есть чтобы попытаться имитировать запрос от FB. Вы можете просто зарегистрировать запрос, который вы получаете к своему боту, чтобы найти подпись запроса, который отправляет FB. Тогда вы можете просто притворяться FB, отправив http-запросы с той же подписью. Вам также придется добавить код, чтобы отвечать на эти HTTP-запросы своим ответом, а не просто отправлять сообщение в API отправки FB.
Таким образом, в узле было бы что-то вроде
sendMessage(<your reply>);
res.send(<your reply>);
Теперь у вас есть автоматизированный способ отправки и получения сообщений, которые вы можете использовать для автоматизированного тестирования.
Тем не менее, я думаю, что большая проблема возникает с достаточным количеством тестовых примеров. Для генерации новых случаев вам необходимо использовать комбинацию кластеризации над доступными данными и классификацией.
Я работаю над инструментом, чтобы сделать это легко. Поэтому, если вы заинтересованы, вы можете подписаться на досрочный доступ. http://ozz.ai
Я использую веб-приложение wee, которое я сделал, чтобы выступать в качестве локальной версии сервера apache facebook и запускать пользовательские действия.
https://github.com/Fraser-Greenlee/bot_tester
На нем вы можете написать скрипт для определения новых пользователей и их действий.
Тестирование fb-бота с не-fb-пользователем в настоящее время не поддерживается. Ниже приведены причины:
- фб мессенджер требует от пользователя быть авторизованы
- фб создает страницу области видимости идентификаторов (PSID) для каждого пользователя, взаимодействующего с ботом, и, следовательно, войдите на фб требуется
Приходя к вашему вопросу о тестировании:
- вы можете добавлять пользователей Fb, как тестер на вашу страницу и приложение.Разъясняется here. Для вашего приложения https://developers.facebook.com/apps/[app-id]/roles/
- После добавления они будут иметь возможность отправить сообщение бота (страницы) от мессенджера
На другой ноте, если вы используете 3-го приложения сторонних построить свой бот (например: апи. ai, wit.ai) у них уже есть эмуляторы в приложении, что облегчает тестирование.
Вы должны улучшить тему этого вопроса для автоматизации ссылок, поскольку тестирование бота с несколькими пользователями довольно просто, но автоматическое тестирование не так просто. – user2322082