Как настроить бота в контакте. Как сделать бот вконтакте

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

Как сделать бота в вк для сообщений в группах.

Почему же боты во вконтакте обрели такую популярность? Все достаточно просто и сейчас мы приведем лишь часть примеров, которые помогут нам понять хайп и ажиотаж вокруг самописных чат ботов:

  • Свежо и ново. в вк давно уже ничем не удивить пользователя и паблики и группы стараются выделяться от остальных пабликов конкурентов, тем самым вовлечь пользователей и заинтересовать.
  • Автоматизация многих ручных процессов. Раньше админам пабликов , особенно крупных приходилось часами тратить время отвечая на вопросы пользователей, или нанимать модераторов в свои группы и частенько случались казусы.
  • Автоматически розыгрыш призов и раздачи кодов и аков . Теперь необходимо иметь только огромное количество кличей и призов бот сам раздаст все вашим подписчикам.

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

Как создать бота в вк отвечающего на сообщения.

Стоит отметить что бота можно сделать несколькими способами, но все они подойдут для вас и будут удобными:

  1. Сделать бота на свое пк. Плюсы быстрая настройка и подгонка под любые требования. Минусы, ваш компьютер должен быть онлайн или бот не будет работать.
  2. Написать скрипт и разместить его на сервере. Из плюсов стоит отметить быстроту ответов бота. К минусам стоит отнести сложность создания и настройки, аренду даже самого дешевого хостинга за который все равно придется платить.
  3. Воспользоваться онлайн сервисами по созданию своих ботов для Вконтакте как платными так и бесплатными. Именно таких ботов мы и научим вас делать.

Как создать своего бота в вк

И так чтобы создать своего бота для Вконтакте вам не нужно знать языки программирования, арендовать сервер под эти задачи и так далее.
Среди огромного множества мы подобрали для вас два отличных бесплатных сервиса по созданию ботов онлайн которые абсолютно бесплатные.

  • https://bot-vk.ru
  • https://robochat.io

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

Логинимяся под своим логином из вк , важно вы должны быть администратором вашей группы. Наш совет Хоть сайты и надежные, но толковых хакеров ничего не остановит поэтому мы рекомендуем добавлять бота с фейка .

Настраиваем и обучаем бота тому что он должен отвечать кому и как. Профит.
Как видите создать такого бота для Вконтакте может абсолютно каждый.

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

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

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

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

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

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

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

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

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


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

  1. confirmationToken
  2. token
  3. secretKey

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

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

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

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

if (!isset($_REQUEST)) {return;}
// Строка, которую должен вернуть сервер (См. 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) {return;}

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

// Проверяем, что находится в поле "type"
switch ($data->type) {
// Запрос для подтверждения адреса сервера (посылает ВК)
case "confirmation":
echo $confirmationToken; // отправляем строку для подтверждения адреса
break;
// Если это уведомление о новом сообщении...
case "message_new":

$userId = $data->object->user_id;



$user_name = $userInfo->response->first_name;

$request_params = array(
"message" => "{$user_name}, Ваше сообщение получено!
В ближайшее время админ группы на него ответит.",
"user_id" => $userId,
"access_token" => $token,
"v" => "5.0"
);



break;
}

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

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

{«type»: <тип события>, «object»: <объект, инициировавший событие>, «group_id»: }

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

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

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

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

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

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

