Благодаря удобству API и быстрому старту боты Telegram могут стать хорошей площадкой для автоматизации ваших действий, настройки уведомлений, создания викторин и конкурсов на основе задач (CTF, DozoR и другие).
Как сделать бота в Telegram самому, на русском — алгоритм
Любой пользователь может создать бота для Telegram-канала, и мы его протестируем. Читайте подробную инструкцию, как сделать бота в Telegram на русском языке самостоятельно:
В первую очередь запустите приложение Telegram (желательно на компьютере или ноутбуке, чтобы было проще и удобнее создавать бота);
Находим поисковую строку и вводим туда имя другого бота — BotFather. С его помощью вы можете создать своего собственного бота Telegram. После того, как поиск выдаст вам результат, кликните по верхнему боту и нажмите на кнопку «Выполнить».
Теперь вы можете привлекать подписчиков на каналы и группы ТГ без спам-рассылок и заданий. Достаточно заказать необходимый ресурс по рекордным ценам.
Для этого действия вам будет предоставлено несколько вариантов команд, которые вы можете отправить боту.
Выберите команду /newbot и начните следовать инструкциям. Вам будет предложено придумать имя для вашего бота, например «Онлайн-музыка». Имя может быть любым;
Следующим шагом будет создание адреса для вашего бота. Например: music64_bot. В конце латинского названия обязательно должно присутствовать слово «bot». Если вы допустите какие-либо ошибки или имя бота занято, вы получите сообщение с просьбой повторить попытку;
После этого BotFather отправит вам API-токен (выделен на скриншоте), который обязательно нужно сохранить и никому не показывать. Это будет ключом к дальнейшему созданию бота;
После всех проделанных шагов можно приступать к настройке вашего бота:
Чтобы добавить основное изображение для вашего бота, нажмите команду /setuserpic. Выберите своего бота и отправьте фото;
Нажмите на команду /setabouttext и введите 2-3 предложения, которые будут служить информацией о боте (краткое описание);
С помощью команды /setdescription вы можете написать приветственное сообщение, описывающее все функции бота.
Теперь нужно сделать бота на русском языке, если ваш потенциальный пользователь из России:
Снова откройте поиск и введите следующее: «Manybot». Кликаем по верхнему боту и нажимаем «Запустить»;
Выберите русский язык для более удобного использования;
Далее нажмите кнопку «Добавить нового бота». В ответ вы получите инструкцию, согласно которой мы уже создали нового бота;
Нажмите кнопку «Я скопировал токен» и отправьте номер;
Теперь новый бот добавлен и вы можете добавить к нему описание. Или нажмите кнопку «Пропустить».
Теперь вы знаете, как сделать бота в Telegram и сможете его настроить. А именно:
Отправьте роботу сообщение: «/commands», после чего вы увидите окно настройки команд и главное меню;
Кнопка «Создать команду» позволяет зарегистрировать запрос, на который будет реагировать бот. Сначала задайте любое имя для команды, обязательно поставьте знак / в начале слова /;
Затем введите один или несколько вопросов, на которые ответит бот;
Теперь напишите ответ робота. И следуйте тому же алгоритму, чтобы создать другие команды.
Как видите, ничего сложного в создании нового бота в Telegram нет.<
Как сделать чат бот в Телеграмм или канал: все тонкости
Вы уже разобрались, как сделать чат-бота в Telegram своими руками, и убедились, что этот процесс не требует каких-то специальных знаний и навыков программирования. Но чтобы выжать из него максимум и сделать функционал своего бота шире, на помощь придут онлайн-конструкторы для создания и настройки телеграм-ботов.
Flow XO
Самая крупная и серьезная онлайн-площадка для создания ботов в Telegram. Этот сервис подходит для крупных компаний, так как его возможности достаточно обширны. Вы можете использовать этот конструктор бесплатно и платно. Конечно, у платной версии больше преимуществ, но для начала можно использовать пробную версию.
Chatfuel
Эта услуга бесплатна и имеет множество преимуществ. Постоянные пользователи включают таких гигантов, как:
Всего у этого конструктора около 15 миллионов поклонников, которые создали уже более 500 тысяч ботов. И еще одно преимущество этого сервиса в том, что созданные в нем роботы органично интегрируются с другими социальными сетями.
Recast AI
Разработчики платформы обещают своим пользователям, что создать бота сможет каждый благодаря простому интерфейсу. Этот сервис работает как платно, так и бесплатно, и обе версии практически не отличаются. Но корпоративные клиенты смогут работать с этим конструктором только на платной основе.
Помимо этих трех самых известных онлайн-конструкторов ботов для Telegram, есть и другие качественные платформы:
Теперь вам точно не составит труда самостоятельно создать Telegram-бота с помощью таких мощных инструментов и подробных инструкций. Также на нашем сайте вы можете узнать секреты как заработать в Telegram на ботах и каналах.
Сообщения, начинающиеся с косой черты, всегда будут отправляться боту (как и ответы на сообщения бота и @упоминания бота в чате). Приложения телеграм:
Регистрация
Перед началом разработки бота необходимо зарегистрировать и получить его уникальный ID, который также является токеном. Для этого в Telegram есть специальный бот: @BotFather.
Набираем для него /start и получаем список всех его команд.
В первую очередь вам отправляется /newbot, и бот просит вас придумать имя для нашего нового бота. Единственное ограничение на имя — оно должно заканчиваться на «бот». В случае успеха BotFather возвращает токен бота и ссылку для быстрого добавления бота в контакты; иначе придется ломать голову над названием.
Этого достаточно для начала. Особо педантичные уже здесь могут назначить боту аватарку, описание и приветственное сообщение.
Не забудьте проверить полученный токен по ссылке api.telegram.org/bot/getMe, говорят не всегда получается с первого раза.
Программирование
Я буду создавать бота на Python3, однако в силу адекватности этого языка алгоритмы легко переносятся на любой другой.
Telegram позволяет не загружать сообщения вручную, а ставить webHook, и тогда они будут отправлять каждое сообщение сами. Для Python, чтобы не заморачиваться с cgi и потоками, удобно использовать какой-нибудь реактор, поэтому для реализации я выбрал tornado.web. (для GAE удобно использовать пакет Python2 + Flask)
Здесь, когда бот запускается, мы устанавливаем веб-хук на наш адрес и перехватываем выходной сигнал, чтобы вернуть поведение с ручной загрузкой события.
Приложение tornado для обработки запросов принимает класс tornado.web.RequestHandler, который будет содержать логику бота.
Здесь CMD — словарь доступных команд, а send_reply — функция отправки ответа, принимающая на вход готовый объект Message.
На самом деле, ваш код довольно прост:
Теперь, когда описана вся логика бота, можно приступить к созданию для него команд.
Скорее всего, пользователь заметит всплывающее уведомление от бота и кликнет по нему. И даже если вы его пропустите, чат с ботом поднимется в списке выше других чатов.
Боты Telegram имеют множество уникальных функций, таких как настраиваемые клавиатуры, дополнительные интерфейсы для команд по умолчанию, внешние ссылки и специальные режимы конфиденциальности для групп.
Инлайн-режим
Пользователи могут общаться с вашим ботом прямо из поля ввода сообщения, из любого чата или группы. Для этого вам просто нужно ввести имя пользователя бота и поисковый запрос. После получения запроса бот может вернуть любой результат. Как только пользователь нажмет на одну из них, он сразу перейдет в чат. Таким образом вы можете запрашивать контент у бота в чатах, группах или каналах.
С помощью ботов пользователи могут играть в HTML5-игры в группах или приватных чатах. Игровая платформа Telegram поможет составить таблицу рекордов и уведомит пользователей об изменении рейтинга.
Под капотом у игр HTML5, поэтому можно создавать игры любой сложности. На данный момент команда Telegram создала несколько демо-игр:
Клавиатуры
Одной из самых необычных функций Bot API являются настраиваемые клавиатуры. Когда сервер отправляет ответ, можно отправить команду для отображения специальной клавиатуры с предопределенными параметрами ответа (см. ReplyKeyboardMarkup). Клиент Telegram, получив сообщение, покажет пользователю свою клавиатуру. Нажатие клавиши немедленно отправит соответствующую команду на сервер. Следовательно, можно значительно упростить взаимодействие робота с пользователем. В настоящее время для отображения на клавише можно использовать эмодзи и текст. Вот несколько примеров таких клавиатур:
Дополнительные сведения см в описании метода sendMessage.
Команды
Команды — более гибкий способ общения с ботом. Рекомендуется следующий синтаксис:
Команда должна начинаться с косой черты «/» и не может быть длиннее 32 символов. Команды могут состоять из латинских букв, цифр и знаков подчеркивания. Некоторые примеры:
Сообщения, начинающиеся с косой черты, всегда будут отправляться боту (как и ответы на сообщения бота и @упоминания бота в чате). Приложения телеграм:
Если в группе несколько ботов, вы можете добавить имя бота после команды, чтобы избежать частых конфликтов команд:
BotFather
BotFather — Один бот, чтобы управлять ими всеми. С его помощью изменяются настройки существующих ботов и создаются новые.
Создание бота
Введите команду /newbot, чтобы создать нового робота. BotFather запросит у вас имя нового бота и предложит вам имя пользователя.
Имя (имя) будет отображаться в контактах и чатах.
Имя пользователя — это короткое латинское имя, используемое для упоминаний ботов и в ссылках профиля на telegram.me. Имя пользователя должно состоять из латинских букв, знаков подчеркивания и цифр и содержать от 5 до 32 символов. Также имя пользователя обязательно должно заканчиваться на «bot», например: «tetris_bot» или «TetrisBot».
Ключ (токен) — это набор символов типа 110201543:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw, необходимый для получения и отправки сообщений с помощью Bot API.
Создание токена
Если вы потеряли или потеряли доступ к своему токену, отправьте команду /token для создания нового.
Настройки
- /setname — Изменить имя робота.
- /setdescription — изменить описание бота, которое представляет собой короткий текст, описывающий бота. Пользователи увидят его с самого начала, под заголовком «Что умеет этот робот?».
- /setabouttext — изменить информацию о боте, включая более короткий текст, отображаемый в профиле бота. Также, если кто-то поделится вашим ботом, этот текст будет отправлен вместе со ссылкой.
- /setuserpic — Сменить аватарку бота. Фото всегда хорошие.
- /setcommands — Изменить список команд бота. Каждая команда состоит из командного слова, которое начинается с косой черты («/»), и краткого описания. Пользователи увидят список команд, когда введут символ «/».
- /setjoingroups — определяет, можно ли добавить вашего бота в группы.
- /setprivacy — определяет, видит ли ваш бот все сообщения в группах. В выключенном состоянии все сообщения будут отправляться роботу.
- /deletebot — удаляет бота и его имя пользователя.
Обратите внимание, что применение настроек на сервере может занять некоторое время.
Сайт о Telegram на русском языке (неофициальный).
Здесь собраны приложения на базе MTProto, переведена часть документации с официального сайта, также работает Webogram.
P.S. В пункте 7 я нашел удобное решение: размещать бота не у себя дома, а на героку, так как все имена типа *.herokuapp.com защищены собственным сертификатом.
Есть три пути: браузерный поиск, каталоги, подготовленные ботами, сервисы обмена рекламой.
При первом варианте достаточно ввести в поиск запрос, например, «Лучшие боты Telegram для изучения английского языка». В выпуске будут представлены подборки из авторских ботов на разные темы.
Каталоги также можно найти через поиск в браузере. Введите запрос «Каталог ботов в Telegram». Вот пример такого сайта.
Чтобы найти качественного бота, используйте проверенные биржи объявлений. На таких ресурсах можно выбрать тему, посмотреть показатели, задать ценовой диапазон, почитать статистику и отзывы. Например, биржа Telega.in вручную выбирает ботов и каналы Telegram для своего каталога.
Мы рекомендуем отключать режим конфиденциальности только в случае крайней необходимости. В подавляющем большинстве случаев будет достаточно запроса принудительного ответа на сообщение бота.
Собираем данные
С помощью ботов можно проводить опросы среди подписчиков:
1. Введите /commands, выберите пункт меню «Создать команду» и введите имя для новой команды:
2. Нажмите кнопку Добавить вопрос, выберите тип ответа и введите текст вопроса:
3. Нажимаем кнопку Сохранить и нам приходит уведомление об успешном создании команды:
4. Ответы на вопрос можно посмотреть в Главное меню->Форма ответов->название команды:
Это все, что вам нужно знать, чтобы создать простого бота. Вы можете узнать больше о функциях, которые manybot.io может добавить, введя команды /help в своем боте.
Если нужно что-то посложнее
Возможности ботов Telegram гораздо шире, чем у ботов, построенных на платформе code.telegram.org, подробнее об API Telegram и создании приложений на его основе можно прочитать здесь.
Кстати, для расширения кругозора рекомендую статью 10 фактов о Telegram, которых вы не знали.
Без единой строчки кода! Telegram — мессенджер, созданный Павлом Дуровым в 2013 году, которым пользуются более 100 миллионов человек по всему миру. Помимо переписки с реальными людьми, он позволяет общаться с ботами — программами, которые в ответ на запросы пользователей предоставляют любую информацию. Примеры интересных ботов: Игра Что? Где? Когда? Посмотрите пароли от Wi-Fi Check.