Создаем бот для телеграм-канала быстро, легко и просто
Содержание:
- Содержание
- Обзор ТОП-3 конструкторов для создания ботов в Телеграмм
- Бот в Телеграм: что это
- Круто, начинаем писать бота?
- Программы-обработчики
- Как создать бота в Телеграм
- Список интересных и полезных ботов в Телеграмм
- Что такое бот в Телеграмм
- Шаг второй: Настройте агента.
- Как начать работу с ботом
- Устрой деплой
- Другие способы использования ботов
- Как создать бота самостоятельно с помощью BotFather
- Создаём собственного бота через ControllerBot и BotFather
- Часть 2 Написание кода
- Итоговый рейтинг
Содержание
Обзор ТОП-3 конструкторов для создания ботов в Телеграмм
Ещё совсем недавно без программистов было невозможно не только сделать сайт или бота, но даже в стандартной установке/обновлении программ требовалась их помощь.
К счастью, всё течёт и всё меняется. Теперь даже далёкие от всех языков программирования пользователи самостоятельно, без особого труда, создают программы-роботы для соцсетей и т.п.
Это стало возможным c появлением онлайн-конструкторов. Я предлагаю вашему вниманию 3 сервиса для создания телеграмм-ботов.
Flow XO
Flow XO, пожалуй, самый серьёзный из всех представленных в обзоре сервисов для конструирования роботов. Он предназначен для создания и сопровождения умных программ для бизнес-процессов.
Разработчики предлагают различный функционал на платной и бесплатной основе. Пользователи оплачивают только то, что им действительно нужно.
В арсенале конструктора имеются шаблоны готовых модулей.
Chatfuel
Это бесплатный бот-конструктор для Телеграмм и Фейсбук, простой в использовании, имеющий обширный функционал.
О качестве сервиса свидетельствует список его постоянных именитых потребителей:
- National Geographic.
- TechCrunch.
- UBER.
- Forbs и т.д.
Востребованность Chatfuel подтверждается общим числом пользователей (более 15 млн.) и количеством созданных ботов (более 500 тыс.). Роботы, созданные на этой платформе, легко интегрируются в различные сервисы и сети: YouTube, Твиттер, Инстаграм и т.п.
Recast AI
И, наконец, последний конструктор из моего мини-обзора — Recast. AI. Разработчики позиционируют своё детище, как самый простой для понимания и обучения строитель ботов. На его начальное освоение требуется в среднем около 8 минут. Сервис работает на специально разработанной технологии распознавания естественного языка.
Конструктор имеет 2 тарифа: платный и бесплатный. Функционал обоих практически одинаков, основная разница лишь в том, что платный тариф предназначен для корпоративных клиентов.
Для наглядности основные характеристики сведены в сравнительную таблицу:
Наименование сервиса | Тарифы | Функционал | Сложность использования | Основное направление использования |
Flow XO |
Платный, бесплатный | Есть ограничения на бесплатном тарифе | Требуются специальные навыки и знания | Бизнес-процессы |
Chatfuel |
Бесплатный | Нет ограничений | Низкая | Все направления |
Recast AI |
Платный (для корпоративных клиентов), бесплатный (для прочих пользователей) | Нет ограничений | Низкая | Все направления |
Бот в Телеграм: что это
На этот вопрос можно ответить одним словом: это робот. Он выполняет то, что записано в его программе.
Боты могут совершать разные действия: от самых простых (ответить на приветствие, поддержать диалог по прописанному сценарию, сообщить курс валют) до более-менее сложных (сыграть с пользователем в игру, подобрать список новостей).
Чтобы узнать подробнее о том, как работают роботы в Телеграм, рекомендуем нашу подробную статью.
Для организации бизнеса в Телеграм создание ботов — настоящее спасение. Они сокращают трудозатраты и вполне способны разгрузить или вовсе заменить несколько сотрудников сразу.
Многие думают, что создать такого робота сможет только программист. Это правда, но только отчасти.
Спешим вас переубедить: простого Телеграм-бота можно собрать за несколько минут самостоятельно без знания языков программирования и кода.
Круто, начинаем писать бота?
Обо всём по порядку. Сперва нужно зарегистрироваться в Telegram. Наиболее удобно использовать веб-клиент для знакомства с основными принципами работы ботов и API.
Откройте приложение, найдите @BotFather и начните беседу. Отправьте команду и следуйте инструкциям. После выполнения первых шагов вы получите:
- свой токен;
- адрес Telegram API (https://api.telegram.org/bot);
- ссылку на документацию.
Собственно, вот и всё. На данном этапе ваш бот полностью пассивен.
Вам нужно начать беседу с ботом. Введите в поисковой строке его имя и нажмите на кнопку . Отправьте сообщение, например, «Привет»
Это первое сообщение очень важно, поскольку оно станет первым обновлением, которое получит ваш бот
Если вы в первый раз работаете с API, то разобраться вам поможет браузер. Откройте новую вкладку и воспользуйтесь Telegram API, перейдя по ссылке:
Открыв этот адрес в браузере, вы отправите запрос на сервер Telegram, и он ответит вам в формате JSON. Ответ чем-то похож на словарь в Python. Вы увидите что-то вроде такого:
Если вы изучите раздел в документации, то увидите, что он принимает два параметра: и . Вы можете создавать цепочки параметров в адресной строке браузера, используя для первого и для всех последующих. Команда для отправки сообщения будет выглядеть так:
Попробуйте получить ответ от вашего бота, подставив в качестве значение, полученное после вызова (в нашем примере — ). Текст сообщения может быть любым. Запрос должен выглядеть примерно так:
Программы-обработчики
Последний способ, как изменить тип файла – это использовать целевую программу. Так, чтобы изменить тип картинки, можно использовать Adobe Photoshop, который корректно запишет её с сохранением должного качества. Для работы в сфере программирования, можно зайти в Notepad ++ и нажать на «Сохранить как». В строке «Тип файла» нужно выбрать необходимый. Здесь присутствуют все популярные языки программирования и их расширения.
Аналогично работают и другие приложения, важным аспектом является необходимость поддержки двух форматов и того, что в текущий момент и необходимого.
Таким же способом можно полностью убрать тип, актуально для файла hosts. Просто установите «All types» и напишите имя, расширение добавлено не будет.
(1 оценок, среднее: 5,00 из 5)
Загрузка…
Как создать бота в Телеграм
Подготовительный этап
Прежде чем приступить к процессу со здания, сначала определитесь, для каких целей будет служить Телеграм-робот и какие именно задачи будет выполнять.
Лучше все это нарисовать в виде схемы, чтобы не запутаться и ничего не забыть.
Прорисовка алгоритма — важный этап, который нужно пройти, прежде чем создать бота в Телеграм. Не пренебрегайте им!
Блок-схема — важный помощник в создании Телеграм-бота
Просто нарисуйте блоки с текстом и стрелочками, чтобы прописать все ответы бота на действия пользователя. По своему опыту скажем, что это значительно упрощает дальнейшие попытки создать и настроить работу бота.
Полезным также будет посмотреть, как работают другие боты из вашей тематики. Для этого порекомендуем два способа:
Воспользоваться нашей статьей с лучшими ботами;
Посмотреть наш Каталог с множеством ботов.
Пошаговый алгоритм, как создать бота для Телеграм
Для того чтобы создать бота, удобно пользоваться версией мессенджера для компьютера или же веб-версией. С мобильных устройств это тоже абсолютно реально, но опыт показывает, что Телеграм для ПК оказывается практичнее.
Перейдем к пошаговому процессу создания
После прохождения подготовки, необходимо идти строго по сценарию:
Перейти по прямой ссылке или найти через поисковую строку прародителя всех роботов Телеграм: @BotFather. Просто скопируйте это название вместе с символом @.
Кликните по нему и нажмите “Запустить”.
Телеграм-робот отправит вам целый список команд. На первом этапе нас будет интересовать самая первая из них: /newbot. Щелкаем по ней.
Дальше в строке ввода текста напишите, как будет называться ваш робот.
Постарайтесь подойти к заданию творчески, так как самые релевантные названия наверняка уже будут кем-то заняты.
Выберите имя
Обратите внимание, в конце обязательно должны быть буквы bot
Затем BotFather предложит загрузить аватарку для Телеграм-бота и придумать его описание. В этом же сообщении вам будет выслан токен API.
Наш совет: на всякий случай скопируйте эту комбинацию из цифр и букв в какой-нибудь текстовый файлик, чтобы не потерять.
На этом этапе вас уже можно поздравить с созданием собственного робота. Осталось совсем немного — завершить его настройку.
Продолжаем:
Запускаем робота @Manybot.
Добавляем Телеграм-бота командой /addbot.
Копируем и отправляем высланный @BotFather токен.
Пишем, для чего предназначен наш бот.
В принципе, здесь работа по созданию заканчивается. Можно сразу настроить автопостинг из соцсетей: /autoposting.
Рекомендуем нашу статью о Телеграм-ботах для накрутки лайков и сохранения фотографий из соцсети Instagram.
Дальше предстоит настроить бота на выполнение конкретных действий. Для этого просто начинаем диалог с ним.
Пробовали ли вы самостоятельно создать ботов?
Poll Options are limited because JavaScript is disabled in your browser.
Список интересных и полезных ботов в Телеграмм
Мы выбрали для вас по одной программе из каждой категории.
- @mybookbot – поиск по автору и названию книги. Единоразовая оплата – 1000 рублей. За эти деньги можно бесконечно использовать — качать книги в удобном формате.
- @yandexmapbot – Яндекс карты. Позволяет посмотреть пробки, карты и пр.
- @baks_it_bot – создан для автоматических продаж в Телеграмм. Используется, чтобы реализовать собственные продажи.
- @youtubebiz – канал для желающих вести бизнес на Ютубе. Наполнен уникальным авторским контентом.
- @wradar_bot – погода. Подтвердите свое местоположение и настройте время показа погоды. Программа покажет свежий прогноз.
- @btc_change_bot – используется для совершения операций с криптовалютой. Каждый пользователь имеет свой кошелек и может покупать или продавать биткоины.
- @deeplineagebot бот, определяющий национальность. Найдите его через поиск и откройте чат. Около строки, в которую вводят сообщения, нажмите на скрепку. В этот момент у вас запросят разрешение использовать камеру – согласитесь. Сделайте снимок или прикрепите фото из галереи и дождитесь окончания загрузки.
После этого вы получите процентное соотношение для себя:
- European – европейцы.
- Jewish – евреи.
- Latino – латиносы.
- African – негры.
Не стоит всерьез относиться к результатам, но в каждой шутке есть доля истины.
Что такое бот в Телеграмм
Бот – это сокращенно от слова «робот». По сути, он им и является. Это программа, которая помогает пользователям выполнять рутинные, однотипные действия в мессенджере. Пользователь задает параметры работы своему помощнику, а тот выполняет все в точности. Функционал ботов чрезвычайно широк – от получения новостей до торговли или выдачи займов. Работают они в автоматическом режиме и имитируют действия реального человека. Сейчас боты стали очень востребованы во многих сферах, ведь они значительно облегчают жизнь владельцев каналов и простых пользователей.
Вот неполный перечень их возможностей в Телеграмм:
- проведение пошагового обучения (например, иностранному языку);
- развлечение, игры (шашки, шахматы, викторины, анекдоты);
- показ актуальных данных (к примеру, курс валют или погода);
- поиск информации в интернете;
- скачивание медиафайлов, текстов;
- напоминание о важных событиях;
- ответы на сообщения других пользователей;
- заработок в мессенджере;
- консультирование и направление информации по заданным темам;
- комментирование постов и т.д.
В Телеграмме боты представляют собой аккаунты, созданные в авторежиме. Они выполняют команды, который им задает пользователь в текстовом виде. В названии бота обязательно содержится слово «bot». Так вы сможете отличить его от реального человека. Основное взаимодействие пользователя и бота происходит при помощи системы «вопрос-ответ» или через команды, которые приходят после нажатия кнопки «Старт».
Преимущества использования ботов в Телеграмм:
- круглосуточная доступность;
- простота и удобство применения, с заданными командами роботы справляются на отлично;
- ответ поступает моментально;
- их установка никак не влияет на работу вашего устройства, потому как боты обращаются к сторонним серверам;
- безопасность личных данных, ни один робот не сможет «слить» информацию, потому как ничего не видит, кроме собственных команд (к тому же, доступ к боту можно запаролить);
- не нужно устанавливать дополнительные программы или виджеты, боты доступны напрямую в мессенджере;
- неограниченный функционал, пользователь может найти своего виртуального помощника практически в любом деле.
Многие компании (даже из числа тех, кто не ведет бизнес в сети) уже оценили полезность чат-ботов в Телеграмме. С их помощью клиенты могут бронировать столики в ресторане, заказывать турпоездки, авиабилеты, узнавать меню, график работы и многое другое. По отзывам предпринимателей, покупатели положительно реагируют на нововведения, что приводит и к росту прибыли. Учитывая распространенность мессенджера (а он сейчас есть практически у каждого владельца смартфона), трудно переоценить его пользу для развития своего дела.
К тому же, использование бота значительно разгружает сотрудников компании. Зачем по сто раз в день отвечать на одни и те же вопросы, если это можно доверить интернет-помощнику? Специалисты сходятся во мнении, что за подобными ботами будущее, вскоре человек будет максимально отстранен от рутинных однообразных задач, которые по силу выполнить роботу. Благодаря им происходит существенная экономия людских и финансовых ресурсов.
Как отличить бота в мессенджере
Многие Телеграмм каналы имеют в своем названии слово «bot», если их тематика как-то связана с данным направлением. Могут такие обозначение быть и в имени обычного пользователя. Определить, что перед вами именно программа, можно по следующим признакам:
- при открытии чата вместо поля для сообщения вы увидите надпись «Запустить»;
- в списке каналов рядом с ботом есть маленькая иконка робота;
- у бота нет пометки, когда он был в сети, она имеется только у реального пользователя.
Шаг второй: Настройте агента.
Контекст отражает связь между тем, что говорит пользователь, и что должен сделать наш агент. В нашем случае, рассмотрим случай с прогнозом погоды:
- Кликните на в разделе “Контекст” (Intents). В агенте уже настроены “контексты” на приветствие и ошибки, оставим их пока без изменений.
- Укажите название для “контекста” — любое, главное чтобы оно было понятно вам и вашим коллегам.
- В разделе “Реплики пользователя” (User Says) приведите примеры вопросов, который может ваш пользователь. Так как мы говорим о погоде, человек может задать вопрос в привязке ко времени и место — учтем это. Чем больше примеров вы предоставите в настройках, тем точнее будет работать агент. Некоторые примеры я привел на скриншоте:
В последнем примере слова “завтра” и “Нижнем Тагиле” подсвечены разными цветами — таким образом слова связываются с сущностями (Entities) (в нашем случае сущности системные). Используя эти параметры агент “поймет” в каком городе и для какой даты нужно узнавать погоду.
Добавьте еще парочку своих примеров и нажмите “Сохранить” (SAVE).
Тестируем!
Проверим работу агента на простых вопросах, например, “Погода в Перми в среду”:
Все это время в правой верхней части экрана маячила надпись “Try it now” — напишите в это поле или произнесите простой вопрос о погоде и нажмите “Ввод”.
Мы еще не настраивали автоматический ответ, но некоторые параметры агент уже научился определять! В разделе INTENT отражено, что по “мнению” агента пользователь интересуется погодой (настроенный нами “контекст”), в PARAMETER — дату и название города в соответствующих переменных.
Добавьте автоматические ответы
Сделаем нашего агента разговорчивей! Пока мы не научились получать информацию о погоде из внешних источников, добавим в качестве ответов простые фразы.
Перейдите в раздел “ Ответы” (Response) и введите простые ответы аналогично тому, как вы заполняли “Реплики пользователя”:
Как видите — в ответах можно использовать ссылки на выявленные сущности, начните набирать $ — и интерфейс предложит вам выбрать конкретную переменную.
При формировании ответа агент учитывает количество определенных сущностей и не использует ответы, данных для которых недостаточно. Например, на вопрос без указания города агент использует ответ из второй строки.
Сохраните настройки и протестируйте еще раз:
Теперь у нас есть еще и ответ!
Как начать работу с ботом
Для обычных пользователей роботы работают через диалоги прямо в Телеграм. Нужного можно найти через строку поиска. Лучше всего использовать для этого имя, оно всегда начинается с «@» и заканчивается на «…bot», например, @PollBot — помощник для создания голосований.
В этом случае предполагается, что вы уже знаете конкретное имя робота, которого хотите добавить. Если же нет, вам помогут подборки и каталоги, такие как наш.
Рекомендуем к обязательному прочтению нашу огромную подборку лучших ботов для Телеграм.
Чтобы активировать помощника, нужно начать с ним диалог нажатием кнопки «Start». В дальнейшем большинство функций будут доступны именно через окно беседы. Но есть, например, @gif (для поиска гифок) или @vkmusic_bot (для поиска музыки) — их можно вызывать в диалоге с вашим собеседником, для чего нужно напечатать символ «@».
Больше музыкальных ботов вы найдете в специальном разделе нашего Каталога.
В окне беседы можно общаться с Телеграм-ботом, вводя команды или нажимая на кнопки. Если кнопки не предусмотрены, а команд вы не знаете, просто напечатайте в поле набора сообщения слеш «/». После этого появится всплывающее меню с подсказками, где будут видны команды, которые можно добавить.
Варианты команд на примере одного из популярных ботов для прокси
Помимо этого, лучше знать несколько универсальных команд, которые работают практически во всех ботах:
/start — начало работы с ботом;
/help — помощь по функциям и работе бота;
/settings — настройки, если они предусмотрены.
Устрой деплой
Последним шагом будет развёртывание вашего бота на сервере. Наверняка у вас его нет, да и покупать не хочется — но это необязательно. Сейчас существует множество бесплатных облачных решений, из которых мы выберем Heroku.
Сперва зарегистрируйтесь на GitHub. Создайте аккаунт (рано или поздно он вам точно пригодится) и установите Git. На Linux выполните следующую команду:
На macOS и Windows его нужно скачать и установить вручную. И не забудьте зарегистрироваться на Heroku.
Установите virtualenv:
Теперь вам нужно навести порядок в файлах. Создайте новую папку и перейдите в неё в терминале или командной строке. Инициализируйте в ней :
Имя не имеет значения, но лучше сделать его интуитивно понятным. Перейдите в папку .
Теперь вам нужно склонировать git-репозиторий. Введите следующую команду:
Поместите скрипт в папку, полученную в результате выполнения команды .
Вернитесь в папку и запустите :
-
На Windows:
-
На Linux/macOS:
Если вы успешно запустили , приглашение командной строки должно начинаться с (my_env).
Перейдите в папку репозитория и ещё раз установите модуль requests:
Теперь нужно создать список зависимостей Heroku. Это несложно. Введите:
Создайте . В этом файле вам нужно разместить инструкции по работе с вашим скриптом. Имя файла обязательно должно быть ( в случае с Windows). У него не должно быть других расширений. Содержимое файла должно быть таким (замените на имя вашего скрипта):
Добавьте файл в вашу папку. Он может быть пустым, но он должен там быть.
Отправьте коммит с изменениями в репозиторий:
Теперь развернём бота на Heroku. Можно использовать и панель управления на сайте, но мы потренируемся делать всё через консоль. Если вы столкнётесь с какими-то проблемами, обратитесь .
Рассмотрим лишь те действия, которые нужны для развёртывания приложения. Если вы пользуетесь macOS или Windows, установите интерфейс командной строки, следуя .
Если вы пользуетесь Ubuntu, используйте следующие команды:
Если возникнут ошибки, проверьте, присутствуют ли все зависимости.
Теперь выполните следующие команды:
С этого момента ваше приложение должно работать на сервере Heroku. Если что-то пойдёт не так, проверить логи можно следующим образом:
Коды ошибок можно найти на сайте Heroku.
Бесплатный аккаунт накладывает некоторые ограничения. Тем не менее теперь у вас есть полностью рабочий бот — поздравляем! Продолжить изучение возможностей ботов для Telegram вам поможет видеокурс — в нём используют PHP, но суть остаётся той же.
Другие способы использования ботов
Помимо автоматического информирования у роботов есть ряд дополнительных функций.
Использование бота в Телеграм.
Они могут сделать:
- автоматический постинг, даже с отложенным стартом;
- рассылку сообщений по клиентской базе для активизации продаж товара или услуги;
- проверку результатов голосования, организацию самих опросов.
Если добавить бота в администраторы канала Telegram, помощник сможет работать админом в реальном времени.
Доступными будут такие функции:
- запускать информацию;
- подключатьинтерактивных сервисов для клиентов;
- устанавливать контакта с аудиторией;
- добавление в подписчики по заданным параметрам.
Плюсы такого администрирования: человек работает с программой в удобное время, а робот с аудиторией – в нужное, избавляя своего создателя от много-кратного дублирования одинаковых действий. Хороший код может фактически вести сайт или аккаунт.
Как создать бота самостоятельно с помощью BotFather
Любой пользователь Телеграма может сам сделать своего робота. На помощь ему придет конструктор под названием @BotFather. Для создания собственной мини-программы нужно запустить этого робота и следовать его инструкциям. Конструктор работает в мобильной и десктопной версии Телеграма. Предоставляет пользователям возможность сделать своего бота на базе встроенных программ.
Пошаговый процесс создания бота с помощью @BotFather:
задать команду «/newbot» для создания нового робота;
написать название помощника;
придумать уникальный username (длиной от 5 до 32 символов) с окончанием на «bot»;
перейти в режим редактирования «/mybots»;
выбрать «Edit bot»;
добавить описание, которое будет отображаться по центру экрана, и информацию о программе;
добавить аватарку;
привязать робота к чат-форме при помощи API Token;
- скопировать появившуюся красную ссылку и перейти на чат-форму;
- выбрать опцию «Создать бота»;
- перейти в настройки и привязать к конфигурации ранее скопированную ссылку на токен доступа;
- написать стартовое сообщение (приветствие);
- настроить сообщение по умолчанию (написать, что робот понимает только команды);
- подключить токен к стороннему конструктору или написать программу в Телеграме.
Важно! Кроме @BotFather, есть другие конструкторы, работающие в Телеграме, например, Manybot, Telegrambot.biz
Создаём собственного бота через ControllerBot и BotFather
Для добавления бота, в строке поиска Telegram наберите «ControllerBot» , затем откройте найденного бота с таким же названием и в окне бота нажмите «Запустить» внизу.
Бот предложит выбрать язык, на котором вам будут выдаваться его инструкции. Выбирайте родной язык:
Бот предлагает нам список возможных действий. Сейчас нам необходимо подключить свой канал. Кликаем по предложенной ссылке «/addchannel» (добавить канал).
Получаем инструкцию по подключению бота. Кликаем по имени бота «@BotFather», указанного в пункте 1.
Вы перейдёте сразу в окно бота BotFather, через которого уже будем создавать своего бота. Нажмите «Запустить» внизу.
Бот ответит нам, после чего кликните по команде «/newbot»:
Теперь нужно указать имя создаваемого бота и отправить сообщение. Можно указывать любое, например, часть имени фамилии или часть названия канала, как удобно. Пример:
Теперь необходимо указать ник для создаваемого бота. Здесь можно указать тоже самое, но обязательно на конце должно стоять «bot» либо через знак нижнего подчёркивания «_bot». Пример:
Если вы вдруг получили сообщение «Sorry, this username is already taken. Please try something different.», то значит такой ник уже занят и нужно указать другой.
Если всё верно сделали, получите сообщение об успешном создании бота и специальный длинный ключ (токен):
Его нужно скопировать в ControllerBot, с которым мы сразу начинали работу.
Вставив ключ в окно чата ControllerBot, он в ответ выдаст инструкцию по добавлению канала к нему. Выполняем её…
Скопируйте из пункта 1 имя бота, которого вы только что создавали:
Затем открываем созданный нами канал для работы, переходим в его меню и выбираем «Управление каналом».
Открываем раздел «Администраторы».
Внизу нажимаем «Добавить администратора».
В строке поиска вверху вставьте имя скопированного бота и после, когда он появится в результатах поиска, кликните по нему .
Нажимаем «ОК» в окне с вопросом о назначении бота администратором.
Ничего не изменяя в настройках, нажмите «Сохранить» в следующем окне.
Всё, бот в качестве администратора канала добавлен и теперь окно можно закрыть:
Теперь, выполняя пункт 2, нам нужно переслать в чат «Controller Bot» любое сообщение с вашего канала или его адрес. Проще взять адрес, поскольку канал новый и в нём может ещё не быть никаких сообщений.
Открываем снова меню канала и выбираем «Описание канала».
Копируем ссылку, которая является адресом вашего канала (кликните по ней правой кнопкой мыши и выберите «Копировать ссылку»).
Отправляем эту ссылку боту «Controller Bot».
Следующим сообщением он предложит выбрать часовой пояс. Нужно отправить в ответ название вашего города.
Далее бот уточняет, верно ли он выбрал город. Нажмите «Верно», если всё так или введите другой ближайший к вам город.
На этом всё. Канал к боту «Controller Bot» был подключен, основные настройки выполнены, о чём свидетельствует очередной ответ бота:
Если теперь вам потребуется отредактировать бота, то воспользуйтесь для этого ботом BotFather, т.е. перейдите в чат с ним и выбирайте из его меню нужные команды. Если захотите отключить бота от канала или подключить к каналу другого бота, то тогда вам нужен ControllerBot и его меню подскажет вам, что нужно сделать.
Часть 2 Написание кода
sudo apt-get install python python-pip
Далее воспользуемся системой управления пакетами PIP, которая используется для установки и управления программными пакетами, и установим библиотеку PyTelegramBotAPI (Telebot):
Создадим логику работы нашего бота. Используя полноценный IDE или простой текстовый редактор создадим файл ourbot.py и заполним его необходимой логикой.
import telebot
bot = telebot.TeleBot(‘851216368:AAG6_JHHsIqAK-lX2CxOWQHTAM109zdrcZM’)
Теперь создадим метод, для получения сообщений.
Возможности PyTelegramBotAPI позволяют отправлять боту аудио (content_types=[‘audio’), видео (content_types=[‘video’), документы (content_types=[‘document’), текст (content_types=[‘text’), географический адрес (content_types=[‘location’), данные контакта (content_types=[‘contact’) и стикеры (content_types=[‘sticker’). Мы, для простоты опыта, будем общаться с ботом только текстом:
@bot.message_handler(content_types=)
def handle_text_messages(message):
Теперь рассмотрим логику обработки наших текстовых сообщений. Мы хотим захардкодить простое общение бота с пользователем: бот должен уметь здороваться, когда с ним здороваются, уметь отвечать на вопросы «Кто ты?», «Как тебя зовут?» и «Что ты умеешь?».
if message.text == «Привет»:
bot.send_message(message.from_user.id, «Привет»)
elif message.text == «Кто ты?»:
bot.send_message(message.from_user.id, «Я тестовый чатбот для учебного примера.»)
elif message.text == «Как тебя зовут?»:
bot.send_message(message.from_user.id, «Меня зовут MyFirstTestBot.»)
elif message.text == «Что ты умеешь?»:
bot.send_message(message.from_user.id, «Я умею отвечать на несколько простых вопросов — кто я, как меня зовут и что я умею делать.»)
else:
bot.send_message(message.from_user.id, «Я тебя не понимаю. Напиши что-то другое.»)
После тела метода, обрабатывающего наши запросы к боту, добавим вызов метода:
bot.polling(none_stop=True, interval=0)
Задачей этого метода является создание потока, в котором бот отправляет запросы на сервер, уточняя таким способом, не писал ли ему кто-то сообщение. Параметр none_stop: False означает, что наша программа будет продолжать отправлять запросы на сервер после получения сообщения об ошибке от сервера Telegram.
Сохраним наш код:
Мы можем протестировать работу нашего бота, запустив его код в той IDE, в которой мы писали. И написав нашему боту в мессенджере.
Все работает.
Наш учебный Telegram-бот создан. Мы можем запустить наш файл локально, и он будет отрабатывать запросы к нему через мессенджер прямо на нашем компьютере, выступающим в роли сервера. Но это не очень удобная практика. Для нормальной работы код желательно залить на отдельный сервер и запустить его там.
Вопросы заливки нашего простого бота на сервер мы рассмотрим в следующей статье.
Итоговый рейтинг
Для удобства сравнили конструкторы по 5 критериям. Рейтинг составлен на основе впечатлений автора статьи после тестирования сервисов.
Название | Интерфейс | Юзабилити | Возможности | Бесплатный тариф | Цены |
Bot Kits | ☆☆☆☆ | ☆☆☆☆ | ☆☆☆ | 14 дней | от 499 р. / бот |
BotTap | ☆☆☆☆☆ | ☆☆☆☆☆ | ☆☆☆☆ | ∞ | 490 р. / месяц |
Botmother | ☆☆☆☆ | ☆☆☆☆ | ☆☆☆☆☆ | ∞ | от 1249 р. / месяц |
Puzzlebot | ☆☆☆☆☆ | ☆☆☆☆☆ | ☆☆☆☆☆ | ∞ | от 490 р. / месяц |
Aimylogic | ☆☆☆☆☆ | ☆☆☆☆☆ | ☆☆☆☆☆ | 14 дней | от 990 р. / месяц |
Sendpulse | ☆☆☆☆ | ☆☆☆☆ | ☆☆☆ | ∞ | от 659 р. / месяц |
Chatforma | ☆☆☆☆ | ☆☆☆☆ | ☆☆☆☆ | 14 дней | 1000 р. / месяц |
Конструкторы чат-ботов позволяют создавать простых роботов. Чат-боты могут принимать заявки, выдавать ответы на основе шаблонов, рассылать письма и обрабатывать платежи. Для создания бота со сложной логикой понадобится помощь опытного разработчика.
Идеальные варианты для сборки ботов: Puzzlebot и Botmother. В них есть все необходимые инструменты для создания робота в визуальных конструкторах. Aimylogic подходит для нестандартных задач. Это единственный сервис с машинным обучением из нашей подборки.