Добавим в конструкцию 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={$userId}&v=5.0"));
// Вытаскиваем имя отправителя
$user_name = $userInfo->response->first_name;
// Через messages.send используя токен сообщества отправляем ответ
$request_params = array(
"message" => "Добро пожаловать в группу, {$user_name}!",
"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={$userId}&v=5.0"));
// Вытаскиваем имя отправителя
$user_name = $userInfo->response->first_name;
// Через messages.send используя токен сообщества отправляем ответ
$request_params = array(
"message" => "{$user_name}, нам очень жаль, что вы покинули нашу группу!",
"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 для вк-ботов. Если у вас остались вопросы - задавайте в комментах. И не забываем репостить и лайкать эту статью)

К сожалению, на данный момент нет хороших библиотек на Python2, для того, чтобы быстро создать чат-бота. Ниже я покажу, как легко можно написать примитивного чат бота для VK, используя API VK.


Статья написана для новичков, чтобы показать, что ничего сложного в написании ботов на Python нет.

Авторизация

Нам понадобится библиотека vk_api . Авторизоваться в вк можно двумя способами:
- Как пользователь
- Как сообщество


В первом случае надо будет ввести логин и пароль. Во втором случае в группе надо включить "Сообщения сообщества" и создать ключ доступа к API:





import time import vk_api vk = vk_api.VkApi(login = "login", password = "password") #vk_api.VkApi(token = "a02d...e83fd") #Авторизоваться как сообщество vk.auth()

Отправка сообщений

Теперь напишем короткую функцию, которая отправляет сообщение выбранному человеку.


P.S. Сообщество может отправлять сообщения только ранее писавшим пользователям.


def write_msg(user_id, s): vk.method("messages.send", {"user_id":user_id,"message":s})

В vk.method мы можем вызывать любой метод из VK API и передавать параметры в виде словаря.


В данном случае мы вызываем метод messages.send и в качестве параметров передаем id пользователя и текст сообщения.

Прием сообщений

Отлично! Отправлять сообщения мы научились, осталось научиться их принимать. Для этого нам нужен метод messages.get .


Несколько параметров, на которые стоит обратить внимание:


1) out - если этот параметр равен 1, сервер вернет исходящие сообщения.
2) count - количество сообщений, которое необходимо получить.
3) time_offset - максимальное время, прошедшее с момента отправки сообщения до текущего момента в секундах.
4) last_message_id - идентификатор сообщения, полученного перед тем, которое нужно вернуть последним (при условии, что после него было получено не более count сообщений)


values = {"out": 0,"count": 100,"time_offset": 60} vk.method("messages.get", values)

В нашем случае этот метод вернет все полученные сообщения за последние 60 сек, если их конечно было меньше 100, а если больше, то последние 100.


В итоге мы получаем список items:


{u"count": 3441, u"items": [{u"body": u"\u041f\u0438\u0448\u0435\u043c \u0431\u043e\u0442\u0430 \u0434\u043b\u044f \u0432\u043a!", u"date": 1491934484, u"id": 7387, u"out": 0, u"read_state": 0, u"title": u" ... ", u"user_id": 23107592}, {u"body": u"\u041f\u0440\u0438\u0432\u0435\u0442 \u0425\u0430\u0431\u0440!", u"date": 1491934479, u"id": 7386, u"out": 0, u"read_state": 0, u"title": u" ... ", u"user_id": 23107592}]}

Если объяснять простыми словами, то items - это то, что можно выделить в диалоге.



Финальный аккорд, делаем вечный цикл, где на каждое сообщение будем отвечать "Привет, Хабр!".


while True: response = vk.method("messages.get", values) if response["items"]: values["last_message_id"] = response["items"]["id"] for item in response["items"]: write_msg(item,u"Привет, Хабр!") time.sleep(1)

Чат-бот готов.


P.S. Мы запоминаем параметр last_message_id, чтобы в следующий раз обрабатывать только новые сообщения.


Полный код

# -*- coding: utf-8 -*- import time import vk_api vk = vk_api.VkApi(login = "login", password = "password") #vk_api.VkApi(token = "a02d...e83fd") #Авторизоваться как сообщество vk.auth() values = {"out": 0,"count": 100,"time_offset": 60} def write_msg(user_id, s): vk.method("messages.send", {"user_id":user_id,"message":s}) while True: response = vk.method("messages.get", values) if response["items"]: values["last_message_id"] = response["items"]["id"] for item in response["items"]: write_msg(item,u"Привет, Хабр!") time.sleep(1)


Получилось 17 строк кода. Успехов!


UPD 17.09.18:
К сожалению в новой версии (5.80) VK API был убран метод "messages.get" и данная статья потеряла актуальность. Теперь для создания ботов используйте систему longpoll. Пример на модуле vk_api для Python вы можете найти .

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

Быстрая навигация:

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

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

Что такое бот в ВК

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

