Как сделать бота в ВК для сообщества

Как создать бот ВК на php (инструкция)

Как создать бот ВКонтакте на php (инструкция)

Продолжаем цикл статей посвященный написанию чат-ботов для социальных сетей на php. Прошлый раз мы создавали бота для Телеграм, а в этот раз я расскажу как сделать аналогичного бота для ВКонтакте. Забегая вперед скажу, что сегодня мы не будем использовать ВКшный PHP SDK и наш бот будет состоять лишь из одного файла (про SDK поговорим в другой раз).

Также, как и в случае с Телеграмм ботом нам потребуются минимальные навыки программирования на php, хостинг и ssl сертификат. Готовы? Приступим!

Что будет уметь наш бот?

Возможности бота ограничены лишь фантазией программиста (благо api вк многое позволяет), поэтому для примера наш бот будет уметь лишь самое простое, а именно:

  1. Отправлять уведомления при вступлении в сообщество;
  2. Отвечать в случае если пользователь отправил ЛС в чат группы;
  3. Отправлять уведомление в момент когда пользователь покидает группу.

Начинаем создавать бота

Прежде чем начнем писать код, создадим ключи доступа для нашего бота. Для этого перейдем в Управление сообществом, выберем справа “Работа с API” и нажмем на “Создать ключ”.

БОТ В ВК (ВКонтакте) Senler за 15 минут

апи группы вконтакте

Во всплывающем окне отметим галочками права доступа. В нашем случае достаточно лишь поставить галочку напротив пункта “Разрешить приложению доступ к сообщениям сообщества“, но имейте ввиду, что для более крутых ботов стоит ставить галки напротив всех пунктов сразу. Подтвердим действие нажатием по кнопке “Создать”.

Далее нам предложат подтвердить действие через мобильное уведомления в приложении ВК или по СМС. Я выбрал второе. Получил код по СМС и ввел его.

код подтверждения вк

Далее ВКонтакте генерирует для нас длинный проверочный ключ (token). Запишем его куда-нибудь (например в блокнот). В дальнейшем он нам понадобится для написания кода.

Теперь перейдем во вкладку Callback API->Настройки сервера. Здесь нас интересуют сразу 3 вещи: Адрес, Строка, которую должен вернуть сервер и Секретный ключ.

