Как управлять ботом в телеграмме
Общие моменты настройки ботов в Телеграм
Боты в Телеграм – это специальные аккаунты, работающие через API мессенджера, которые позволяют выполнять множество различных функций. Часть из них выступает в качестве дополнений для каналов и групп: игры и викторины, боты поисковых систем, курс валют, создание опросов и т.д. Чтобы чат обладал дополнительным функционалом нужно знать, как настроить бота в Телеграм, это даст много плюсов развитию канала.
Также существуют боты, используемые для автоматизации бизнес-процессов: продаж, сбора и обработки заявок. Их используют различные интернет-магазины и другие коммерческие аккаунты, занимающиеся продвижением своего бизнеса в Telegram.
Для грамотного их функционирования необходимо заниматься настройкой роботизированных аккаунтов: задать команды, с помощью которых они будут выполнять свои основные функции.
Примером того, для чего нужна настройка подобных аккаунтов является канал, посвященный тематике бизнес идей.
Владелец канала создал собственного бота для автоматической публикации контента. Для реализации своей задумки он занялся настройкой бота путем программирования команд, с помощью которых будет производиться публикация контента.
Так как для этого нужны знания PHP он нанял нескольких программистов. После того, как настройка бота была завершена весь процесс управления его функционалом производится с помощью специальных команд: /start – для запуска, /setdate – установка даты для публикации материала, /settime – установка времени.
Это позволило администратору данной площадки упростить процесс публикации контента.
Настройка бота Телеграм
После этого нужно начать его настройку. Весь рабочий процесс производится с помощью специальных команд, которые вводятся через знак «/».
Для этого напишите в переписке /settings.
Перед вами откроется меню настроек. Здесь вы можете установить город, по которому будет производиться поиск информации, подключить мобильные подписки или открыть дополнительное меню.
В меню появятся дополнительные функции, которые вы также можете наблюдать в поисковой системе Яндекс: Новости, Переводчик, Курсы валют и т.д.
Как настроить ботов Телеграм через профиль
Второй способ, как можно открыть меню настроек – нажить на иконку из трех точек в правом верхнем углу.
В открывшемся меню выберите пункт «Показать профиль».
В окне информации нажмите «Настройки».
В случае с приложением для мобильных устройств выполните следующие действия:
Главное, что следует помнить – не во всех ботах есть возможность настроек, так как не все разработчики позволяют вносить правки другим пользователям.
Настройка ботов с помощью BotFather
Вы можете создать нового бота и задать свои функции и команды. Для этого вам понадобится аккаунт @BotFather.
Найдите его в поиске приложения Телеграм и откройте.
Здесь вы можете перейти по ссылкам и получить подробную информацию о том, что такое боты в Telegram и API. Если у вас есть какие-либо вопросы касательно работы с API бота, то вы можете обратиться в техническую поддержку @BotSupport.
Для начала работы нажмите запустить. Перед вами откроется полный список команд для управления BotFather: создание и настройка ботов.
Введите команду /newbot в чат.
Дальше система попросит вас указать его название. Введите команду /setname и укажите имя.
После этого система оповестит об успешном завершении процесса установки имени.
Теперь нужно указать описание. Для этого введите /setdescription.
Сделайте небольшое описание: укажите, какие функции будет выполнять бот, можно написать пару слов о разработчике или о том, кому этот аккаунт будет полезен.
Создаем и настраиваем дополнительные функции боту
Теперь перейдем к установке аватарки для нашего акаунта. Для этого нужно ввести /setuserpic. После того, как команда введена – прикрепите фотографию.
Нажмите на иконку скрепки в левой части ввода сообщений (в приложении на смартфонах иконка расположена справа) и выберите изображение с вашего компьютера или мобильного устройства.
На этом процесс установки аватарки завершен.
Теперь перейдем к главным настройкам – установка комманд, которые будут поддерживаться ботом.
Чтобы начать этот процесс введите /setcommands в чате. Команды вводятся без знака «/». Вводите их в формате command1 – description.
Этот этап завершает процесс создания. Конечно, вы можете производить более тонкие настройки – добавить игры, новые команды и т.д.
Теперь вы можете пользоваться созданным ботом: добавить его в свой чат или канал, заниматься продвижением, публикуя ссылки на форумах или добавляя аккаунт в различные каталоги.
У созданного вами аккаунта имеются три глобальные команды:
Общие проблемы
Многие начинающие пользователи сталкиваются с различного рода трудностями при настройке ботов. По этой причине следует рассмотреть общие проблемы, а также варианты их решения. Это позволит вам избежать трудности в дальнейшем или же оперативно с ними справиться.
Не срабатывают команды. Иногда появляется такая проблема, что на некоторых ботах не работают команды, которые отвечают за процесс настроек. Если это аккаунт, созданный не вами, а другими пользователями Telegram, то причинами этого могут стать:
В первом случае вам нужно узнать, верно ли введена команда. Во втором случае – свяжитесь с разработчиком бота и сообщите ему о проблеме. Контактные данные о разработчике можно найти в описании аккаунта. Если он удалил возможность настроек, он сообщит вам об этом или исправит эту ошибку в случае возникновения бага в коде.
Если команды не срабатывают в боте, созданном вами через FatherBot, то вам нужно снова задать ее через синтаксис /setcommands. К сожалению, иногда случаются баги, из-за которых некоторые команды исчезают и их нужно указать заново.
Данное руководство позволит вам производить настройку не только чужих ботов, но и своих аккаунтов, которые создаются с помощью BotFather, главной особенностью которого является то, что вам не нужны навыки программирования для внесения правок. Весь рабочий процесс происходит с помощью специальных команд.
Как быстро и легко создать и настроить Telegram бота
Увидев эту статью решил более подробно рассказать об одном из способов создания бота в мессенджере Telegram и поделиться своим личным опытом создания, оформления и настройки.
Чтобы не терзать вас в неведении о моих успехах за 3 месяца работы, вот:
Для начало обязательно должен предупредить об ограниченном функционале бота, которого вам должно хватить, но возможно дальнейшее расширение посредством программирования, к которому я не прибегнул.
Процесс создания бота занимает не более одной минуты.
Бот создан, но его необходимо оформить и настроить.
Тут тоже все просто. Для этого необходимо 4 команды:
Все команды отправляем @BotFather
Если все же возникли трудности то вотвидеоурок
Этот раздел мог быть в разы больше, но я ограничусь основами, таких как создание команд, автопостинг и формы.
Сначала распишу зачем нужны команды. Они являются основой всех ботов. Вот так они будут выглядит:
Еще их можно вызвать через “слэш”.
Подключается командой “/autoposting” в вашем боте. Она позволяет автоматически копировать посты с VK, YouTube, Twitter и RSS ленты.
P.S. Для продвижения бота использовал стикер пак
TelegramBot. Базовый функционал. Мухи отдельно, котлеты отдельно. (Часть 2)
Продолжаем разрабатывать базовый функционал для бота в телеграм. В предыдущих частях обсуждался момент, что работу бота по получению сообщений, обработке и отправке нужно разделять. Давайте попробуем с помощью базовых инструментов Java Core сделать нашего бота многопоточным и асинхронным. Придумаем ему такое задание, которое занимает очень много времени на обработку. Рассмотрим как работают команды в телеграмме и как их нужно обрабатывать.
Это продолжение первой части статьи по программированию ботов для телеграмм на Java
TelegramBot инструкция по созданию базового функционала для бота. (Часть 1)
Кому интересно дальше, милости прошу под кат…
Сразу скажу, в этой части добавлено сразу много всего и по-тихоньку мы с вами разберем всю ту функциональность, что позволила боту суметь в многопоточность и зачем она ему вообще нужна.
Как обычно с главного:
Весь готовый код по этой статье вы можете найти в ветке Part2-Handlers в гит-репозитории.
Код полностью рабочий, достаточно склонироваться, изменить данные для авторизации бота(имя и токен) и запустить метод main в классе App.class.
Обратите внимание, данный класс при старте бота отправляет уведомление админу бота о том, что бот стартовал. ID админа бота также указывается в классе App.class и если вы его не измените — ваш бот будет пытаться слать сообщения мне 🙂
А дальше по пунктам разберем те изменения, которые появились после выхода первой части.
Обработка команд
Давайте для начала разберемся с таким понятием, что такое вообще команда в системе общения с телеграм ботом. В зависимости от настроек бота, он может либо видеть любые сообщения любого формата либо только специально оформленные команды. В чем отличие и
где можно встретить эти варианты сообщений.
Вызвав команду /myBots выберите вашего бота и дальше кнопка «Edit Bot»
Вы получите такое окно, где будут показаны все параметры бота и дальше можно настроить весь его интерфейс и указать с какими командами ваш бот умеет работать.
Задаются они вот в таком формате:
И после этого при начале ввода команды вашему боту — он будет показывать помощь со списком перечисленных команд:
И есть еще один нюанс. В группе может присутствовать несколько ботов и если у них есть общие команды(а общие команды обязательно будут, те же start и help реализованы у большей части ботов), то к самой команде обязательно будет добавлена часть, сообщающая к какому боту эта команда относится. И выглядеть команда полностью будет вот так:
/start@test_habr_bot
И вот зная все эти нюансы, давайте создадим с вами такой вариант обработки, который должен понимать команды, начинающиеся с наклонной черты и умеющий отличать адресована ли команда именно вашему боту или какому-то другому.
Создадим package, который у нас будет содержать классы, ответственные за обработку команд.
package com.example.telegrambot.command
В классе Command мы перечислим все команды, которые должен уметь понимать наш бот.
Как вы видели ранее, я у @BotFather указал, что бот у меня должен уметь понимать 4 команды. Это будут стандартные start и help. Одну добавим полезную — id. И еще одну, notify, про которую я расскажу чуть позже. И две команды NONE и NOTFORME, которые будут говорить нам, что текст сообщение либо вообще не является командой, либо это команда не для нашего бота.
Еще добавим один вспомогательный класс ParsedCommand
Основное его назначение — в объектах этого класса мы будет хранить результат парсинга текста. Содержаться в нем будет только сама команда и весь текст, который идет после команды.
И напишем отдельный класс, который будет нам парсить команды. Класс Parser
Вкратце. При инициализации парсера мы обязательно передаем в конструкторе имя нашего бота, чтобы парсер умел отличать свои команды от чужих.
Ну и дальше мы просто вызываем публичный метод
Которому в аргументах передаем текст сообщения, а он нам в ответ должен вернуть команду и текст сообщения идущий после команды.
Как работает парсер вы можете увидеть в тестовом классе.
Мухи отдельно, котлеты отдельно
Теперь нам нужно научить нашего бота раздельно получать сообщения, обрабатывать и отправлять ответы. После ряда проб и ошибок я пришел вот к такой логике работы приложения.
Основной класс Bot будет работать в основном потоке приложения и будет занят только тем, что все полученные сообщения будет складывать в специальную очередь и так же будет контейнером для сообщений, которые мы планируем отправить пользователю в ответ.
Изменения в этом классе очень незначительные. Мы добавили две очереди:
и немного переписали код функции public void onUpdateReceived(Update update)
Почему так? Опять таки я перепробовал разные варианты. И основная проблема многопоточности — это работа с общими данными. И мне больше всего понравилось как с этим справляется реализация многопоточных очередей ConcurrentLinkedQueue<>()
И как вы видите, в обоих очередях у нас будут хранится типы данных Object. Это еще одна закладка на будущее. Таким образом мы не привязываемся к типам полученных сообщений. Во входящую очередь сможем складывать не только объекты типа Update а и какие-то другие, нужные нам.
Тоже самое и с очередью на отправку. Так как мы можем отправлять самые разные типы сообщений и у них нет общего родителя — мы также используем общий тип данных — Object.
Если в таком виде запустить бота, то он будет работать, но не будет делать ничего. Все полученные сообщения он будет фиксировать в логе и складывать в очередь.
Следовательно нам нужен какой-то поток, который займется тем, что будет забирать из очереди принятые сообщения и совершать над ними какие-то действия и складывать в очередь sendQueue результаты своей работы.
Создадим отдельный package: service и в нем у нас будет всего 2 класса:
MessageReciever — обработчик полученных сообщений
MessageSender — обработчик очереди сообщений, которые нужно отправить пользователю.
Их работу мы рассмотрим чуть ниже, а пока пропишем их использование в нашем стартовом классе App
После того, как наш бот приконнектился — мы стартует наши обработчики в отдельных потоках:
Для обоих потоков мы указываем режим Daemon. Это нужно для того, чтобы потоки работали до тех пор, пока работает основной поток и сами завершались, как только он свою работу прекращает.
Как бы не хотелось разобраться в первую очередь с обработчиком входящих сообщений — давайте разберем работу класса MessageSender.
Разберем по пунктам, что он умеет и что делает:
Тут мы запускам бесконечный цикл, который занят только тем, что он проверяет очередь на отправку и вызывает команду send
Он, как и MessageSender, должен быть многопоточным, в конструкторе получать объект класса Bot, в котором он в бесконечном цикле будет брать принятые сообщения, обрабатывать их и складывать ему же в очередь для отправки результаты своей работы.
Тут мы используем созданный ранее парсер команд. И тут же мы добавим возможность использовать различные типы обработчиков для наших команд и некоторые из них сделаем многопоточными.
Цикл работы очень простой:
Проверяем очередь. Если что-то есть — запускаем анализатор:
Если ничего нет — ждем.
Анализатор проверяет тип объекта. Если он умеет с ним работать — запускает следующий анализатор. Если не умеет — ругается 🙂
Почему так? Опять таки это закладка на будущее и, надеюсь, я её раскрою в следующих частях этого цикла статей. Такая реализация позволит нам потом формировать свои какие-то задания для бота, делать списки рассылок, дневные задания. Для этого ресивер должен уметь обрабатывать не только объекты типа Update а и что-то наше. Но об этом потом 🙂
Рассмотрим подробнее анализатор для типа Update:
Он определяет ID чата. Получает текст сообщения. С помощью парсера определяет, является ли сообщение командой и определяет каким хендлером данную команду нужно обрабатывать. Запускает обработку команды и если обработка команды вернула какой-то непустой текст — формирует сообщение для отправки пользователю и складывает его в очередь.
И тут у вас должен возникнуть вопрос: «Что еще за хендлер?». Речи про него раньше не шло и в коде он не упоминался. Все верно. Сейчас мы этот функционал и разберем.
Для этого создадим отдельный package, который и будет хранить все наши хендлеры. Назовем его handler
Создадим абстрактный класс AbstractHandler
У него будет базовый конструктор, в котором мы передаем с каким именно объектом Bot ему нужно будет взаимодествовать. И объявлена абстрактная функция operate реализацию которой мы должны будем прописать в наследниках нашего класса.
И сразу же реализуем самый простой хендлер, который не будет делать ничего и использовать мы его будем тогда, когда не сможем понять что за тип команды нам передали и от бота никакой реакции не требуется.
Как мы его применим и где мы получим результаты его работы — разберем чуть позже.
Следующий на очереди — SystemHandler
Он у нас займется обработкой базовых команд, таких как start, help и мы поручим ему еще и выполнение команды id
Основа его выглядит так:
Как реализовано формирование ответа на команду start и help вы можете посмотреть в коде 🙂
Формируем текстовые сообщения и складываем их в очередь на отправку. На этом работа хендлера прекращается. Кто и как отправит эти сообщения — его совершенно не волнует.
И помните чуть выше я упоминал, что в результате работы хендлера он возвращает какие-то текстовые данные. И если эта строка не пустая — мы этот текст должны отправить пользователю. Вот именно этот функционал мы и использовали при отработке команды ID:
Хендлер вернет текст с ID пользователя тому, кто его вызвал и уже там сформируется сообщение на отправку, которое и уйдет потом в очередь.
И в начале статьи я упомянул, что мы реализуем такой вариант обработки сообщения пользователя, которому на работу нужно время. И чтобы он не мешал нашим обработчикам — мы его выделим в отдельный поток и пусть он занимается своим делами, не отвлекая остальных.
В качестве такого «тяжеловесного» потока я придумал команду notify. Принцип её работы такой.
Передав боту команду вида:
/notify 300
Бот должен вам сообщить, что команду понял и через 300 секунд он пришлет вам какое-то уведомление, что 300 секунд прошли. У этой команды может быть даже практическое применение 🙂
Например вы поставили пельмешки на огонь и вам их нужно снять через 5 минут. Бот с этим отлично справится и кинет вам в чат уведомление о том, что время вышло.
Или возьмем задачу более серьезную. Вы идете на важную встречу и вы знаете, что при общении с собеседником вам нужно будет прервать разговор. Для этого обычно просят друзей или позвонить или написать сообщение, что и будет являться мотивом не на долго отвлечься от беседы и сделать какие-то действия. Но зачем мучать друзей, когда у вас есть бот? Задав ему заранее задание и указав время — вы получите нужное уведомление в телеграм. Но это все лирика. Задание и эта команда придуманы лишь для того, чтобы показать вам как выделить в отдельный поток что-то, чья работа может занимать очень большой промежуток времени.
Проверяем, передали ли нам в тексте время задержки. Если нет — ругаемся. Если да — стартуем новый поток, куда мы передаем вводные по нашему заданию. Выполнением этого задания займется отдельный класс Notify.
Функционал предельно простой. Он спит указанное колличество секунд. Но в процессе его сна ваш бот умеет принимать любые другие сообщения, общаться с вами, запускать еще дополнительные уведомления. И все это работает отдельно друг от друга.
И чтобы логично завершить всю эту связку с вызовом хендлеров, вернемся в наш класс MessageReciever и посмотрим как мы понимаем какой хендлер нам нужен и как мы их запускаем.
Нужный хендлер нам возвращает команда
Теперь, если вы захотите добавить еще какие-то команды, нужно будет сделать следующее:
О чем мы поговорим в следующих частях?
Нам нужно понять как формировать разные типы сообщений. Как работать с клавиатурой и кнопками. Как редактировать свои старые сообщения. Как работать с колбеками. Как давать задания боту на выполнение каких-то действий. Как формировать интерактивное сообщение с ботом и многое другое. Все дальнейшие части зависят от вас и вашей активности.
Жду в комментариях ваши отзывы и направления, которые мы рассмотрим в приоритете.
Не стесняйтесь, задавайте вопросы. Если в статье что-то не указано или какой-то момент не ясен — напишите мне об этом. Я обязательно поправлю, отредактирую или уточню спорные моменты.
Программируйте в удовольствие и да прибудет с вами сила и красивый код 🙂
Бот, написанный в этой части статьи, работает. Помучать его можно тут: @test_habr_bot
Так же можно помучать моего планировщика: @EventCheckPlanner_Bot
И Дерзкого киномана: @FilmFanAmateurBot.
Как легко создать бота в Telegram для своего бизнеса
12 минут на чтение
Телеграмом в мире пользуются 200 миллионов человек, а его аудитория — одна из самых быстрорастущих среди мессенджеров. Бизнес активно переходит в Telegram, используя каналы и боты для продаж и коммуникации с клиентами.
И наконец, долгожданный релиз от SendPulse — чат-боты в Telegram пополнили компанию ботов ВКонтакте и Facebook Messenger.
Возможности чат-ботов Telegram от SendPulse:
Из этой статьи вы узнаете, что такое боты в Telegram и на наглядных примерах увидите, где и как они используются в бизнесе. Я также покажу, как в SendPulse создать чат-бота в Telegram и подробнее опишу возможности сервиса.
Что такое чат-бот в Telegram
Это программа, которая работает в мессенджере и часто имитирует живое общение с пользователем в чате. Чат-бот запускает разные варианты предустановленных цепочек в ответ на нажатие определенных кнопок и на ввод слов в чате.
Чат-бот может запрашивать информацию от пользователя — номер телефона, email адрес, город, день рождения и другие данные, чтобы переносить их в переменные. С помощью чат-бота в Telegram можно отправлять рассылки по всему списку контактов бота с персонализацией, используя имеющиеся данные подписчиков для сегментации.
Чат-бот в Telegram для бизнеса — как и где можно использовать
Чат-боты могут здорово применяться для самых разных нужд малого, среднего и большого бизнеса — записи на консультацию, ответы на частые вопросы в службах поддержки и отделах продаж, поиск сотрудников и многое другое. Примечательно, что Telegram боты задействованы как в B2C, так и B2B сфере. Сейчас я расскажу подробнее, где и как они будут полезны.
Инфобизнес
Вы можете презентовать себя и продукт, вложить максимум полезной информации для пользователя, работать с опасениями и возражениями, записать на консультацию, передать лид-магнит и продать трипваер, и наконец, продать основной продукт. Про воронку инфобизнеса мы подробно рассказывали в кейсе на блоге.
Event индустрия
Регистрация на мероприятие, сегментация аудитории по городам, странам и другим признакам. Дальнейшие рассылки по аудитории, включая отправку материалов и записей конференции. В SendPulse практика применения чат-ботов для ивентов уже давно и стабильно используется.
Продажи
Описание продукта, информация о компании, оплата и доставка, распределение на чат с оператором. Присвоение клиентам тегов и переменных для дальнейшего их прохождения по воронке продаж и стимулирования повторных продаж.
Служба поддержки
Первичная обработка обращений, часто задаваемые вопросы, распределение по темам и сложности вопросов. Если грамотно продумать логику бота и учесть индивидуальное построение вашей службы поддержки, то вы сможете частично разгрузить ее первую линию.
Клиники
Узнать о клинике и ее специалистах, получить ответы на частые вопросы и записаться к врачу, отменить прием или изменить время и дату, перенаправить на чат с оператором.
Новостные сайты
Через чат-бот вы можете подписать пользователя на регулярные обновления вашего новостного портала или блога. Хорошо, если в логику бота входит не просто подписка на общий фид, но и выбор интересующих разделов сайта и частоты рассылки. Также можно включить и опцию для связи с PR отделом для рекламодателей и инфопартнеров.
Поиск сотрудников через чат-бота: отсеять кандидатов, передать в работу тестовое задание. C помощью чат-бота Роман Рыбальченко искал сотрудника в свое агентство и написал об этом кейс для нашего блога. Он создал чат-бот в Facebook Messenger через SendPulse, аналогичный бот вы можете построить и в Telegram.
Моя подруга, которая работает менеджером по персоналу в IT компании с тысячами сотрудников, создала бота в Телеграм для ответа на частые вопросы сотрудников по медицинскому страхованию. Через него также можно получить доступ к списку клиник и всем необходимым документам по страховке. Получается очень удобно — и ее не дергают лишний раз и вся информация находится в одном месте.
Кафе и рестораны
Посмотреть меню, заказать блюдо, забронировать столик, оставить отзыв, связаться с менеджером ресторана, отправить рассылку с новостями, специальными предложениями и обновлениями меню. Все можно сделать с помощью чат-бота в Telegram. Особенно это актуально, если вы ведете свое сообщество в Телеграме и у вас есть там аудитория.
Мы описывали в нашем блоге кейс кафе «Цапа», которые создали бота в Facebook Messenger и повысили вовлеченность аудитории своей страницы и количество заказов на вынос. Вы можете позаимствовать логику этого бота и подогнать под свои цели и особенности заведения.
Примеры чат-ботов в Telegram
Я собрала реальные примеры применения чат-ботов в Telegram разными видами бизнеса.
Чат-бот шоумена и ведущего мероприятий
Илья Сорокин, ведущий мероприятий, шоумен и конферансье, решил рассказать и показать свою работу через бот в Telegram. Здесь бот исполняет роль портфолио, дает возможность оставить заявку и собирает все каналы связи с Ильей воедино — потенциальный клиент выберет для себя подходящий.
Бот в Телеграме шоумена и ведущего мероприятий
Чат-бот психолога
Психолог, автор программ по подготовке к родам, Юлия Романенко, создала онлайн-помощника Джулию. С помощью нее можно узнать о распространенных страхах будущих мам, стоимость курсов, выбрать подходящий для себя и записаться на него.
Бот дает много полезной информации уже на старте общения, чем и располагает к себе.
Чат-бот Джулия — онлайн-помощник психолога
Рассылка обновлений от новостного портала
Новостной сайт «Коммерсантъ» использует бота в Телеграме, чтобы подписать читателей на рассылку новостей. При этом вы можете выбрать, как часто и в какое время получать обновления. Если нужно найти новости на сайте прямо сейчас, просто введите ключевое слово и бот предложит вам подборку новостей на эту тему.
Чат-бот издания «Коммерсантъ»
Чат-бот страховой компании
Украинское отделение страховой компании UNIQA тоже использует бота в Telegram. С помощью него вы можете узнать, какие документы нужны для оформления разных видов страховки: медицинская, на автомобиль и туристическая. Он также помогает оформить страховой случай и связаться с оператором по каждому из указанных разделов.
Чат-бот страховой компании
Откройте для себя чат-бота
Выстраивайте автоворонки продаж и отвечайте на вопросы пользователей с помощью чат-бота в Facebook, VK и Telegram.
Как в SendPulse создать бота в Telegram
Теперь расскажу подробно о функционале чат-ботов в Telegram на примере простого бота для выдуманной кулинарной школы Best Cook:
Так выглядит переписка с чат-ботом для пользователя
А вот схема этого чат-бота в визуальном редакторе SendPulse:
Схема бота в визуальном редакторе
Чтобы построить такую цепочку, вам нужно сначала создать своего бота в Telegram, а затем подключить его к SendPulse — с этого и начнем.
Создайте бота в Telegram
В поиске Telegram найдите @botfather и создайте своего бота с помощью команды «/newbot». На этом этапе вам нужно определиться с именем бота.
Вы получите ссылку на бота в Телеграме и цифровой токен доступа. Токен вам понадобится, чтобы подключить бота в аккаунте SendPulse.
Цифровой токен вашего бота, который нужно вставить в аккаунте SendPulse
Подключите бота к вашему аккаунту в SendPulse
В аккаунте SendPulse выберите раздел «Чат-боты», вкладку «Управление ботами», где подключаются чат-боты для Telegram, Facebook Messenger и ВКонтакте. В строку Telegram введите цифровой токен, который вы получили при создании бота через @botfather и нажмите «Подключить».
Вставляем токен в разделе «Чат-боты» аккаунта SendPulse
Для успешного подключения и тестирования вам нужно подписаться на собственного бота.
Подписываемся на собственного бота
После подключения все боты, которыми вы управляете, будут показаны в списке в разделе «Управление ботами». В нашем случае — это бот выдуманной кулинарной школы Cooking School.
Чат-бот в Telegram подключен к аккаунту SendPulse
Мы подключили чат-бота и на его примере создадим цепочку сообщений. Но вначале я покажу, как в SendPulse запускается отправка автоответов и цепочек сообщений.
Запуск автоответов и цепочек сообщений чат-бота
В сервисе чат-ботов SendPulse есть понятие «триггер» — это условие, по которому отправляется автоответ или запускается последовательная цепочка сообщений.
Вы можете использовать триггеры двух видов: предустановленные и те, что создаются вручную.
Предустановленные триггеры
В личном кабинете SendPulse перейдите во вкладку «Чат-боты», откройте ваш подключенный чат-бот в Telegram. В разделе «Структура бота» вы увидите такие триггеры: «Приветственная серия», «Стандартный ответ» и «После отписки».
Предустановленные триггеры
Триггер «Приветственная серия»
Его удобно использовать для отправки приветственного сообщения после подписки и вы можете изменить его под себя.
Настройка приветственной серии после подписки на бота
В приветственном сообщении рекомендуется рассказать, как отписаться от бота, если ваши сообщения окажутся пользователю не интересны. Для отписки от бота в блоке по умолчанию установлены стандартные команды «/unsubscribe» и «/stop». Этот текстовый блок вы можете редактировать или удалить.
Отправлять приветственное сообщение необязательно, но оно делает ваш чат-бот понятным для подписчика — сразу ясно, чем чат-бот может быть полезен и чего от него ожидать. На ваш выбор вы можете отключать данный триггер, но мы рекомендуем его оставить и придать боту человечное лицо, придумать персонажа-помощника, как на примере ниже.
Пример приветственного сообщения чат-бота
Стандартный автоответ, если бот не распознал фразу пользователя
Прописать цепочки на все запросы пользователя невозможно. Если человек напишет фразу с ключевым словом, для которого не настроен триггер, ему отправится сообщение по «Стандартному автоответу».
Придумайте подходящее сообщение для такого случая. Оно должно быть универсальным и перенаправлять подписчика на другой канал связи с вами, чтобы он все-таки мог решить свой вопрос. Например, укажите в тексте сообщения номер телефона или добавьте ссылку на форму обратной связи.
Вы также можете перенаправить пользователя на чат с администратором, чтобы он самостоятельно связался с пользователем и решил проблему. В нашем чат-боте сделать это можно с помощью блока «Действие». Просто отметьте опцию «Открыть чат» в настройках блока, когда будете строить цепочку. Общение продолжится плавно, без оповещения пользователя, что чат переключили на администратора.
Пример цепочки для триггера «Стандартный ответ»
Подробнее о блоке «Действие» и об остальных блоках цепочки автоответов в Telegram расскажем ниже.
Триггер «Отписка от бота»
Используется, чтобы отправить сообщение после ввода команды отписки. Он запускает автоответ с оповещением, что пользователь успешно отписался от чат-бота. В конструкторе ответ стандартный, но я изменила текст сообщения и добавила картинку.
Помните, что даже если человек решает отписаться, есть шанс его вернуть или, по крайней мере, оставить у него приятное воспоминание о вашем бренде с помощью трогательного сообщения.
Автоответ «Отписка от бота»
Предустановленных триггеров недостаточно для полноценного взаимодействия с подписчиками, поэтому, в зависимости от ваших задач, нужно будет настроить еще ряд триггеров самостоятельно. Рассказываю, как это сделать.
Триггеры, которые создаются вручную
Чтобы создать условие, по которому запустится автоответ или цепочка сообщений, в разделе «Структура бота» нажмите «Создать триггер» и приступайте к его настройке.
Добавление триггера вручную
В системе существует два типа триггеров, которые вы можете настроить самостоятельно. Тип триггера определяет, по какому условию будет запускаться сообщение или цепочка: в ответ на подписку или на ключевое слово во фразе подписчика («Команда»).
Тип триггера «После подписки»
Запускает цепочку автоответов после подписки через интервал, который вы указываете в минутах, часах или днях.
Добавление триггера «После подписки»
Этот тип триггера можно использовать вместо предустановленного триггера «Приветственная серия» и отправлять с его помощью приветственное сообщение.
Или же можете привязать к нему цепочку с сообщениями, которые познакомят пользователя с компанией, тарифами, программой лояльности и ассортиментом.
Тип триггера «Команда»
Реагирует на ключевые слова в сообщении подписчика и запускает нужную цепочку автоответов. Прописать ключевые слова можно в настройках триггера.
Обратите внимание, что прописывать нужно ключевые слова и словосочетания. Можно добавить несколько разных слов, по которым будет запускаться цепочка, например: «доставка», «отправка», «самовывоз», «получение».
Добавление триггера «Команда»
Создали триггер — приступайте к созданию цепочки сообщений.
Как настроить цепочку автоответов в редакторе чат-бота
В визуальном редакторе цепочки автоответов строятся с помощью специальных блоков: «Сообщение», «Цепочка», «Действие» и «Пауза». Они расположены на панели слева.
Блоки, из которых строится цепочка автоответов
Дальше рассмотрим сам процесс построения цепочки.
Создаем цепочку
Выбираем триггер и нажимаем «Создать цепочку». Либо же к триггеру можно привязать цепочку, созданную ранее, если у вас уже имеются таковые.
Создание цепочки для выбранного триггера
Настраиваем стартовый блок
Справа в окне редактора цепочки вводим сообщение, которое отправляется пользователю в ответ на выбранный триггер. В нашем примере сообщение отправится после того, как пользователь напишет слово «Привет».
Стартовый блок в визуальном редакторе чат-бота
Вы можете отправить следующее сообщение только после того, как пользователь отреагировал на ваше предыдущее сообщение. Например, нажал на кнопку, которую нужно добавить в это сообщение. Рассмотрим, как добавить кнопку в редакторе.
Добавляем кнопку
Нажмите «Добавить кнопку» и введите текст кнопки. В нашем случае будет три кнопки: «Узнать о школе», «Мастер-классы», «Контакты менеджера».
В одно сообщение вы можете добавить до двенадцати кнопок. Текст кнопки вмещает 20 символов без пробелов. В кнопки можно добавлять ссылки.
К каждой из этих кнопок мы будем присоединять другие сообщения, чтобы развивать цепочку дальше.
Создаем следующее сообщение
Перетащите блок «Сообщение» с левой панели в рабочую зону и соедините его с нужной кнопкой.
Для развития цепочки перетаскиваем блок «Сообщение» в рабочую зону
Заполните сообщения текстом и, если нужно, добавьте другие элементы.
Какие элементы можно добавить в сообщение чат-бота в SendPulse:
Чтобы добавить небольшую паузу между репликами в сообщении, воспользуйтесь элементом «Задержка». Укажите в редакторе, какая пауза будет между репликами — это до 5 секунд. Задержка в чате выглядит так:
Задержка между репликами в сообщении
Ввод данных пользователя
Вы можете запросить у подписчиков ввод данных в виде текста, даты, номера телефона, email адреса или числа. Эти данные передаются в существующие переменные или в те, которые вы специально создадите. На случай, если данные ввели в неправильном формате и система их не распознала, вы можете настроить сообщение-подсказку для подписчика.
Чтобы исключить ошибки ввода для текстовых и числовых данных, есть возможность добавить быстрые ответы. Вы прописываете несколько вариантов, которые в сообщении выглядят как кнопки, а пользователь просто нажимает на нужный вариант.
Ввод данных пользователя через быстрые ответы
Подробнее о том, как использовать ручной ввод данных в переменные, читайте в нашей базе знаний.
Дополнительные блоки для построения цепочки
В цепочку можно добавить еще три вида блоков.
Блок «Пауза»
Используется для задержки отправки следующего сообщения. Вы можете указать паузу от нескольких минут до одного дня.
Блок «Действие»
Для блока действие есть такие опции:
Блок «Цепочка»
Внутри каждой цепочки можно перенаправить пользователя в другую цепочку, чтобы не дублировать последовательности блоков.
Блок «Цепочка»
Дополнительные возможности сервиса чат-ботов SendPulse
В сервисе чат-ботов SendPulse вы можете настроить виджет подписки для сайта, сегментировать получателей рассылки, присваивая им теги или переменные, просматривать статистику по своим ботам, сохранять цепочки, чтобы затем к ним возвращаться. Дальше обо всем подробно.
Сегментация при рассылке
На этапе отправки рассылки доступна сегментация подписчиков по датам подписки, активности, тегам и переменным, по попаданию подписчика в цепочку или получению рассылки.
Сегментация списка при отправке рассылки
Кроме текста в сообщение вы можете добавлять кнопки со ссылками, изображения и файлы.
Статистика
Чтобы узнать, сколько новых подписчиков бота появилось за месяц, общее количество подписчиков и количество отправленных сообщений, откройте вкладку «Статистика».
Статистика чат-бота
Сохраненные цепочки
Если ранее вы создали цепочку для триггера, а потом отвязали ее, то она не будет удалена. Она попадет в раздел «Сохраненные цепочки». Вы сможете привязывать ее к уже существующему триггеру.
Виджет подписки
Во вкладке «Виджеты подписки» настраивайте виджет для сайта сразу с тремя кнопками — для VK и Facebook Messenger и Telegram, если у вас есть аккаунты в этих трех маркетинговых каналах. Если такой необходимости нет, выбирайте только одну кнопку.
Виджет подписки на рассылки в Telegram, VK и в Facebook Messenger
Лайв-чат
В сервисе чат-ботов от SendPulse вы можете управлять чатами с подписчиками своих чат-ботов в Telegram, сообществ ВКонтакте и Facebook страниц через общий список лайв-чатов.
Общий список лайв-чатов Telegram, ВКонтакте и Facebook Messenger
Заключение
Надеюсь, что этот материал был полезен и вы убедились, что чат-боты в Telegram использовать для бизнеса не просто можно, но и нужно, и что вы разобрались, как построить чат-бота в SendPulse. Не забывайте, что у нас есть еще и чат-боты в Facebook Messenger и ВКонтакте. Если вы представлены на всех трех каналах, это прекрасная возможность работать со всеми подписчиками на одной маркетинговой платформе.
А чтобы лучше разобраться в теме чат-ботов, вы можете прочитать выжимку из онлайн-конференции SendPulse о чат-ботах и мессенджер-маркетинге. Также вам будет полезен Телеграм-канал «Чат-боты и мессенджер-маркетинг»
Мы и дальше работаем над развитием сервиса и уже очень скоро вас порадуем новым функционалом — следите за новостями и автоматизируйте маркетинг в SendPulse.
Редактор SendPulse.Разбираюсь в email рассылках и интернет-маркетинге. Люблю работать с текстом и делать из него качественный продукт, который будет приятен.