На самом деле, объяснить, что такое «Бот» очень просто. В социальных сетях, бот,- это несуществующая личность, которой на самом деле просто нет. Бота можно считать . Еще их принято называть «мертвыми душами», прямо как в известной повести Гоголя, несуществующие люди, которые числятся в некоторых структурах. В нашем случае будут исследованы фейки в социальной сети «ВК». «Живое» отображение «бота»

Можно представить в виде анкеты тех граждан, которых на самом деле нет, или это давно заброшенные странички обычных пользователей ВК, а возможно, даже и реальные копии, о которых реальные владельцы даже не догадываются. Что же умеет делать «бот»? Если говорить честно, то практически ничего, он просто существует и все. Он не умеет писать или читать и вообще ничего того, что делают обычные посетители Вконтакте. Далее мы рассмотрим вопрос: как сделать бота в ВК для того, чтобы он стал настоящим помощником в раскрутке группы.

Как сделать бота в ВК для группы

Важно понимать, что для создания ботов в вк существует несколько способов. Первым из ботов, о которых пойдет речь – это «Робочат». Этот бот обладает достаточно легким и понятным функционалом, при этом так же незамысловат и понятен в настройке. Для его установки необходимо перейти на сайт robochat.io, и нажать на кнопку «Создать бота» (при необходимости, нужно пройти процедуру посредством вашего е-мейла).

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

Приложение сделает запрос к доступу к личному аккаунту в VK. Важно знать, что данный аккаунт должен обязательно иметь права администратора в нужном вам паблике «Вконтакте»). Кликните на «Разрешить»

Так вы перейдёте к перечню добавления групп «Вконтакте», в которых вы числитесь администратором. Кликните на «Подключить» справа от необходимого сообщества», а затем кликните на «Разрешить» для доступа бота к сообщениям группы, его фото и видео. Теперь вернитесь в ваш аккаунт на сайте Robochat.io, перейдите в раздел «Чат-бот» слева, в которой будут расположены три подвкладки («Основное», «Сообщения ВК», «Ключевые слова»). Нас интересует непосредственно подвкладка «Основное», где вы будете иметь возможность настроить ответы вашего бота на всевозможные запросы пользователя, в том числе пользуясь подвкладкой «Ключевые слова». Для редактирования определенной опцией существует кнопка «Редактировать», которая располагается возле каждого из пунктов. После завершения настройки шаблонных ответов ваш бот готов к работе. Для того, чтобы его активировать пользователю необходимо кликнуть на кнопку «Написать сообщения» в вашем сообществе, и бот даст ответ пользователю в соответствие с заданной вами настройкой.

Второй способ сделать бота для группы ВК

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

Затем нужно кликнуть на кнопку «Войти или создать аккаунт», и нажать на «Разрешить» справа снизу для предоставления приложению права доступа к вашему аккаунту. Так вы сможете перейти в панель управления созданным вами ботом. Кликните на кнопку «Подключить группу» для начала работы с вашей группой, нужно отметить вашу группу в списке, и кликнуть на «Подключить», а затем на «Разрешить». Справа будет расположено меню управления созданным ботом.

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

Третий способ – Создание Чат-ботов на сайте bots.hsstore.ru

Вы смело можете воспользоваться ботами платной основы на сайте bots.hsstore.ru. Здесь представлено множество платных ботов для сайта VK, функционал которых можно подключить за ежемесячную плату в 990 рублей. Среди них есть википедия-бот (рассылает статьи с Википедии по вашим запросам), бот подходящий для общения (имеет навыки соединять вас анонимно с другими неизвестными пользователями), бот демонстрирующий гороскопы и так далее.

Установка вышеописанных ботов схожа с установкой в уже рассмотренных вариантах, при этом важно знать, что здесь от вас также требуются вложения за платный функционал. Учитывая, что два предыдущих бота «Робочат» и «BotVK» совершенно бесплатны, установка платных экземпляров ботов выглядит достаточно сомнительным решением.

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

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

Как создать бота в ВК через Андроид

