План по разработке чат-бота ВКонтакте: функции, устройство, возможности
Если бизнес зависит от коммуникации в социальных сетях, рано или поздно наступает момент, когда не хватает времени и рук для взаимодействия с пользователями. Одно из решений в таком случае – увеличение числа сотрудников. Однако, такой шаг требует повышения расходов, что не всегда возможно.
Выйти из подобной ситуации можно с помощью самостоятельно разработанного чат-бота. Подробно рассказываем о работе с ботами, рассылками, автоворонками в курсе Вовлекай и продавай через мессенджеры от SMM.school.
В этой статье вы узнаете, как оптимизировать рабочие процессы и повысить их эффективность с помощью бота во ВКонтакте. А главное, получите пошаговое руководство по его разработке. Вас ждут примеры и полезные рекомендации.
Что может чат-бот
Эффективность работы чат-бота зависит от ряда факторов и в первую очередь от вашей поддержки. Бот действует на основании заданных команд, поэтому, чтобы он становился лучше, необходимо регулярно работать над его функционалом. Далее мы рассмотрим, с чего начинать создание виртуального помощника и где его конструировать.
А пока давайте разберем, чем чат-бот полезен для бизнеса:
- вовлекает новых клиентов в диалог с компанией;
- знакомит с брендом;
- рассказывает о товарах и услугах;
- взращивает лиды;
- конвертирует пользователей в покупателей;
- допродает;
- помогает изучать и сегментировать аудиторию;
- выполняет обязанности команды поддержки;
- информирует пользователей об обновлениях и акциях.
И это не полный список возможностей чат-бота! Каждая компания самостоятельно прописывает его задачи и настраивает функционал. Так, одни с помощью чат-бота анонсируют мероприятия, а другие – демонстрируют ассортимент товаров и продают.
Виды и примеры чат-ботов
В зависимости от сферы деятельности, поставленных задач, функционала и платформы размещения существует огромное число разновидностей чат-ботов. Тем не менее, большинство из них можно условно разделить на следующие категории:
- Персональный помощник. Такие чат-боты выполняют функции ассистента. Некоторые из них поддерживают интеграцию с CRM, могут составлять отчеты и анализировать данные. Другие помогают изучать иностранный язык, планировать работу и подбирать комплекты одежды.
- Бот-консультант. С его помощью клиентам предоставляют необходимую информацию о компании, ее деятельности и продуктах. В процессе диалога чат-бот выявляет заинтересованных потенциальных покупателей и затем передает контакты менеджеру или службе поддержки.
- Бот-менеджер. В отличие от консультанта, этот бот может продавать самостоятельно. Он не только предоставляет всю информацию о продукте, но и принимает заказы. В случае возникновения сложностей способен передать контакт клиента менеджеру.
- Развлекательный чат-бот. Компании используют таких ботов, чтобы привлечь внимание новых пользователей, установить с ними эмоциональную связь и при дальнейшей коммуникации конвертировать их в клиентов.
- Информационный чат-бот
Теперь детально рассмотрим работу и возможности чат-ботов на примерах.
Ниже вы видите чат-бота компании Сувлаки, которая готовит и доставляет греческие блюда. Чат-бот предоставляет пользователям меню и помогает просчитать стоимость заказа.
Чат-бот СувлакиЧат-бот сайта DARENDA.RU помогает найти квартиру в Москве, а затем перенаправляет пользователя на сайт, чтобы он мог посмотреть фотографии и узнать подробности. Обратите внимание: есть возможность задать условие поиска на основании стоимости жилья, качества ремонта и удаленности от метро.
Чат-бот Лиза проводит интересные экскурсии для посетителей Эрмитажа. Продуманные диалоги погружают в атмосферу таинства и вовлекают в захватывающее путешествие. Получается, чат-бот может быть не только продавцом или консультантом, но и гидом: Лиза сопровождает посетителей на протяжении всей экскурсии и рассказывает о представленных в Эрмитаже экспонатах.
Чат-бот ЭрмитажаМожно ли с помощью чат-бота привлекать клиентов на онлайн-курсы или вебинары? Однозначно, да. Посмотрите, как это делает концепт-художник Дмитрий Клюшкин. Чат-бот помогает потенциальным клиентам узнать больше о курсе и его авторе, а также рассказывает о стоимости и условиях оплаты.
Обратите внимание: чат-бот позволяет вернуться на шаг назад или в главное меню после каждого выбранного пункта. Такую возможность всегда необходимо предоставлять подписчикам независимо от вида бота и сферы деятельности.
Чат-бот онлайн-курсаКак разработать чат-бота: пошаговый план
Когда чат-боты только появились на рынке, их разработкой занимались только программисты и заказ стоил довольно дорого. Поэтому, представители малого и даже среднего бизнеса могли только мечтать о своем боте. Сегодня картина в корне изменилась и вы вполне можете обойтись без команды разработчиков и крупных расходов. Вот как это сделать.
Шаг 1. Установите цели
Подумайте, какие функции вы можете переложить на своего будущего виртуального помощника. Для этого проанализируйте работу службы поддержки и менеджеров, чтобы выявить рутинные задачи. Для поиска функций помогут ответы на следующие вопросы:
- Зачем вам нужен чат-бот?
- Какую пользу он будет нести клиентам и потенциальным покупателям?
- Что он должен для этого уметь?
Шаг 2. Продумайте сценарий и архитектуру чат-бота
Вам понадобится программа вроде MindMap или XMind. Сначала подготовьте приветственное сообщение, которое пользователь увидит после того, как подпишется, и нажмет на кнопку «Начать».
Вы можете написать как одно стартовое уведомление, так и несколько. Все зависит от поставленных целей, сферы деятельности и специфики работы. Обязательно представьте своего виртуального помощника, чтобы пользователь понимал, что общается с ботом.
Далее возьмите за основу прописанные задачи и начните выстраивать цепочки сообщений под каждую. Задачи формируют функционал бота, цепочки сообщений – сценарий, а все вместе называется «архитектурой». Важно, чтобы диалог имитировал живое общение и был интересен пользователю. Чем сильнее вы сможете увлечь подписчика, тем выше будет результативность чат-бота.
Сценарий может содержать столько цепочек сообщений, сколько вы захотите. Сделайте так, чтобы клиент мог вернуться на шаг назад или в главное меню. Так подписчики никогда не окажутся в тупике и им не придется покидать диалог.
Теперь, когда основа готова, пропишите сообщение на случай, если чат-бот не поймет команду пользователя. Например, напишите от имени бота, что он еще не все умеет, но постоянно развивается, чтобы быть лучше. Старайтесь сделать сообщение человечным и не забывайте предложить пользователю следующий шаг, как в примере ниже.
Шаг 3. Выберите визуальный конструктор
На рынке представлены десятки конструкторов чат-ботов. Чтобы выбрать наиболее подходящий для вашего бизнеса, воспользуйтесь следующими рекомендациями:
- Проанализируйте тарифные планы. Обратите внимание на стоимость — цена может быть установленной, а может зависеть от количества сообщений в цепочке или числа подписчиков.
- Подумайте, какие социальные сети для вас актуальны. Например, если вы будете разрабатывать бота для Facebook и ВКонтакте, то эффективнее и дешевле работать в одном сервисе.
- Обратите внимание на количество возможных для создания ботов внутри тарифных планов.
- Посмотрите, какое число сообщений вы можете отправлять пользователям в рамках выбранного тарифного плана.
- Узнайте, какую статистику вы можете отслеживать.
- Опробуйте бесплатный тарифный план, чтобы разобраться с функционалом и понять, подходит он вам или нет.
Тщательно изучите все детали, чтобы чат-бот окупил расходы и вам не пришлось искать другую платформу.
Шаг 4. Создайте своего первого чат-бота
После того, как вы определили подходящий для себя конструктор, приступайте к созданию виртуального помощника. Посмотрите, как выглядит процесс в визуальном конструкторе SendPulse (или в инструкции по работе с Chatgun). Слева вы видите функциональные блоки, а справа — доступные настройки.
Обратите внимание, в этой приветственной цепочке уже есть сообщение о возможности отписки. Помните, если пользователь будет знать, как отписаться в случае необходимости, вы минимизируете жалобы на спам.
Чтобы собрать цепочку сообщений в SendPulse, необходимо просто перетаскивать нужные элементы в рабочее поле. Ниже вы видите, как шаг за шагом можно выстроить диалог. Обратите внимание, что между сообщениями нужно ставить паузы: так диалог будет размеренным и пользователи будут успевать читать уведомления.
Шаг 5. Проверьте весь функционал и запустите чат-бота
После создания цепочек проверьте каждую из них. Убедитесь, что добавили картинки туда, куда нужно, а все кнопки чат-бота содержат правильные ссылки. Проследите, чтобы в диалогах не было тупиков и клиент мог вернуться в главное меню или на шаг назад. Помните о необходимости ссылки отписки в своих рассылках. Она поможет избежать жалоб со стороны пользователей, если те не захотят получать от вас уведомления.
Протестируйте чат-бота самостоятельно, возможно, где-то в сообщениях есть ошибки или понадобится усовершенствовать текст. Если вы полностью удовлетворены проделанной работой – запускайте чат-бота.
Шаг 6. Отслеживайте статистику
Шаг 7. Улучшайте функционал и расширяйте возможности
Совершенствуйте чат-бота и его функционал на основании статистики, чтобы повышать эффективность. Добавляйте новые цепочки, удаляйте устаревшие, следите за актуальностью предоставляемой информации. Помните: чат-бот — это отличный помощник, но не самостоятельный сотрудник. Поэтому, без вашей поддержки и контроля он не сможет развиваться и увеличивать доход компании.
Рекомендации по продвижению чат-бота и привлечению новых подписчиков
Что-бот не инициирует диалог самостоятельно — ему нужна команда пользователя или клик по кнопке “Начать”. Вот ряд способов, которые помогут привлечь целевую аудиторию к взаимодействию.
- Анонсируйте чат-бота в постах. Чтобы заинтересовать подписчиков и мотивировать их перейти в сообщения, продемонстрируйте новый продукт, о функциях и свойствах которого сможет рассказать чат-бот.
- Используйте интерактивные тесты. Они располагают, дарят положительные эмоции и настраивают на коммуникацию. При создании теста обязательно ориентируйтесь на портрет целевой аудитории, сферу деятельности и язык бренда.
- Добавьте виджет подписки на сайт. Так вы сможете постоянно генерировать новых подписчиков. Подписка через виджет не требует ввода email или других данных, поэтому осуществляется в один клик.
- Делайте рекламу. Для этого используйте популярные сообщества и таргетированную рекламу в ВКонтакте.
- Привлеките существующую аудиторию в других каналах. Если у вас есть email-адреса или номера телефонов ваших подписчиков – расскажите им о появлении чат-бота. Однако, чтобы такие рассылки принесли результат, используйте актуальные базы данных. Отправка писем по устаревшему списку грозит попаданием в спам.
- Создайте вовлекающий виджет. Это отличный способ привлечь внимание посетителей страницы ВКонтакте. Используйте четкий призыв к действию, чтобы инициировать подписку и вовлечь в диалог с чат-ботом.
- Подключите кнопку «Действия». С ее помощью можно перенаправить пользователей на сайт, мотивировать их писать на почту, звонить или подписаться на чат-бота. Для этого выберите название кнопки, например, «Перейти», затем установите тип действия «Открыть сайт». Далее, вместо ссылки на главную страницу, добавьте ссылку на форму подписки чат-бота.
Теперь вы знаете практически все о создании чат-бота для ВКонтакте. Используйте полученные рекомендации, чтобы сделать своего первого виртуального помощника. Уделите время его разработке сегодня, чтобы завтра он увеличил вашу прибыль. Но помните: чат-бот станет выгодным инструментом для бизнеса только в том случае, если будет полезен потенциальным клиентам и сможет решать их задачи.
Автор: Дарина Сорокина, контент-маркетолог сервиса автоматизации рассылок SendPulse
Создание и интегрирование бота VK в группу через VkBotLongPoll [Python] / Хабр
В этой статье мы создадим бота и интегрируем его в группу VK на Python 3.xДля кого эта статья?
Для тех, кто хочет написать простого бота для своего сообщества, умеющего определять команды и выводить соответствующий ответ
Основные стадии
Создание группы-бота
Начнем мы с создания бота, а именно группы в ВК.
Для это нужно зайти в «группы» → «создать сообщество».
Выберите любой тип сообщества и введите название, тематику группы.
На открывшейся странице настроек, выберите «Работа с API».
Далее, необходимо создать API-ключ.
Затем выберите нужные вам параметры с доступом для вашего API-ключа.
Скорее всего, вам придётся подтверждать действие в ВК с помощью мобильного телефона. Затем скопируйте полученный API-ключ где-нибудь в файл. Он нам еще понадобится.
Затем нужно разрешить сообщения. Для этого переходим в «сообщения» и включаем их. Также включим «Возможности ботов» в «Сообщения» -> «Настройки для бота».
Там же разрешим добавить сообщество в группы, если мы хотим чтобы бот мог получать сообщения из группы.
Настройка Long Poll
Для работы с Long Poll API используем библиотеку vk_api. Установить его можно через pip.
Перед работой сохраним наш API-токен в файл config.py оттуда мы будем загружать наш ключ.
Создадим наш первый скрипт. Назовем server.py, который будет основным скриптом сервера.
Импортируем нужные нам модули:
import vk_api.vk_api
from vk_api.bot_longpoll import VkBotLongPoll
from vk_api.bot_longpoll import VkBotEventType
Создадим класс-сервер:
class Server:
def __init__(self, api_token, group_id, server_name: str="Empty"):
# Даем серверу имя
self.server_name = server_name
# Для Long Poll
self.vk = vk_api.VkApi(token=api_token)
# Для использования Long Poll API
self.long_poll = VkBotLongPoll(self.vk, group_id)
# Для вызова методов vk_api
self.vk_api = self.vk.get_api()
def send_msg(self, send_id, message):
"""
Отправка сообщения через метод messages.send
:param send_id: vk id пользователя, который получит сообщение
:param message: содержимое отправляемого письма
:return: None
"""
self.vk_api.messages.send(peer_id=send_id,
message=message)
def test(self):
# Посылаем сообщение пользователю с указанным ID
self.send_msg(255396611, "Привет-привет!")
Теперь создадим файл server_manager.py, в котором будет управлять разными серверами. Пока для тестов пропишем лишь вызов класса Server:
# Импортируем созданный нами класс Server
from server import Server
# Получаем из config.py наш api-token
from config import vk_api_token
server1 = Server(vk_api_token, 172998024, "server1")
# vk_api_token - API токен, который мы ранее создали
# 172998024 - id сообщества-бота
# "server1" - имя сервера
server1.test()
Важно!
Бот может писать сообщения только тем пользователям, которые разрешили боту присылать сообщения. Сделать это можно на странице сообщества или же первым написать боту
Если все сделано правильно, то бот пришлет нам личное сообщение.
Теперь добавим бота в группу и научим его обрабатывать сообщения.
Для добавления бота в группу нужно нажать «Пригласить в беседу» в правом меню сообщества.
Добавим боту функцию start, после вызова которой он начнет «слушать» сообщения через Long Poll (не забудьте добавить разрешения в типы событий в разделе «Работа с API» -> «Long Poll API» и поставить последнюю версию):
def start(self):
for event in self.long_poll.listen():
print(event)
Запустим его через server_manager.py:
server1.start()
Теперь, если напишем сообщение в группу, то сможем увидеть объект event’a:
<<class ‘vk_api.bot_longpoll.VkBotMessageEvent’>({‘type’: ‘message_new’, ‘object’: {‘date’: 1541273151, ‘from_id’: 25599999999, ‘id’: 0, ‘out’: 0, ‘peer_id’: 2000000001, ‘text’: ‘[club172998024|bot in da Vk] this is a text!’, ‘conversation_message_id’: 187, ‘fwd_messages’: [], ‘important’: False, ‘random_id’: 0, ‘attachments’: [], ‘is_hidden’: False}, ‘group_id’: 172998024})>
Также, если мы напишем в личные сообщения:
<<class ‘vk_api.bot_longpoll.VkBotMessageEvent’>({‘type’: ‘message_new’, ‘object’: {‘date’: 1541273238, ‘from_id’: 25599999999, ‘id’: 47, ‘out’: 0, ‘peer_id’: 255396611, ‘text’: ‘это личное сообщение’, ‘conversation_message_id’: 47, ‘fwd_messages’: [], ‘important’: False, ‘random_id’: 0, ‘attachments’: [], ‘is_hidden’: False}, ‘group_id’: 172998024})>
Из этих данных нам следует обратить внимание на type, object.from_id, object.id, object.peer_id, object.text. Данные полученные из сообщений и из группы ничем сильно не отличаются, кроме object.peer_id и object.id.
Если присмотреться, object.id у всех сообщений из группы равен 0, а сообщения из личных нет. Таким образом, можно разделить сообщения получаемые из группы и из личных.
Обработаем полученные данные внутри класса Server:
def start(self):
for event in self.long_poll.listen(): # Слушаем сервер
# Пришло новое сообщение
if event.type == VkBotEventType.MESSAGE_NEW:
print("Username: " + self.get_user_name(event.object.from_id))
print("From: " + self.get_user_city(event.object.from_id))
print("Text: " + event.object.text)
print("Type: ", end="")
if event.object.id > 0:
print("private message")
else:
print("group message")
print(" --- ")
def get_user_name(self, user_id):
""" Получаем имя пользователя"""
return self.vk_api.users.get(user_id=user_id)[0]['first_name']
def get_user_city(self, user_id):
""" Получаем город пользователя"""
return self.vk_api.users.get(user_id=user_id, fields="city")[0]["city"]['title']
Напишем боту два сообщения: один из группы, один в личку. Тогда получим:
Username: Артур
From: Санкт-Петербург
Text: [club172998024|@club172998024] this is a message from group
Type: group message
—
Username: Артур
From: Санкт-Петербург
Text: this is a private message
Type: private message
—
Примечание
Как вы могли заметить перед сообщением в группе есть [club172998024|@club172998024], для правильной обработки команды следует избавиться от всего содержимого в квадратных скобках, либо разрешить боту доступ ко всей переписке
Как мы видим, vk_api позволяет нам легко использовать методы VK API. К примеру, сейчас мы использовали метод users.get
Список всех методов доступен по ссылке: vk.com/dev/methods
Советую изучить и поэкспериментировать с методами, которые вас заинтересуют. Благо VK предоставило нам очень хорошую документацию, еще и на русском языке.
Чтобы закрепить материал, давайте добавим функцию отправки сообщения через метод messages.send:
def send_message(self, peer_id, message):
self.vk_api.messages.send(peer_id=peer_id, message=message)
— идентификатор назначения. Чтобы ответить на чье-то сообщение, в качестве параметра peer_id укажем event.object.peer_id. То есть, пошлем сообщение туда, откуда пришел запрос.
Изменим метод start:
def start(self):
for event in self.long_poll.listen(): # Слушаем сервер
# Пришло новое сообщение
if event.type == VkBotEventType.MESSAGE_NEW:
username = self.get_user_name(event.object.from_id)
print("Username: " + username)
print("From: " + self.get_user_city(event.object.from_id))
print("Text: " + event.object.text)
print("Type: ", end="")
if event.object.id > 0:
print("private message")
else:
print("group message")
print(" --- ")
self.send_message(event.object.peer_id, f"{username}, я получил ваше сообщение!")
Теперь, если бот примет сообщение, то он нам ответит в таком стиле:
Артур, я получил ваше сообщение!
Весь код
server.py
import vk_api.vk_api
from vk_api.bot_longpoll import VkBotLongPoll
from vk_api.bot_longpoll import VkBotEventType
class Server:
def __init__(self, api_token, group_id, server_name: str="Empty"):
# Даем серверу имя
self.server_name = server_name
# Для Long Poll
self.vk = vk_api.VkApi(token=api_token)
# Для использоания Long Poll API
self.long_poll = VkBotLongPoll(self.vk, group_id, wait=20)
# Для вызова методов vk_api
self.vk_api = self.vk.get_api()
def send_msg(self, send_id, message):
"""
Отправка сообщения через метод messages.send
:param send_id: vk id пользователя, который получит сообщение
:param message: содержимое отправляемого письма
:return: None
"""
self.vk_api.messages.send(peer_id=send_id,
message=message)
def test(self):
self.send_msg(255396611, "Привет-привет!")
def start(self):
for event in self.long_poll.listen(): # Слушаем сервер
# Пришло новое сообщение
if event.type == VkBotEventType.MESSAGE_NEW:
username = self.get_user_name(event.object.from_id)
print("Username: " + username)
print("From: " + self.get_user_city(event.object.from_id))
print("Text: " + event.object.text)
print("Type: ", end="")
if event.object.id > 0:
print("private message")
else:
print("group message")
print(" --- ")
self.send_message(event.object.peer_id, f"{username}, я получил ваше сообщение!")
def get_user_name(self, user_id):
""" Получаем имя пользователя"""
return self.vk_api.users.get(user_id=user_id)[0]['first_name']
def get_user_city(self, user_id):
""" Получаем город пользователя"""
return self.vk_api.users.get(user_id=user_id, fields="city")[0]["city"]['title']
def send_message(self, peer_id, message):
self.vk_api.messages.send(peer_id=peer_id, message=message)
server_manager.py
# Импортируем созданный нами класс Server
from server import Server
# Получаем из config.py наш api-token
from config import vk_api_token
server1 = Server(vk_api_token, 172998024, "server1")
server1.start()
Задачка для закрепления материала:
Создайте функцию, которая принимает параметр peer_id и посылает пользователю фотографию загруженную в сообщество. Полезный док: vk.com/dev/messages.sendРешениеСначала, загрузим фото в группу и открыв её в ВК рассмотрим ссылку:
vkcom/club172998024?z=photo-172998024_456239017%2Falbum-172998024_256250731
Нас интересует лишь выделенная часть: photo-172998024_456239017. Передадим её в качестве аргумента метода messages.send:
def send_img(self, peer_id):
self.vk_api.messages.send(peer_id=peer_id,
attachment="photo-172998024_456239017")
Добавим его в метод start и получим:
Вот и все основы. Главное, научиться пользоваться vk_api, используя различные методы, весь их список: vk.com/dev/methods. Если вы научитесь работать с документацией VK API, то сможете создавать ботов различной сложности и назначений. Пример моего бота для учебной группы: github.com/AppLoidx/GroupAssistant/tree/master
Теперь приступим к созданию логики бота
Создадим commander.py, который будет принимать команды и возвращать ответ, передаваемый пользователю Vk:
class Commander:
def __init__(self, vk_api, user_id):
self.vk_api = vk_api
self.user_id = user_id
def input(self, msg):
"""
Функция принимающая сообщения пользователя
:param msg: Сообщение
:return: Ответ пользователю, отправившему сообщение
"""
pass
Построим архитектуру нашей программы:
«Слушаем» сервер Long Poll и получаем сообщение пользователя ->
Передаем сообщение в Commander.input() -> Определяем режим -> Определяем команду ->
Возвращаем ответ -> Передаем пользователю
Чтобы определить режим и команду, создадим два файла command_enum.py и mode_enum.py. С помощью них мы будем определять режимы и команды через методы класса Enum:
command_enum.py:
from enum import Enum
class Command(Enum):
""" weather """
weather = ["weather", "погода"]
""" myanimelist """
anime_top = ["top anime", "топ аниме"]
mode_enum.py:
from enum import Enum
class Mode(Enum):
default = ["Обычный режим", "default"]
translate = ["Режим переводчика", "translate"]
get_ans = 0
Для смены режимов используем [слэш(«/»)+<имя_режима>], а все остальные команды примем как команды.
Реализуем это в Commander.py:
# Перечисления команд, режимов
from command_enum import Command
from mode_enum import Mode
# Рабочие модули
from translate.yandex_translate import Translator
from weather import Weather
from myanimelist import Myanimelist
# Config
from config import yandex_translate_api
class Commander:
def __init__(self):
# Текущий, предыдущий режимы
self.now_mode = Mode.default
self.last_mode = Mode.default
self.last_command = None
# Для запомминания ответов пользователя
self.last_ans = None
# Работа с переводом
self.translator = Translator(yandex_translate_api)
def change_mode(self, to_mode):
"""
Меняет режим приема команд
:param to_mode: Измененный мод
"""
self.last_mode = self.now_mode
self.now_mode = to_mode
self.last_ans = None
def input(self, msg):
"""
Функция принимающая сообщения пользователя
:param msg: Сообщение
:return: Ответ пользователю, отправившему сообщение
"""
# Проверка на команду смены мода
if msg.startswith("/"):
for mode in Mode:
if msg[1::] in mode.value:
self.change_mode(mode)
return "Режим изменен на " + self.now_mode.value[0]
return "Неизвестный мод " + msg[1::]
# Режим получения ответа
if self.now_mode == Mode.get_ans:
self.last_ans = msg
self.now_mode = self.last_mode
return "Ok!"
if self.now_mode == Mode.default:
# Погода
if msg in Command.weather.value:
return Weather.get_weather_today()
# Топ аниме
if msg in Command.anime_top.value:
res = ""
top = Myanimelist.get_top()
for anime in top:
res += anime + " : " + top[anime] + "\n"
return res
if self.now_mode == Mode.translate:
if self.last_ans is None:
# Если язык не выбран, просим пользователя ввести
self.change_mode(Mode.get_ans)
self.last_command = msg
return "Выберите язык на который следует перевести"
elif self.last_ans == "change":
# Меняем переводимый язык
self.last_ans = None
self.change_mode(Mode.default)
else:
# Переводим
return self.translator.translate_to(msg, self.last_ans)
return "Команда не распознана!"
weather.py
import requests
from bs4 import BeautifulSoup
class Weather:
@staticmethod
def get_weather_today(city: str = "санкт-петербург") -> list:
http = "https://sinoptik.com.ru/погода-" + city
b = BeautifulSoup(requests.get(http).text, "html.parser")
p3 = b.select('.temperature .p3')
weather1 = p3[0].getText()
p4 = b.select('.temperature .p4')
weather2 = p4[0].getText()
p5 = b.select('.temperature .p5')
weather3 = p5[0].getText()
p6 = b.select('.temperature .p6')
weather4 = p6[0].getText()
result = ''
result = result + ('Утром :' + weather1 + ' ' + weather2) + '\n'
result = result + ('Днём :' + weather3 + ' ' + weather4) + '\n'
temp = b.select('.rSide .description')
weather = temp[0].getText()
result = result + weather.strip()
return result
myanimelist.py
import requests
import bs4
class Myanimelist:
@staticmethod
def get_top(count: int=5, by: str="") -> dict:
types = ["", "airing", "upcoming", "tv", "movie", "ova", "special", "bypopularity", "favorite"]
if by not in types:
return {"error: ": "Неизвестный тип!"}
html = requests.get("https://myanimelist.net/topanime.php?type="+by)
soup = bs4.BeautifulSoup(html.text, "html.parser")
res = {}
for anime in soup.select(".ranking-list", limit=count):
url = anime.select(".hoverinfo_trigger")[0]['href']
anime = anime.select(".hoverinfo_trigger")[0].findAll("img")[0]
name = anime['alt'].split(":")[1].strip(" ")
res[name] = url
return res
yandex_translate.py
import requests
from config import yandex_translate_api
class Translator:
"""
Класс-переводчик использующий API Yandex Translate
Параметры:
_key -- ключ от API Yandex.Translate
_yandex_comment -- согласовано с правилами офомления и использования API Yandex.Translate
"""
def __init__(self, key, comment=None):
"""
:param key: ключ от API Yandex.Translate
:param comment: Комментарий к каждому переводу
"""
self._key = key
if comment is None:
self._yandex_comment = "\nПереведено сервисом «Яндекс.Переводчик» http://translate.yandex.ru/"
else:
self._yandex_comment = comment
def translate(self, text, lang, to_lang=None):
"""
Переводит текст с указанного языка в другой указанный
:param text: Текст, который нужно перевести
:param lang: исходный язык
:param to_lang: конечный язык
:return: Переведенный текст
"""
if to_lang is not None:
lang = f"{lang}-{to_lang}"
main_url = "https://translate.yandex.net/api/v1.5/tr.json/translate"
response = requests.get(f"{main_url}?"
f"key={self._key}&"
f"lang={lang}&"
f"text={text}")
return response.json()['text'][0] + self._yandex_comment
def lang_identify(self, text, hint="ru,en"):
"""
Идентифицирует язык
:param text: Текст
:param hint: Подсказки для определения языка
:return: код языка
"""
main_url = "https://translate.yandex.net/api/v1.5/tr.json/detect"
response = requests.get(f"{main_url}?"
f"key={self._key}&"
f"hint={hint}&"
f"text={text}")
return response.json()['lang']
def translate_ru_en(self, text):
"""
Переводит текст с русского на английский
:param text: Текст, который нужно перевести
:return: Текст переведенный на английский язык
"""
if self.lang_identify(text) == "ru":
to_lang = "en"
from_lang = "ru"
else:
to_lang = "ru"
from_lang = "en"
return self.translate(text, from_lang, to_lang)
def translate_to_ru(self, text, hint=None):
"""
Переводит текст на русский
:param text: Текст, который нужно перевести
:param hint: Подсказки к определению языка
:return: Текст переведенный на русский язык
"""
if hint is None:
hint = "ru,en"
from_lang = self.lang_identify(text, hint)
return self.translate(text, from_lang, "ru")
def translate_to(self, text, to_lang, hint=None):
"""
Переводит текст в нужный язык
:param text: Текст, который нужно перевести
:param to_lang: Код результирующего языка
:param hint: Подсказки к определению языка
:return: Переведенный текст
"""
if hint is None:
hint = "ru,en"
from_lang = self.lang_identify(text, hint)
return self.translate(text, from_lang, to_lang)
Весь код доступен на гитхабе: github.com/AppLoidx/VkLongPollBot
Добавляем клавиатуру:
Это очень легкий процесс, осложнения могут быть вызваны, когда мы будем изменять клавиатуру под определенную сигнатуру команд, которая отличается для каждого режима.
Чтобы добавить в окне диалогов клавиатуру, необходимо в методе messages.send указать параметр keyboard, принимающий json. Выглядит это следующим образом:
vk_api.messages.send(...,keyboard=keyboard_json,...)
Или же можно передать клавиатуру прямо с файла .json:
vk_api.messages.send(...,keyboard=open(filename,"r",encoding="UTF-8").read()
Документация: vk.com/dev/bots_docs_3?f=4.%2BКлавиатуры%2Bдля%2Bботов
Рассмотрим на примере нашей программы, добавив клавиатуру.
Для начала создадим файл keyboard.json:
{
"one_time": false,
"buttons": [
[{
"action": {
"type": "text",
"label": "top anime"
},
"color": "positive"
},
{
"action": {
"type": "text",
"label": "weather"
},
"color": "positive"
}],
[{
"action": {
"type": "text",
"label": "translate"
},
"color": "default"
}]
]
}
Чтобы убрать клавиатуры необходимо передать json с пустым buttons:
{"buttons":[],"one_time":true}
Переопределим send_message в server.py:
def send_msg(self, send_id, message):
"""
Отправка сообщения через метод messages.send
:param send_id: vk id пользователя, который получит сообщение
:param message: содержимое отправляемого письма
:return: None
"""
return self.vk_api.messages.send(peer_id=send_id,
message=message,
keyboard=open("keyboards/default.json", "r", encoding="UTF-8").read())
И также в методе start:
def start(self):
for event in self.long_poll.listen(): # Слушаем сервер
if event.type == VkBotEventType.MESSAGE_NEW:
if event.object.from_id not in self.users:
self.users[event.object.from_id] = Commander()
# Пришло новое сообщение
if event.type == VkBotEventType.MESSAGE_NEW:
self.send_msg(event.object.peer_id,
self.users[event.object.from_id].input(event.object.text))
В результате получим:
Последнее слово
Не стоит использовать голый листинг исходников представленных здесь, они использованы лишь для того чтобы вы лучше понимали что происходит под капотом. Разумеется, они все юзабельны и можно использовать их по частям.
Лично я использовал такого бота для группового ассистента, который умел:
- создавать очереди из участников группы, в том числе и множество команд редактировавших очередь, таких как добавление, удаление, создание и тд.
- рассылать всем участникам сообщения
- задавал вопросы (например, по языку Java)
- давал возможность создавать заявки на обмен мест и т.п.
Проект на гитхабе
Исходники представленные здесь
Бот VK на Python 2020 года с ответами в беседу / Песочница / Хабр
Всем доброго времени суток!
Я очень долго прочесывал интернет в поисках рабочего варианта бота для ВК, разработанного на Python. Никак не мог найти ни одной нормальной, целой статьи — в одной устаревший метод, в другой непонятные ошибки и так далее…
Друзья, я решил поделиться с вами всеми теми знаниями которые приобрел и сейчас мы с вами шаг за шагом напишем хорошего рабочего бота ВК для текущего, 2020, года. Впрочем надеюсь статья не потеряет актуальности и позже.
С чего начать?
Начнем с установки необходимых библиотек. Естественно открываем cmd.exe ( в некоторых случаях может понадобиться запустить от имени администратора) и прописываем туда следующее:
pip install vk
pip install vk_api
Мы установили две библиотеки для работы нашего Python-а с сервисом VK.
Теперь запускаем IDLE и начинаем писать код.
import vk_api, vk
from vk_api.keyboard import VkKeyboard, VkKeyboardColor
from vk_api.utils import get_random_id
Объясняю: импортируем установленные ранее библиотеки и модули для работы с ними.
Авторизация
vk_session = vk_api.VkApi(token='#ВСТАВЬ СЮДА ТОКЕН ГРУППЫ СО ВСЕМИ РАЗРЕШЕНИЯМИ')
Авторизовались как группа. Важно создать такой токен, который будет разрешать отправку, прием, обработку сообщений и, в принципе, все что нам захочется.
from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType
longpoll = VkBotLongPoll(vk_session, 'ID вашей группы без кавычек')
vk = vk_session.get_api()
from vk_api.longpoll import VkLongPoll, VkEventType
Импортируем модуль longpool для работы с чатами.
Нюансы
Дело в том, что в одной программе нельзя одновременно запустить бота для ответов на ЛС и для работы в беседе, поскольку для этого используются два разных модуля longpool и как только запускается прослушивание longpool-ом на канале «ЛС»(Личные Сообщения) прослушивание другого канала, т.е. чата недоступно, пока не завершится первый процесс прослушивания. Проще говоря задачи могут выполняться исключительно последовательно, а не параллельно. Поэтому в целом коде я деактивирую часть с ЛС, заключив ее в »’ кавычки.Теперь импортируем то же самое, но для ЛС.
Lslongpoll = VkLongPoll(vk_session)
Lsvk = vk_session.get_api()
Кнопки
Теперь объявим пару функций для кнопок, которые наш бот в будущем будет выдавать по требованию. К ним мы обратимся вскоре ещё раз.
keyboard = VkKeyboard(one_time=True)
keyboard.add_button('Привет', color=VkKeyboardColor.NEGATIVE)
keyboard.add_button('Клавиатура', color=VkKeyboardColor.POSITIVE)
keyboard.add_line()
keyboard.add_location_button()
keyboard.add_line()
keyboard.add_vkpay_button(hash="action=transfer-to-group&group_id=183415444")
Прием-отправка сообщений из беседы
А теперь будем слушать longpool на предмет новых сообщений. event — переменная в которой будет храниться само сообщение и некоторые данные о нем.
for event in longpoll.listen():
if event.type == VkBotEventType.MESSAGE_NEW:
if 'Ку' in str(event) or 'Привет' in str(event) or 'Хай' in str(event) or 'Хелло' in str(event) or 'Хеллоу' in str(event):
Перевод того, что выше: Если слово «Привет» или «…» или «…» содержится в переменной event, тогда:
if event.from_chat:
vk.messages.send(
key = (''),
server = (''),
ts=(''),
random_id = get_random_id(),
message='Привет!',
chat_id = event.chat_id
)
Проверяем куда направлен наш event. Если в чат тогда вызываем метод отправки сообщений «vk.messages.send».
Внимание
… переменные key, server и ts необходимо заполнить. Эти переменные нужны для установки связи с сервером VK. Чтобы узнать эти переменные, а они у всех свои, нужно авторизованным перейти на сайт VK разработчикам и во вкладке «Пример запроса» ввести ID своей группы.
random_id — это случайный id сообщения, который в новых версиях VK_API теперь обязателен.
chat_id — это идентификатор беседы, из которой пришел event или иначе говоря сообщение.
if ‘Клавиатура’ in str(event):
if event.from_chat:
vk.messages.send(
keyboard = keyboard.get_keyboard(),
key = ('21b7e67abf6b938c8223242c37b4ff873efe1453'),
server = ('https://lp.vk.com/wh283415444'),
ts=('3539'),
random_id = get_random_id(),
message='Держи',
chat_id = event.chat_id
)
Теперь, если пользователь напишет «Клавиатура«, то наш бот щедро предоставит кнопки, о которых мы говорили ранее.
На сложном всё.
Часть с Личными Сообщениями
Теперь отпишем вторую часть для ЛС без особых подробностей.
for event in Lslongpoll.listen():
if event.type == VkEventType.MESSAGE_NEW and event.to_me and event.text:
vars1 = ['Привет', 'Ку', 'Хай', 'Хеллоу']
if event.text in vars1:
if event.from_user:
Lsvk.messages.send(
user_id = event.user_id,
message = 'Привет)',
random_id = get_random_id()
)
vars2 = ['Клавиатура', 'клавиатура']
if event.text in vars2:
if event.from_user:
Lsvk.messages.send(
user_id = event.user_id,
random_id = get_random_id(),
keyboard = keyboard.get_keyboard(),
message = 'Держи'
)
Поздравляю! Мы с вами разобрали бота на Python 2020 года. А сейчас я приведу весь код целиком.
import random, vk_api, vk
from vk_api.keyboard import VkKeyboard, VkKeyboardColor
from vk_api.utils import get_random_id
vk_session = vk_api.VkApi(token='ВСТАВИТЬ ТОКЕН СЮДА')
from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType
longpoll = VkBotLongPoll(vk_session, 'ID группы без кавычек')
vk = vk_session.get_api()
from vk_api.longpoll import VkLongPoll, VkEventType
Lslongpoll = VkLongPoll(vk_session)
Lsvk = vk_session.get_api()
keyboard = VkKeyboard(one_time=True)
keyboard.add_button('Привет', color=VkKeyboardColor.NEGATIVE)
keyboard.add_button('Клавиатура', color=VkKeyboardColor.POSITIVE)
keyboard.add_line()
keyboard.add_location_button()
keyboard.add_line()
keyboard.add_vkpay_button(hash="action=transfer-to-group&group_id=еще_раз_ID_группы")
for event in longpoll.listen():
if event.type == VkBotEventType.MESSAGE_NEW:
if 'Ку' in str(event) or 'Привет' in str(event) or 'Хай' in str(event) or 'Хелло' in str(event) or 'Хеллоу' in str(event):
if event.from_chat:
vk.messages.send(
key = (''), #ВСТАВИТЬ ПАРАМЕТРЫ
server = (''),
ts=(''),
random_id = get_random_id(),
message='Привет!',
chat_id = event.chat_id
)
if 'Клавиатура' in str(event):
if event.from_chat:
vk.messages.send(
keyboard = keyboard.get_keyboard(),
key = (''), #ВСТАВИТЬ ПАРАМЕТРЫ
server = (''),
ts=(''),
random_id = get_random_id(),
message='Держи',
chat_id = event.chat_id
)
'''
for event in Lslongpoll.listen():
if event.type == VkEventType.MESSAGE_NEW and event.to_me and event.text:
vars1 = ['Привет', 'Ку', 'Хай', 'Хеллоу']
if event.text in vars1:
if event.from_user:
Lsvk.messages.send(
user_id = event.user_id,
message = 'Привет)',
random_id = get_random_id()
)
vars2 = ['Клавиатура', 'клавиатура']
if event.text in vars2:
if event.from_user:
Lsvk.messages.send(
user_id = event.user_id,
random_id = get_random_id(),
keyboard = keyboard.get_keyboard(),
message = 'Держи'
)
'''
P.S. Ключевые слова, по которым ведется поиск в переменной event будут строгими. Т.Е. если вы сделаете ключевым слово «Ап», то слова «Апостроф», «Аптека» и даже «ап» не будут найдены.
Всем удачи!
проработка сценария и выбор конструктора
- Акции
- Продукт
Продукт
Отчеты BI
Лингвогенератор
Импорт лидов из соцсетей
Бид-менеджер
Автоматические рекомендации
Мониторинг конкурентов
в Facebook Ads Генератор UTM‑меток Все инструменты - Услуги Услуги агентства Помощь на старте
- Тарифы
- Агентствам и фрилансерам
- Обучение Вебинары Курсы Блог
- Контакты
- Акции
- Продукт
Продукт
Отчеты BI
Лингвогенератор
Импорт лидов из соцсетей
Бид-менеджер
Автоматические рекомендации
Мониторинг конкурентов
в Facebook Ads Генератор UTM‑меток Все инструменты - Услуги Услуги агентства
Как создать чат-бота в ВК: самая подробная инструкция
Для того чтобы облегчить работу в социальных сетях, можно подключить автоматического помощника и делегировать часть обязанностей. Есть несколько вариантов, как создать чат-бот в ВК и других социальных сетях. Выбор сервиса зависит от уровня подготовки пользователя и цели создания самого чат-бота.
Но на самом деле все не так сложно, как кажется. Необходимо понять, что именно будет делать бот, на какие вопросы посетителей будет предлагать ответы.
Содержание:
Конечно, вариант создания бота на Питоне – не для новичков. Здесь необходимо знание языка программирования. Поэтому рассмотрим несколько не сложных способов, как быстро и бесплатно создать незаменимого помощника для работы.
Полезные ссылки: Сенлер рассылки ВК: самый подробный обзор сервиса, Донаты в ВК: шпаргалка по подключению и настройке, Как создать чат бота в Телеграмме: пошаговый гид.
Группы чат-ботов: выбираем одну из трех
Итак, чат-боты – это уже готовые программы, которые выполняют свои функции автоматически. Конечно, работа помощника зависит от его способностей и обязанностей.
Сами боты можно разделить на три большие группы:
- По принципу работы. Совсем простые боты выполняют какую-либо одну обязанность. Они умеют высылать сообщения по четким кодовым фразам или командам. Если пользователь допустит ошибку, то бот не сможет выдать информацию. Он – сломается. Продвинутые боты могут поддерживать диалог, не зависимо от наличия кодовых слов. Их в основном используют не для простых действий, а для беседы с посетителем. Они основаны на искусственном интеллекте, улавливают нить беседы. И даже не будут молчать, а ответят на любой уникальный вопрос собеседника. Пример такого продвинутого бота – «Алиса» от Яндекса.
- По способу коммуникации. Текстовые чат-боты понимают только вариант введения сообщения текстом. В ответном сообщении могут выслать текст, файл. «Командные» чат-боты предлагают собеседнику выбирать команду. И уже в зависимости от этого выдает нужную информацию. Встречаются комбинированные боты, в которых удачно сочетаются текстовые сообщения и управление при помощи команд.
- По функционалу самого бота. Самые простые помощники могут ответить на конкретный вопрос, выдать нужную информацию. От них ничего больше и не требуется. Более сложные боты могут взаимодействовать даже с системой ведения бизнеса: передавать данные заказа, высылать реквизиты для оплаты. Помогут выбрать или подобрать определенный товар, предложит посмотреть каталог продукции.
Итак, самые простые чат-боты собрать самостоятельно достаточно быстро, без знания языков программирования. Достаточно сделать несколько подготовительных шагов, чтобы этап сборки чат-бота прошел быстро и без ошибок.
Начните с архитектуры
Архитектура чат-бота – это сценарий, по которому он будет работать. Все зависит от того, что именно будет делать этот автоматический помощник: отвечать на сообщения или помогать выбирать что-то на сайте.
Итак, для начала необходимо продумать весь диалог. О чем может спросить посетитель, что его заинтересует, как ответить на возражения. Или же на этом моменте подключится менеджер и доведет общение до логического завершения.
Чтобы построить умного и работоспособного бота, необходимо:
1. Понять цель работы чат-бота
Ведь в любом случае работа без цели не принесет никакого результата. Это будет бессмысленно. Зачем нужен этот помощник: выполнять какие-то функции, взять на себя рутину?
На этом этапе необходимо провести анализ. Уточнить самые популярные вопросы, которые задают посетители сайта, группы в социальных сетях. Выписать все возможные ответы на эти вопросы. Ведь зачастую переписка и ответ на те же самые вопросы отнимает достаточно много времени у менеджеров и администраторов.
2. Обозначить задачи чат-бота
Что именно должен выполнять автоматизированный помощник? Как он может оптимизировать время работы сотрудников? Какие функции ему можно делегировать и не волноваться за эффективность выполнения?
3. Создать меню
Выписать все те функции, которые будет выполнять чат-бот. Исходя из этого, уже можно подбирать сервис по созданию ботов.
4. Сгруппировать все сообщения и вопросы
Для группировки лучше воспользоваться интеллект-картами. Так не получится пропустить что-то важное. Визуально же получится создать структуру вопросов посетителя и возможных ответов бота.
5. Пересечение между цепочками
Диалог с посетителем должен с чего-то начинаться и чем-то заканчиваться. Цепочки вопросов и ответов могут пересекаться между собой. Важно понять, как не дать этому диалогу зайти в тупик и оборваться. Всегда бот должен вывести посетителя к своей цели: оформление заказа, помощь в выборе модели или какой-либо другой.
Если же у диалога есть вероятность зайти в тупик, то дать возможность посетителю вернуться на один или несколько шагов назад. Это поможет не упустить потенциального клиента и задержать его в группе или на сайте.
Только после того, как выполнены все эти предварительные шаги, можно переходить к выбору площадки. Уже есть понимание о том, что и как должен выполнять бот.
Выберите подходящую площадку
Итак, разработчикам не составит труда создать уникальный чат-бот на Питоне. Но рядовому пользователю лучше воспользоваться специальным сервисом, так как в этом случае не нужно знание языков программирования.
Сервисов для создания чат-ботов достаточно много. Они различаются по функционалу, тарифным планам. Важно выбрать тот, который полностью отвечает требованиям.
- Определить канал коммуникации. Как именно будет взаимодействовать бот с посетителем, в какой социальной сети. Важно понимать, где именно находится целевая аудитория. Если больше времени проводят в Вконтакте, то лучше общаться через Сенлер, если же Фейсбук, то через Маничат.
- Выбрать оптимальный тариф. Обратить внимание на те функции, которые предлагаются в пакете того или иного тарифа. Что именно сможет делать бот, какое количество сообщений и писем он сможет отправить. От этого количества зачастую зависит и стоимость.
- Проверить статистику. Необходимо отслеживать все данные, чтобы вовремя вносить корректировки в работу ботов. Открываемость писем и сообщений, кликабельность, количество подписчиков и прочее.
- Проверить работу технической поддержки. Особое внимание обратить на длительность пауз между вопросом и ответом, как часто находятся в онлайн, есть ли чат с поддержкой.
- Откатать демо-версию. Некоторые сервисы предлагают попробовать бесплатно работу бота, отвечающего на сообщения. Это тестовый период, на время которого дается полный доступ.
- Наличие дополнительных материалов. Если есть видео или текстовые инструкции по работе с сервисом, то это значительно экономит время для создания работоспособного бота.
Важно понимать, что от безупречной работы бота многое зависит. Насколько быстро посетитель получит нужную информацию. Дойдет ли он до оформления заказа или до подключения ответственного администратора, менеджера.
Как собрать чат-бот на Сенлере?
Самый оптимальный вариант для создания бота – Сенлер. Даже на бесплатном тарифе он может полноценно работать, хотя количество сообщений ограничено – 150 отправлений в сутки. В это количество входят письма в рассылке по базе и сообщения, отправленные ботом.
Для начала работы необходимо авторизоваться в социальной сети Вконтакте. Затем подключить выбранное сообщество к Сенлеру. Однако подключить сообщество может только администратор.
После подключения сообщества можно переходить к созданию бота. Выбрать из меню Сенлера раздел «Чат-боты», нажать на кнопку «Новый бот». Придумать ему название и сохранить. Имя бота не будет отображаться при работе с посетителями. Это техническое название для администратора сообщества.
После этих начальных шагов появится предупреждение о том, что необходимо включить боты в сообществе. Необходимо следовать всем подсказкам на данном этапе. Это не сложно, но нужна внимательность.
Итак, бот создан. Как его собрать?
- Необходимо перейти в редактор ботов, чтобы настроить его работу.
- Сразу будет отображаться кнопка «Начало» и первый шаг в виде небольшого окна. Чтобы увеличить или уменьшить масштаб отображения, необходимо нажимать на «+» или «-» в правом верхнем углу экрана.
- В качестве эскиза работы бота необходимо взять ту самую интеллект-карту с рассортированными вопросами и ответами бота.
- Для редактирования первого шага нужно нажать на окно, откроется панель для редактирования. Здесь можно изменить название этого шага. Это техническое название, которое поможет ориентироваться в созданном чат-боте. Если на этом шаге необходимо выслать документы, сообщение или ссылку на какой-то ресурс, то все это можно указать в окне редактирования. Если же важно поставить одну или несколько кнопок, то достаточно выбрать соответствующий пункт. Если пользователь нажмет на определенную кнопку, то будет выполнен конкретный шаг, привязанный к боту. Все это можно настроить в данной панели.
- После внесения всех корректировок, необходимо сохранить изменения. Важно не создавать сниппет и считать переходы по ссылке.
- Если же какой-то определенный шаг нужно удалить, то достаточно нажать иконку в виде корзинки.
- Для добавления следующих шагов нужно нажать на крестик в правом нижнем углу окна. Выбрать именно то действие, которое необходимо: для выполнения действия через какое-то время – таймер. Если выбрать пункт «Действие», то можно подключить любое действие из меню. Пункт «Сообщение» позволит добавить отправку следующего сообщения этой же цепочки. Если задать «Условие», то бот будет выполнять следующий шаг при соблюдении этого условия. В любом случае необходимо сначала добавить иконку шага в редакторе, кликнуть по выбранной кнопке из выпадающего меню.
- Когда сборка бота будет закончена, нужно нажать кнопку – «Опубликовать». Активация бота происходит при нажатии кнопки «Запустить». Если есть сомнения в работоспособности бота, можно нажать кнопку «Тестировать». Все сообщения от бота будут приходить в личке.
- Важно помнить, что после введения всех необходимых шагов, необходимо указать очередность. Связать блоки достаточно просто: сначала нажать на кружок сбоку первого блока и тянуть полученную стрелку к следующему блоку. И так продолжить связывать все блоки, соблюдая очередность, пересечения.
После того, как внесены все изменения – обязательно сохранить и активировать бот. Без активации бот работать не будет.
Для того чтобы выйти из режима редактирования, необходимо нажать на стрелку в левом верхнем углу. Уже после этого тестировать работу бота и своевременно вносить корректировки.
В Сенлере активный бот выделен зеленым цветом и галочкой, а неактивный – синим. Если нужно запустить бота или внести изменения, то достаточно кликнуть на название. И в открывшемся меню выбрать нужный пункт или нажать на кнопку «Активировать».
Кстати, бот можно собрать так, что он будет работать только для группы подписчиков. Эту группу можно выделить из уже имеющейся базы подписчиков в Сенлере, применяя различные фильтры.
После такой выборки подписчиков нужно добавить в бота. Кликнуть по кнопке «Бот» и выбрать «Добавить в бота». Количество переносимых подписчиков отобразится в окне с предупреждением.
Но гораздо проще создать новую группу подписчиков, настроить бота и привязать его. Оформить страницу подписки и начать продвижение группы в социальной сети.
Итак, есть очень много вариантов, как создать чат бота в ВК, бесплатно или за символическую стоимость. Но следует обращать внимание на основные моменты: соответствие ценовой политики и предоставляемого функционала.
С уважением, Ольга Лялюкова
специально для проекта proudalenku.ru
Что такое бот в ВК в группе и зачем он пишет в комментариях
В этой статье мы попытаемся максимально просто и доступно объяснить, что такое бот в ВК в группе. Сразу поясним, данный инструмент доступен только для сообществ, в личных профилях он не работает.
Бот – это сокращенный вариант написания слова «робот».
Таким образом, можно сказать, что это такой механический помощник, запрограммированный на выполнение определенных задач. Чаще всего – рутинных и однообразных. Роботов называют программами, но корректнее сказать — это специальный код, созданный для конкретной цели. Он умеет реагировать на заданные ключевые фразы, подбирая к ним заранее прописанные ответы. Некоторые боты настроены настолько грамотно, что люди, пришедшие в группу, даже и не догадываются, что общаются с искусственным интеллектом.
Итак, подытожим вышесказанное, ответим, что такое бот в ВК и зачем он нужен для группы!
Это простейший автоматизированный менеджер, который функционирует на основе прописанных заранее реакций. Это механический робот, который прекрасно справляется с простейшими задачами. Он разгружает администратора группы, выполняя за него огромный объем рутинных дел, при этом, никогда не устает, ничего не забывает, и обладает неиссякаемой работоспособностью!
Есть и другой вид ботов в группах — это фейковые профили, которые создаются для рассылки спама или накрутки лайков, комментов, репостов, подписчиков и т.д. Они управляются живыми людьми, но по факту — являются «мертвым» балластом, который рано или поздно потопит группу. Распознать сообщество, в котором участвуют одни лишь такие боты — легко. Как правило, там огромное количество участников, но при этом — нулевая обратная связь.
Для чего они нужны группе?
Поговорим о программных роботах. Если вас интересует, для чего в ВК нужен такой бот, значит вы никогда не сталкивались с ведением или администрированием крупной группы в соцсетях. Большой площадки, где ежеминутно поступают новые запросы на дружбу, появляются свежие комментарии, вопросы, уточнения и т.д. Каждое такое действие требует ответной реакции админа группы ВК – нужно подтвердить заявку, пообщаться с новичком, ответить на коммент или вопрос, не забыть про важное мероприятие, корректно провести конкурс (присвоить номера участникам и т.д.). А еще, параллельно, осадить грубиянов, сделать рассылку о новостях, акциях или скидках, дать развернутое описание деятельности группы и т.д. И все это, не забывая про, собственно, ведение группы. Про продвижение, публикацию нового контента, составление плана мероприятий и другие насущные вопросы.
Представьте себе, все эти мелкие задачи за вас будет выполнять трудолюбивый помощник. Маленький невозмутимый робот, который не забудет ни об одном поручении! Бесплатный, готовый работать круглосуточно, без больничных, ПМС и похмелья! Вам завернуть?!
Что в группе делают роботы?
Итак, повторимся! Вот что делает ВК бот – он реагирует на заданные сценарии подходящим поведением. При этом, существует огромное количество видов роботов, с самым разным уровнем сложности:
- Чат-боты предназначены для ведения простейших бесед в группе. Они отвечают на популярные вопросы (реагируют на ключевые слова), вовлекают пользователей в переписку, стимулируют активность в комментариях;
- Отправляют новым подписчикам паблика сообщение-приветствие, информируют о тематике группы;
- Делают рассылку новостей, обновлений, прогнозов;
- Дают развернутые консультации о товарах и услугах;
- Помогают проводить в ВК конкурсы, опросы;
- Боты-секретари могут выполнять запрограммированные действия: вызывать такси, заказывать пиццу, пересылать файлы, узнавать курсы валют, погоду, новости и т.д.;
- Более серьезные программы обладают навыками мониторинга и анализа. Они составляют бизнес прогнозы, просчитывают оптимальные решения;
- Игровые боты созданы для развлечения, например, боты для знакомств, совместных игр, проведения шутливых тестов;
- Некоторые программки создают мошенники, увы, с целью умышленного причинения ущерба пользователям ВК. Также, существуют предприимчивые граждане, которые с помощью таких роботов оказывают посреднические услуги с целью заработка. Яркий пример – многочисленные займ-боты, предлагающие оформить быстрый кредит, якобы прямо через соцсеть. Об этом у нас есть целая статья!
Что обычно пишут боты в группах ВК?
Итак, мы разобрались, что такое чат боты Вконтакте и для чего они нужны группе. Теперь рассмотрим, что они обычно пишут пользователям. Разумеется, это зависит от вида деятельности той или иной программы. Если она запрограммирована на консультирование о товарах и услугах, разумеется, будет писать об этом. Бот отреагирует на ключевую фразу в вопросе клиента и подберет подходящий ответ из списка. А дальше, станет задавать наводящие вопросы, для более широкого раскрытия темы.
Если вы выберете в каталоге сервисов программку для знакомств, найдёте себе собеседника для общения. Многих, кстати, интересует, что такое анонимный чат бот в ВК, так вот – это оно и есть. Запускаете приложение (находите его в Сервисах), жмете «Старт» и ждете вторую половинку. Бот в этом время подбирает для вас второго собеседника из числа тех, кто также, как и вы запустил данную прогу. Общение происходит анонимно – если сами не назоветесь, оппонент не узнает вашего имени. В данной ситуации робот выполняет роль посредника, который не участвует в беседе, но занят ее организацией.
Что еще пишут боты в ВК, спросите вы, и мы ответим – да все, что угодно! Создать помощника для своей группы сегодня сможет любой «чайник». С помощью бесплатных сервисов (коих десятки) и готовых шаблонов, ему останется лишь прописать реакции и варианты ответов. К слову, именно от этого зависит, насколько искусным окажется ваш робот – сможет ли он обмануть живого человека.
С одной стороны, все понимают, зачем в ВК нужны боты, например, в комментариях. Но с другой, когда мы осознаем, что разговариваем с машиной, нам неизбежно становится неприятно. Роботы не способны уловить сарказм, юмор, проявить хоть какую-то эмпатию. В результате, как бы админ группы не старался, создавая шаблоны, механический помощник все равно общается скудно и только в рамках записанных в его коде текстов.
Кому в ВК нужны роботы?
Теперь, когда вы знаете, что такое чат боты Вконтакте, должны также понимать кому они нужны. Это идеальный софт для выполнения однообразной, но такой важной для продвижения группы работы.
Если вы все еще не понимаете, зачем в ВК иногда пишут не люди, а боты, попробуйте одновременно ответить на 20 сообщений, принять 10 запросов на дружбу, своевременно отреагировать на 45 комментариев, да еще и не забыть про завтрашний конкурс репостов, в котором уже приняло участие более 2 тысяч пользователей!
Каково? Конечно же, боты нужны администраторам, для качественного маркетинга и продвижения группы. Ну, и обычным людям, которым иногда становится скучно.
Ну что же, теперь вы знаете, зачем в ВК в комментариях пишут боты, но не переживайте, что живое общение канет в лету. Конечно же, оно по-прежнему в приоритете. И вообще, любой грамотный админ знает, для оптимального продвижения любой группы, ботам нужно поручать лишь простейшие функции. Основную же работу должны выполнять живые люди – ведь настоящий разговор никогда не сравнится с искусственным! И, да, подписчики тоже должны быть реальными — настоящими людьми с активными профилями!
Похожие статьи:
команд Discord — функции чата и ботов [Список 2020]
Discord — лучший инструмент общения для геймеров и онлайн-сообществ. Чтобы улучшить свой опыт на платформе, вы можете использовать включенные команды или добавить ботов с модерацией, весельем и разными командами.
Как и большинство функций в Discord, вы можете настроить команды, специфичные для ролей, чтобы минимизировать спам и обеспечить эффективную работу. В этом посте будут рассмотрены различные типы команд, которые вы можете использовать в Discord, включая те, которые поставляются с двумя очень популярными ботами; бот MEE6 и бот Dyno.
Списки команд Discord
Основные команды чата в Discord
Базовые команды Discord можно использовать в чате Discord без использования бота. Эти команды используются, чтобы сделать ваш чат на платформе более увлекательным и интересным. Самое приятное в этих командах чата то, что вы можете легко увидеть их в программе, просто набрав символ /.
Вот список команд чата Discord:
Команды чата в Discord MEE6
MEE6 предоставляет множество полезных инструментов для серверов Discord, таких как возможность настраивать роли реагирования, слушать музыку, записывать mp3-файлы вашего голоса и многое другое.Бот также дает вам возможность использовать свои собственные команды, команды модерации и команды поиска.
Здесь мы рассмотрим все три вида команд:
Как создавать собственные команды MEE6
Чтобы создать собственные команды с помощью MEE6, вам необходимо выполнить следующее:
Шаг 1: Войдите в свою панель управления MEE6.
Шаг 2: Выберите сервер Discord, для которого вы хотите создать собственные команды, нажав кнопку «Перейти к панели инструментов».”
Шаг 3: Щелкните вкладку «Пользовательские команды» в меню.
Шаг 4: Нажмите «Создать команду» в следующем меню.
Шаг 5: Введите имя команды после восклицательного знака в соответствующем поле. Сделайте их краткими и простыми, чтобы облегчить их использование.
Шаг 6: Введите ответ в соответствующее поле. Когда кто-то вводит команду, бот должен ответить этим текстом.
Шаг 7: При желании введите описание команды, разрешенные / запрещенные роли, запрещенные каналы или время восстановления о том, как часто их можно использовать.
Шаг 8: Нажмите кнопку «Добавить» в нижней части экрана.
Шаг 9: Протестируйте пользовательскую команду на своем сервере Discord.
Команды модерации бота MEE6
Вот список лучших команд модерации MEE6 Bot:
Команды поиска ботов MEE6
Вот список лучших команд поиска MEE6 Bot:
Команды Discord для Dyno Bot
Dyno Bot — один из лучших ботов Discord для платформы.В нем есть десятки команд, которые можно использовать для модерации и развлечения. От управления сервером до игры «камень-ножницы-бумага» — эти команды улучшат ваш опыт общения в чате на платформе.
В этом списке представлены наши любимые команды модерации, развлечения и прочие команды из полного списка команд Dyno:
Команды модерации Dyno Bot
Вот список лучших команд модерации Dyno Bot:
Забавные команды Dyno Bot
Вот список лучших забавных команд Dyno Bot:
Dyno Bot Разные команды
Вот список лучших различных команд Dyno Bot:
Заключение
Команды чатаDiscord — отличный способ улучшить ваш опыт общения в чате на платформе.Вы можете ограничить определенные команды определенными ролями, чтобы никто не злоупотреблял системой и не рассылал спам в чате.
Об авторе
Люси
Люси — писательница, писатель-фрилансер и активный блогер. В душе журналистка, она любит брать интервью у представителей игрового сообщества, прокладывающих путь интересным оригинальным контентом.
Команды | Информация |
---|---|
! Addcmd | Добавляет команду канала, где |
! Delcmd | Удаляет команду канала.(например,! delcmd! testcmd) |
! Editcmd | Это редактирует команду канала. (например,! editcmd! testcmd Это отредактированное тестовое сообщение) |
! Add | Добавить указанное количество баллов определенному пользователю или всем. (например! добавить 100 экспертов онлайн;! добавить 5 всех) [только уровень модификации 2] |
! Add custom | Добавить указанное количество баллов к определенному классу пользователей онлайн или всем (например,г. ! добавить заказ 2 10%) [Только уровень модификации 2] Варианты классов пользователей: 1. Все зрители, 2. Все VIP, 3. Все VIP + моды, 4. VIP Silver + VIP Gold, 5. VIP Silver + VIP Золото + моды, 6. VIP золото, 7. VIP золото + моды, 8. Только мод |
! Addautohost [поток] | Эта команда добавляет поток к функции автоматического хостинга. (например,! addautohost ExpertsOnline) [только уровень модификации 2] |
! Delautohost [поток] | Эта команда удаляет поток из функции автоматического хостинга.(например,! delautohost ExpertsOnline) [только уровень модификации 2] |
! Addvideotoblacklist [VideoID] | Эта команда помещает в черный список определенные видео YouTube, чтобы предотвратить их добавление в список запросов песен. |
! Addusertoblacklist [Имя пользователя] | Эта команда запрещает конкретному пользователю запрашивать песни. |
! Check | Проверить баланс валюты потока для указанного пользователя.(например,! проверьте expertonline) |
! Renameuser <старое имя> <новое имя> | Измените имя пользователя в базе данных на другое имя пользователя Twitch. (например,! renameuser expertsoffline expertsonline) [только уровень модификации 2] |
! Highlight | Отметка времени для определенной части потока для выделения основных моментов потока. Он сохраняет его в журнале основных моментов в папке Deepbot Folder> Log. (например,! выделить FunnyMoment) |
! Playnextsong | Воспроизводит следующую песню в списке воспроизведения. |
! Playprevsong | Воспроизведение предыдущей песни в списке воспроизведения. |
! Playsong | Включает / возобновляет музыку. |
! Pausesong | Приостанавливает воспроизведение текущей песни. |
! Removesong [x] | Удаляет песню из списка воспроизведения по ее номеру в очереди. Например,! Removesong 5 удалит 5-ю запрошенную песню. (Это работает, только если вы используете внутренний проигрыватель YouTube.) |
! Allow | Разрешает пользователям публиковать ссылки, когда включена защита ссылок. |
/ r или / w | Отвечайте на шепот на вкладке «Чат». (например, / r ответит на последний шепот, в то время как / w |
! Remove | Удаляет указанное количество точек у пользователя.(например! удалить 100 экспертов онлайн) [только уровень модификации 2] |
! Resetcounter | Сбрасывает счетчик команды. |
! Startarena | Mode 1 — это Knockout Arena, где |
! Startautohost | Запускает автохостинг. [только уровень модификации 2] |
! Startguessinggame [название предустановки] | Команда для модов, запускающая игру в угадывание. (например,! startguessinggame [название предустановки]) |
! Stopautohost | Останавливает автоматический хостинг. [только уровень модификации 2] |
! Top [x] | Отображает [x] пользователей с наибольшим объемом валюты потока. [x] должен быть числом от 1 до 14. |
! Tophours [x] | Отображает [x] пользователей с наибольшим количеством часов просмотра.[x] должен быть числом от 1 до 14. |
! Topranks [x] | Отображает [x] пользователей с наивысшими рангами потока. [x] должен быть числом от 1 до 10. |
! Updategame | Обновляет текущую потоковую игру / действие. [только уровень модификации 2] |
! Updatetitle | Обновляет заголовок текущего потока. [только уровень модификации 2] |
! Volume | Проверяет текущую громкость внутреннего проигрывателя YouTube. |
! Volume [x] | Устанавливает громкость внутреннего проигрывателя YouTube. [x] должен иметь значение от 1 до 100. |
Пользовательский чат 💬 команды для вашего бота Twitch
Документация Moobot
› Команды чата
Особенности
- Запросы песни
- Лояльность к сообществу
- Распознавать новых собеседников
- Пользовательское фирменное имя бота
- Модернизированный хостинг канала
- Автоматическая реклама Twitch
- Оповещения в чате Twitch
- Ваш Moobot в Discord
Основные характеристики
Команды чата
- Введение в команды чата бота Twitch
- Пользовательские команды чата
- Встроенные команды чата
- Автоматическая отправка сообщений чата
- Команды чата с несколькими именами
- Создание собственных команд чата
Модерация
- На модерацию
- Фильтры сообщений
- Белый список
- Внесение в черный список
Сообщество
- Подарки
- Опросы
- Уведомления
Разрешения
- Редакторы и группы разрешений
Управление пользователями
- Уровни
- Регулярные
Интерфейс
- Ваша приборная панель
Разное
- Как использовать Moobot
- MoobotPlus
- Очков Moobot
- Ассистент Moobot
- Импорт и экспорт