Адрес пока пропустим (в целом вы можете сразу его заполнить если определились с тем, где будет лежать основной файл нашего php-бота, но поскольку сам файл еще не создан, то ВК будет ругаться, ибо сразу после ввода url соцсеть отправляет POST-запрос на проверку доступности бота по указанному адресу). Скопируем значение напротив “Строка, которую должен вернуть сервер” (confirmationToken). (в нашем случае это tt32e1. Придумает Секретный ключ (secretKey). Не забываем нажать “Сохранить”.

Callback API ВКонтакте

Как сделать чат-бот для сообщества ВКонтакте?| SENLER

Итак, на выходе у нас должны быть где-то записаны 3 вещи:

  1. confirmationToken
  2. token
  3. secretKey

Теперь можно приступить к написанию php кода.

Как создать бота в ВК (кодинг на php)

Начинаем писать файл нашего бота ВКонтакте. Назовем его vk_bot.php. Напомню, что код необходимо писать в кодировке UTF-8 (без BOOM).

Определимся с константами:

if (!isset($_REQUEST))
// Строка, которую должен вернуть сервер (См. Callback API->Настройки сервера)
$confirmationToken = ‘tt32e1’;
// Ключ доступа сообщества (длинная строчка которую получили нажав «создать ключ»)
$token = ‘тутбудетмногобуквицифр’;
// Секретный ключ. (Задаем в Callback API->Настройки сервера)
$secretKey = ‘testKeyMyBot’;

Теперь проверим поступившие данные:

// Получаем и декодируем уведомление
$data = json_decode(file_get_contents(‘php://input’));
// проверяем secretKey
if (strcmp($data->secret, $secretKey) !== 0 strcmp($data->type, ‘confirmation’) !== 0)

Еще по теме:  Что за лав бот в ВК

Используя switch проверим, что находится в поле “type” (какое событие сработало и в зависимости от этого сформируем ответ).

// Проверяем, что находится в поле «type»
switch ($data->type) // Запрос для подтверждения адреса сервера (посылает ВК)
case ‘confirmation’:
echo $confirmationToken; // отправляем строку для подтверждения адреса
break;
// Если это уведомление о новом сообщении.
case ‘message_new’:
// получаем id автора сообщения
$userId = $data->object->user_id;
// через users.get получаем данные об авторе
$userInfo = json_decode(file_get_contents(«https://api.vk.com/method/users.get?user_ids=));
// Вытаскиваем имя отправителя
$user_name = $userInfo->response[0]->first_name;
// Через messages.send используя токен сообщества отправляем ответ
$request_params = array(
‘message’ => «, Ваше сообщение получено!
В ближайшее время админ группы на него ответит.»,
‘user_id’ => $userId,
‘access_token’ => $token,
‘v’ => ‘5.0’
);
$get_params = http_build_query($request_params);
file_get_contents(‘https://api.vk.com/method/messages.send?’. $get_params);
echo(‘ok’); // Возвращаем «ok» серверу Callback API
break;
>

Небольшое пояснение:

Когда юзер отправляет сообщение в чат с группой срабатывает событие. Событие представляет собой JSON, имеющий следующую структуру:

В зависимости от того, что нам пришло в type, мы можем понять, какая структура будет у объекта object. Полный список возможных событий см. в официальной справке ВКонтакте.

Итак, на данный момент мы научили нашего бота 2-м вещам: корректно отвечать роботу ВК на проверочный запрос, а также автоматически отправлять пользователю уведомление в случае, если он отправит любой текст.

Теперь можно закачать наш с вами файл на сервер и заполнить в настройках адрес (если не сделали этого ранее).

Типы событий для вк бота

Кроме этого необходимо перейти во вкладку “Типы событий” и поставить галочку напротив “Входящие сообщения”.

Теперь можем проверить работу:

тестируем php бота в группе вк

Как видим – все пашет. По сути у нас уже получилось сделать бота в вк. Давайте его немного прокачаем.

Добавим в конструкцию case еще 2 условия. Первое – отправит уведомлений в случае если человек вступил в нашу группу:

// Сработало событие — человек вступил в группу
case ‘group_join’:
// получаем id автора сообщения
$userId = $data->object->user_id;
// через users.get получаем данные об авторе
$userInfo = json_decode(file_get_contents(«https://api.vk.com/method/users.get?user_ids=));
// Вытаскиваем имя отправителя
$user_name = $userInfo->response[0]->first_name;
// Через messages.send используя токен сообщества отправляем ответ
$request_params = array(
‘message’ => «Добро пожаловать в группу, !»,
‘user_id’ => $userId,
‘access_token’ => $token,
‘v’ => ‘5.0’
);
$get_params = http_build_query($request_params);
file_get_contents(‘https://api.vk.com/method/messages.send?’. $get_params);
echo(‘ok’); // Возвращаем «ok» серверу Callback API
break;

Второе – аналогичное уведомление, но только в момент, когда человек покинет сообщество:

// Сработало событие — человек покинул группу
case ‘group_leave’:
// получаем id автора сообщения
$userId = $data->object->user_id;
// через users.get получаем данные об авторе
$userInfo = json_decode(file_get_contents(«https://api.vk.com/method/users.get?user_ids=));
// Вытаскиваем имя отправителя
$user_name = $userInfo->response[0]->first_name;
// Через messages.send используя токен сообщества отправляем ответ
$request_params = array(
‘message’ => «, нам очень жаль, что вы покинули нашу группу!»,
‘user_id’ => $userId,
‘access_token’ => $token,
‘v’ => ‘5.0’
);
$get_params = http_build_query($request_params);
file_get_contents(‘https://api.vk.com/method/messages.send?’. $get_params);
echo(‘ok’); // Возвращаем «ok» серверу Callback API
break;

Не забудем добавить соответсвтующие галочки напротив нужных нам событий в настройках группы:

Вступление в сообщество

Чего нельзя делать ботам

Не лишним будет процитировать один из разделов справки ВК:

Любой пользователь с базовыми навыками программирования может создать чат-бота ВКонтакте. Ботов можно написать для разных целей: от поиска рецептов до обработки фотографий. Их возможности ограничены только Вашей фантазией и правилами, которые мы разработали для того, чтобы боты использовались только в благих целях.

Прежде чем продолжить работу с бот-платформой, убедитесь, что все руководители сообщества ознакомлены с этими правилами. За их нарушение сообщество может быть заблокировано.

Ботам запрещено:

требовать подписку на сообщество, отметки «Нравится» и репосты;
рассылать рекламу, в том числе ссылки на аккаунты сообщества в других сервисах;
нарушать Правила пользования сайтом ВКонтакте.

Теперь вы знаете как создавать своего бота в ВК. Исходники урока можно скачать тут. В следующий раз поговорим о работе с PHP SDK для вк-ботов. Если у вас остались вопросы – задавайте в комментах. И не забываем репостить и лайкать эту статью)

Еще по теме:  Кто из русских актеров есть Вконтакте

Источник: djdiplomat.ru

Как сделать чат-бота ВКонтакте за полчаса без знания кода

Leads

Окно чат-бота, которые часто можно увидеть в Сети

Чат-бот – программа, которая взаимодействует с пользователем на основе заданного сценария. Проще говоря, выдает заготовленные ответы на определенные действия или фразы. Такие боты делятся на несколько видов. Например, по способу общения чат-боты бывают:

  • Текстовые – отвечают на сообщения пользователя также сообщением или медиафайлом;
  • С выбором команд – общение происходит через выбор команд пользователем.

Делятся боты и по принципу работы. Самые простые чат-боты ничего не умеют, кроме как общаться по линейной схеме. Поэтому для них часты ответы «невпопад». В отличие от них, «продвинутые» боты умеют и отвечать на каверзные вопросы, и действовать не по стандартной схеме. Такой бот может заменить целый колл-центр и существенно сэкономить время.

В нашей статье мы рассмотрим, кому нужны чат-боты, и как можно создать бота для В Контакте и других соцсетей без знания кода.

Зачем нужен чат бот и кому подходит

Чат-боты нужны всем, кто связан с интернет-маркетингом – владельцы магазинов, специалисты отделов продаж, и, конечно, арбитражники.

Для арбитражника чат-бот полезен по нескольким причинам:

  1. Позволяет сэкономить время на живое взаимодействие – иногда просто физически невозможно вести живую переписку с многих аккаунтов или групп;
  2. Помогает не растерять потенциальных лидов – пользователю не надо ждать «живого» ответа, он может получить сразу всю нужную инфу или предоставить свои данные. А, как известно, на стадии «ожидания» отваливается часть клиентов.
  3. Оперативно оповещает (если такая опция прописана) о действиях пользователей – оплата, подписка, отписка, и т. д.

Также прямо через чат-бот можно привлекать лиды. Это может быть бот-генератор промокодов или бот для участия в розыгрыше. Варианты зависят от фантазии арбитражника.

Чат-бот – генератор промокодов

Казалось бы, для создания чат-бота нужны знания хотя бы основ программирования. Однако есть способы создать бота и без знания кода.

Как создать чат бота для ВК — способы

Для В Контакте существует множество сервисов, которые позволяют сделать чат-бота даже без знания кода. Рассмотрим их работу подробнее.

При помощи Chatgan

Для начала работы с приложением нужно авторизоваться ВК и добавить нужное сообщество. Затем предоставляем Chatgun все необходимые разрешения – доступ к фото и комментариям в группе, право на рассылку сообщений, и т. д. Если все сделано правильно, ярлычок приложения появится в меню группы В Контакте.

Такой ярлык появится в меню группы ВК

Запускаем Chatgun и выбираем нужный сценарий из готовых, или создаем собственный. Из заготовленных сценариев у приложения есть реакции на действия пользователей – новый пост, комментарий, добавление товара, подписку, отписку и т. д.

Список готовых сценариев Chatgun

Мы выберем «Создать новый сценарий». Затем:

Создаем первое сообщение для бота В Контакте

  • Выбираем условие срабатывания – если сообщение содержит ключевые слова или точно совпадает с ключами;
  • Прописываем ключи;
  • Набираем сообщение, которое чат-бот отправит пользователю.

При необходимости можно добавлять базовые переменные или создавать собственные.

Работа с переменными у Chatgun

А еще есть опция добавления клавиатуры к сообщению чат-бота, чтобы пользователь не набирал ответ вручную, а просто выбрал необходимое действие. Это делается через меню «Клавиатура/Добавить ряд кнопок». Тип кнопки и её оформление можно менять.

Настройки клавиатуры для пользователя

Кроме того, у Chatgun есть функции:

  • Тайминга перед отправкой следующего блока сообщений;
  • Перехода к другому сценарию при выбранной реакции пользователя;
  • Видимости для пользователя, что бот набирает текст;
  • Добавления пользователя в список подписчиков или удаления из него;
  • Создания массовых рассылок;
  • Подробной статистики по ответам и рассылкам.
Еще по теме:  Vk tracker что это такое

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

Через Robochat

Robochat работает только с ВК, и позволяет создавать чат-ботов для любых целей – для бизнеса, развлечений или консультаций.

Готовые шаблоны ботов Robochat для В Контакте

Как и в Chatgun, для начала работы нужно подключить свое сообщество. Предлагается ряд готовых шаблонов для разных целей – call-бот, автоворонка, игровой бот, анонимный чат, и т. д. Также можно выбрать пустой шаблон и редактировать его «под себя».

На скриншоте – приветственное сообщение.

Можно также добавлять кнопки меню, чтобы общение происходило через выбор команд.

Настройка клавиатуры бота у Робочат

Есть настройка тайминга бота для ВК – промежутки между ответами и время работы.

Настройка тайминга чат-бота

У сервиса имеется база знаний, где подробно расписан каждый шаг. Для сообществ до 50 тысяч подписчиков действует бесплатный тариф. Для остальных стоимость зависит от количества подписчиков.

Для создания чат-бота В Контакте можно использовать и другие конструкторы, где ВК заявлен в списке поддерживаемых площадок – Bot Kits, BotMother и др.

Способы создания чат-бота без знания кода

Создать чат-бота без знания кода для других площадок помогут конструкторы ботов. Рассмотрим подробнее функционал некоторых. Мы выбрали самые простые и удобные сервисы с русскоязычным интерфейсом.

Bot Kits

С помощью этого конструктора можно создавать чат-бота для Facebook, ВК, Телеграм, Одноклассников, Viber, своего сайта и даже для Алисы.

Панель управления Bot Kits

Создание происходит через блок-схемы. Процесс стандартный – задаётся сообщение пользователя и реакция бота. Но блок-схемы позволяют наглядно видеть всю структуру чат-бота.

Чтобы боту было проще, есть функция преобразования слов и дат в удобный формат для его понимания. Например, на скриншоте видно, что фразу «Привет, как дела?» бот прочитает как «Здравствуйте», и ответит приветственным сообщением.

Настройка приветственного сообщения чат-бота

Также у BotKits есть функция массовой рассылки по загруженной базе пользователей. И наоборот – собранные при помощи Bot Kits базы можно выгружать и сохранять себе.

Настройка рассылок через Bot Kits

У конструктора есть бесплатный тариф для одного бота, а также триал-период на 14 дней. Стоимость остальных зависит от количества чат-ботов. Например, на максимальном тарифе «Про» можно создавать до 30 ботов.

Botmother

Работает с Telegram, Viber, Facebook, ВКонтакте, WhatsApp и Одноклассниками. Этот сервис действительно напоминает конструктор – разработчику бота нужно выбрать нужные элементы и установить связи между ними.

Выбор элементов для чат-бота в Botmother

Есть также массовые рассылки, статистика по использованию ботов и другие полезные функции. Предусмотрена интеграция с PayOnline, Robokassa и другими платежными сервисами.

Актуальные тарифы Botmother

Первого бота можно создавать и пользоваться им бесплатно. Для продолжения работы нужно выбрать один из тарифных пакетов.

Manybot

Простая и функциональная площадка для создания чат-ботов для Телеграм. Использование бесплатно. Для начала работы нужно авторизоваться в Telegram и запустить бота Manybot. Каждый шаг сопровождается подсказками. Есть также подробные инструкции – база знаний Manybot.

Окно работы с Manybot в Телеграм

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

Пример меню чат-бота, созданного через Manybot

Есть функции автопостинга из RSS, Твиттера, YouTube. Manybot поддерживает 6 языков общения.

Заключение

Таким образом, для создания чат-ботов без знания кода есть целый ряд онлайн-конструкторов. Некоторые из них специализированные, как Robochat для В Контакте или Manybot для Телеграм. Другие поддерживают все популярные соцсети и мессенджеры. Выбор, какой из них использовать, зависит от удобства конструктора для конкретного пользователя. А у некоторых сервисов, как, например, BotMother, можно заказать готового бота «под ключ».

Источник: cpamonstro.com

Рейтинг
( Пока оценок нет )
Загрузка ...