«Андроид» является операционной системой, созданной для электронных устройств. Она действует на ядре Linux и дает возможность создавать приложения, управляемые устройством через библиотеки системы «Гугл». Как создать бота ВК через смартфон? «Андроид» полностью поддерживает многие программы по созданию ботов посредством смартфона. Для того, чтобы сделать его самостоятельно, вам поможет отличное знание языка программирования, в том числе и понимание, что означает понятие «бот код». Если с этим имеются сложности, также можно воспользоваться автоматическим устройством или сервисами. Допустим, Abot способен создать собственного виртуального помощника. Он будет отвечать на сообщения и всевозможные вопросы клиентов. Это достаточно удобная вещь для контроля и ведения бизнеса через смартфон.

Конструктор ботов ВК

Прежде чем браться за это дело, необходимо определится, для чего он нужен. Его создание, не всегда, требует навыков программирования и каких-либо супер знаний. Конструкторы ботов помогут отлично справиться с этой задачей (одним из самых востребованных считается Chatfuel). Конструкторы позволяют создать bot с применением удобного интерфейса. Такими помощниками довольствуются серьезные компании и фирмы. Востребованными и популярными конструкторами на сегодняшний день можно считать: Api.ai, Meya, Pandarabots, Manybot. Эти сервисы применяются для конструкции чат-ботов в различных социальных сетях.

Как создать чат бота

Современному посетителю социальных сетей несомненно требуется активный помощник. Нехватка времени для осуществления полноценной деятельности ВК — отправная точка для создания роботов, которые будут отвечать на сообщения и выполнять прочие задачи. Чат-бот является программой, за счет которой пользователь может общаться.

Существует четыре вида чат-ботов:

· Помощники. Они постоянно рядом, находят необходимую для пользователя информацию, ставят будильник, осуществляют организационные задачи, такие как подачу заказа еды в офис или на дом, бронирование гостиничного номера, покупка билетов.

· Искусственный интеллект. Современные разработки подводят к тому, что чат-боты осуществляют задачи, требующие от человека достаточно много времени. Роботы способны отвечать на любые вопросы собеседника.

· Бизнес-боты. Они предоставлены для того, чтобы увеличивать коэффициент полезного действия и принимать участие в оптимизации бизнеса. Тут бот для группы вк является необходимостью. Допустим, сервис SpyCat 2.0 рассылает оповещение пользователю о полученных комментариях в сети ВК, при этом имея функцию автоответчика. Бизнес-боты понижают затраты, автоматизируют все рабочие процессы (выполняют рассылку сообщений клиентам и сотрудникам).

· Игровые. Программа, управляющая компьютером. Она имитирует партнеров в онлайн-игре по командам. Подобные боты основаны на искусственном интеллекте и полностью адаптированы к особенностям определенной игры.

Как создать чат бот в ВК? – это очень популярный вопрос от тех, кто намерен развивать свой бизнес посредством привлечения клиентов через бот ВК. Сделать это достаточно просто. Прежде чем приступить к этому делу, необходимо соблюдение следующих критериев: непрерывный доступ в интернет и наличие свободного времени. Также нужно скачать бесплатный чат-бот, запустить его и добавить аккаунт. Далее нужно ввести логин и пароль личной страницы в ВК. Затем откроется инструкция, ее необходимо прочесть и проследовать на вкладку «Сообщения». На стене сообщества своего аккаунта нужно написать «Бот, привет!». Спустя тридцать секунд он должен дать ответ. Во вкладках программы «Аккаунт», «Команды» можно изменять и настраивать функции бот ВК.

Скачать готовый бот для ВК

В данном разделе мы подробно рассмотрим, как и где можно скачать бот вк. На самом деле, скачивание бота абсолютно несложная задача, справиться с которой может абсолютно любой человек, которые имеет навыки пользования ПК. Скачать Бот ВК, можно на сайте vk-robot . или на других сайтах. Всех их объеденяет одно, а именно: риск скачать вирус, скачать устаревшую программу, которая не только не будет Вам полезна, а поспособствует быстрому бану и разного рода другие неприятности. Скачивая в сети программы вы очень рискуете.

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

Но если здравый смысл Вам говорит, что не нужно качать всякое **но с интернета, то есть надёжный сервис, который не только бесплатный, но и не навлечёт неприятностей, даже на Вашу личную страницу — BossLike.ru

Босслайк имеет множество функций, которые хотят получить пользователи Вконтакте: , Подписчики, комментарии…

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

Этот раздел будет полезен для тех, кто хочет подробней познакомиться со структурой бота и создать бот для вк бесплатно и собственными силами.

· В любом поисковике находим форму регистрации в «ВК». В строке «имя» вводим любое имя. В строке «фамилия», лучше всего вписать распространенную, фамилию. Кликаем «зарегистрироваться».

· Затем нужно вписать номер телефона и кликнуть «получить код».

· После подтверждения регистрации будет сформирована чистая страничка, которую необходимо заполнить. Теперь переходим к основному вопросу, а именно «Как самостоятельно создать бота в «ВК»?». В аккаунте нового пользователя следует заполнить все поля, обязательные для заполнения. А именно следующие:

Поэтапно:

1. Основное: имя и фамилия уже заполнены. Значит, следует указать пол, семейное положение, данные рождения, город, язык. Затем — дедушки, бабушки, братья, сестры, родители, дети, внуки — добавляете по вашему желанию. Нажимаете «сохранить». Важно понимать, что данные будут отражать личность, поэтому свой бот вконтакте должен выглядеть реальным.

2. Контакты: необходимо добавить страну, Skype, ссылку на личный сайт. Последние пункты можно и не добавлять.

3. Интересы: важно вписать деятельность. Указать большое количество, интересов (путешествия, книги, юмор и другое). Далее ввести — любимая музыка, потом фильмы, книги, телешоу игры, цитаты и отметить что-либо «о себе», а потом сохранить.

4. Следующее — образование, отметить школу, учебные заведения и сохранить.

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

6. Служба: указывать нужно только, как правило, мужскому полу.

7. Жизненная позиция: следует заполнить — политические предпочтения, главное в жизни, мировоззрение, главное в людях, отношение к курению и алкоголю, источники вдохновения, и все это также сохранить.

Итак, теперь следует второй этап разрешения вопроса «Как своими силами создать бот вк? Теперь необходимо добавить аватарку и фото.

1. Находим в интернете в поисках «картинки» фотографии человека. Загружаем их на свой компьютер и сохраняем.

2. Желательно найти несколько штук фотографий одного и того же человека. В таком случае создается видимость » реального пользователя».

3. Фотографию для аватарки нужно подобрать среднего размера, на ней должно быть отчетливо отражаться лицо нашего «бота». Не следует брать животных или различные экстравагантные снимки. Все должно быть

максимально приближено к реальности. Загружаем фото на страничку «ВК» и сохраняем.

4. Далее добавляем остальные фотографии, чем их больше будет, тем лучше. Они могут быть разнообразными. «Бот вк» может на них быть как в единственном числе, так и в компании или с группой людей. Нужно загрузить на аккаунт хотя бы 4-5 фотографий. Переходим на третий этап и узнаем, как создать «бота» в «ВК».

Следующий шаг…

Третий этап решения задачи: Как создать «бот Вконтакте для групп»? Следующий этап должен быть насыщен самыми активными действиями. На страничку нового необходимо загрузить несколько видеороликов, и какие-либо аудиозаписи. А также снабдить аккаунт друзьями. Как создать «бота» в «ВК» без программ, так сказать, в ручном режиме? Этот способ создание «ручного» бота потребует затрат вашего времени. Дело в том, что друзей нужно будет добавлять вручную. Создавать запросы на добавление в друзья и принимать их придется ежедневно. Чтобы лжепользователь выглядел еще более живым, нужно, чтобы он общался.

Итак, в заключении можно подвести итог, что создать бот ВК 2018, можно двумя способами: установить специальную программу или ежедневно самостоятельно писать в чате и общаться с другими пользователями от его имени. Как видите сами, ничего сложного нет. Однако стоит принять во внимание, чтобы создать полноценного «бота», нужно потратить свое свободное время.

Из прошлых статей мы создавали простой скрипт для переписки. Были рассмотрены базовые возможности. На этот раз мы напишем чат-бот с командами. Реализуем такие команды:

  • город [название города]. Данной командой задается город собеседника, бот запомнит его, сохранит в файл. Эти данные будут доступны даже после перезапуска программы.
  • погода . Бот отправляет текущую температуру в городе собеседника.
  • пробки . Бот получает скриншот Яндекс.Карт с состоянием пробок и отправляет картинку.
  • события . Бот отправляет список событий в городе собеседника.
  • пришли на email . Бот сохраняет email собеседника в файл.

Город

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

Var cityFile = profile + "__" + contact; if (content.startsWith("город ")) { var city = content.substring(6); log.info("Saving city for contact " + contact); tools.writeToFile(cityFile, city); return "Теперь я знаю твой город."; }

В переменную cityFile мы сохраняем имя файла. Далее с помощью вызова метода tools.writeToFile(file, data) мы сохраняем город в файл. Обратите внимание, что функцией writeToFile пользоваться небезопасно в случае если несколько анкет выполняют один и тот же скрипт и обращаются к одному и тому же файлу. Поэтому мы используем id анкеты в имени файла, чтобы исключить такие конфликты.

Для чтения из файла используется метод tools.readFromFile(file). Данная функция читает весь файл и возвращает содержимое. Если файла не существует, функция возвращает пустую строку.

Var city = tools.readFromFile(cityFile); if (city.isEmpty()) { return "Я не знаю твой город:("; }

Выбор имени файла

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

Var profile = hist.localContact().getID().toString(); var contact = hist.externalContact().getID().toString(); var cityFile = profile + "__" + contact;

Здесь мы получаем данные об анкете в боте через метод hist.localContact(). Далее методом getID() получаем внутренний идентификатор анкеты (выглядит примерно так profile_www.vk.com_+79129192508). Аналогично получаем идентификатор собеседника (id361493719). В результате в переменной cityFile получаем profile_www.vk.com_+79129192508__id361493719. Поскольку имя содержит идентификатор анкеты, добавленной в бот, другая анкета не сможет сгенерировать такое же имя файла и конфликтов не будет.

Погода

Для получения данных о погоде воспользуемся сервисом openweathermap.org. Нужно зарегистрироваться и получить бесплатный ключ для доступа к API. Далее отправить HTTP-запрос с названием города и получить в ответ JSON с данными.

Function getWeather(city, tools) { city = city.replace(" ", "%20"); var apiKey = "43599b515694631087a103907284116d"; var url = "http://api.openweathermap.org/data/2.5/weather?q=" + city + "&appid=" + apiKey + "&units=metric"; return JSON.parse(tools.httpGet(url)); }

Для выполнения HTTP-запроса используем метод tools.httpGet(url). Метод возвращает тело HTTP-ответа. Обратите внимание, что пробелы в названии города мы заменяем на специальный код.

Пробки

Получать данные о пробках будет с Яндекс.Карт также через выполнение HTTP-запроса.

Function getTraffic(city, file, log, tools) { log.info("Getting coordinates for city " + city); city = city.replace(" ", "%20"); var url = "https://geocode-maps.yandex.ru/1.x/?geocode=" + city + "&format=json"; var resp = JSON.parse(tools.httpGet(url)); var coord = resp["response"]["GeoObjectCollection"]["featureMember"]["GeoObject"]["Point"]["pos"].replace(" ", ","); log.info("Coordinates are: " + coord + ", getting traffic pic"); var url = "https://static-maps.yandex.ru/1.x/?ll=" + coord + "&spn=0.1,0.1&l=map,trf"; return tools.download(url, file); }

Сервис Яндекс.Карт возвращает данные о пробках по географической координате. У нас же есть только строковое название города. Поэтому сначала мы отправляем HTTP-запрос на получение данных о городе на другой сервис. Среди прочего в ответе есть данные о координате. Координату используем для другого HTTP-запроса. Обратите внимание, что для получения картинки с пробками мы используем метод tools.download(url, file). Этот метод также выполняет HTTP GET запрос, но сохраняет бинарный результат в файл. Метод получает URL и имя файла для сохранения ответа. Обратите внимание, что в имени файла должно быть только имя, без путей. Метод возвращает полный путь к этому файлу.

События

Для получения событий в конкретном городе воспользуемся API timepad.ru .

Function getEvents(city, tools) { city = city.replace(" ", "%20"); var url = "https://api.timepad.ru/v1/events.json?limit=10&skip=0&cities=" + city + "&fields=location&sort=+starts_at"; return JSON.parse(tools.httpGet(url)); }

Пришли на email

Воспользуемся методом tools.appendToFile(file, line). Метод добавляет строку line в файл file (только имя файла, без путей). Данный метод является безопасным для использования из нескольких анкет с одним и тем же именем файла. Таким образом удобно собирать какие-то сообщения или фрагменты сообщений от пользователей в одном файле. В данном скрипте мы будем собирать email адреса пользователей.

If (content.startsWith("пришли на email ")) { var email = content.substring(16); tools.appendToFile("emails", email); }

Весь скрипт

Приведем весь код скрипта.

Function getTemplates() { return ; } function getWeather(city, tools) { city = city.replace(" ", "%20"); var apiKey = "43599b515694631087a103907284116d"; var url = "http://api.openweathermap.org/data/2.5/weather?q=" + city + "&appid=" + apiKey + "&units=metric"; return JSON.parse(tools.httpGet(url)); } function getTraffic(city, file, log, tools) { log.info("Getting coordinates for city " + city); city = city.replace(" ", "%20"); var url = "https://geocode-maps.yandex.ru/1.x/?geocode=" + city + "&format=json"; var resp = JSON.parse(tools.httpGet(url)); var coord = resp["response"]["GeoObjectCollection"]["featureMember"]["GeoObject"]["Point"]["pos"].replace(" ", ","); log.info("Coordinates are: " + coord + ", getting traffic pic"); var url = "https://static-maps.yandex.ru/1.x/?ll=" + coord + "&spn=0.1,0.1&l=map,trf"; return tools.download(url, file); } function getEvents(city, tools) { city = city.replace(" ", "%20"); var url = "https://api.timepad.ru/v1/events.json?limit=10&skip=0&cities=" + city + "&fields=location&sort=+starts_at"; return JSON.parse(tools.httpGet(url)); } function handle(content, profile, contact, log, tools) { log.info("Got message: " + content + " from " + contact + " to " + profile); var cityFile = profile + "__" + contact; if (content.startsWith("город ")) { var city = content.substring(6); log.info("Saving city for contact " + contact); tools.writeToFile(cityFile, city); return "Теперь я знаю твой город."; } else if (content.startsWith("погода")) { var city = tools.readFromFile(cityFile); if (city.isEmpty()) { return "Я не знаю твой город:("; } log.info("Getting weather for city " + city); var weather = getWeather(city, tools); return "Температура: " + weather["main"]["temp"]; } else if (content.startsWith("пробки")) { var city = tools.readFromFile(cityFile); if (city.isEmpty()) { return "Я не знаю твой город:("; } var trafficFile = profile + "__" + contact + ".png"; var fullFileName = getTraffic(city, trafficFile, log, tools); return "такие пробки "; } else if (content.startsWith("пришли на email ")) { var email = content.substring(16); tools.appendToFile("emails", email); return "Спасибо! Я напишу."; } else if (content.equals("события")) { var city = tools.readFromFile(cityFile); if (city.isEmpty()) { return "Я не знаю твой город:("; } log.info("Getting events for city " + city); var events = getEvents(city, tools)["values"]; log.info("Got " + events.length + " events"); var result = ""; for (var i = 0; i < events.length; ++i) { var dateTime = events[i]["starts_at"]; var dateTimeStr = dateTime.substring(0, 10) + " " + dateTime.substring(11, 17); var name = events[i]["name"]; result += (i + 1) + ". " + dateTimeStr + " " + name + "\n"; } return result; } return ""; } function getAnswer(hist, log, tools) { var profile = hist.localContact().getID().toString(); var contact = hist.externalContact().getID().toString(); var toReply = hist.unansweredMessages(); var result = ""; for(var i = 0; i < toReply.size() ; ++i) { var message = toReply.get(i); var content = message.content().toLowerCase(); var dup = false; for(var j = 0; j < i && !dup; ++j) { dup = content.equals(toReply.get(j).content().toLowerCase()); } if (!dup) { result += handle(content, profile, contact, log, tools) + " "; } } return result; }

Пример работы

Что еще можно получить из истории

Из истории переписки в скрипте можно получить некоторую дополнительную информацию об анкете и собеседнике. А именно.