Блог Виктории Карповой. Как сделать бот для телеграмма


Как создать своего чат-бота для Телеграм новичку?

Привет, друзья! На волне тренда мессенджеров и чат-ботов, наконец, добралась до создания своего бота в Телеграме. Реализовала простенького бота-помощника, а заодно решила поделиться с вами инструкцией, как я это сделала. Кроме того, в мой адрес звучали вопросы такого типа: как через бота отдавать подарок новым подписчикам. В общем-то, я этим тоже озадачилась. :yes:

На самом деле, здесь нет ничего сложного. Главное продумать действия (команды) для бота.

Для своего я сделала небольшое меню из 3 пунктов – где можно забрать полезный подарок, получить доступ к моему бесплатному курсу по партнеркам и связаться со мной в личке.

Выглядит эта менюшка следующим образом:

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

Какие возможности есть у бота?

1) Создание пользовательских команд и ответов на них.

2) Создание меню из команд. Это удобно, так как пользователям не надо вводить команды, а можно использовать для навигации готовое меню.

3) Возможность отправлять сообщения подписчикам (в том числе отложенные), просматривать количество подписчиков в боте.

4) Несколько языков интерфейса, в том числе русский.

5) Можно настроить автопостинг в бота из rss блога или сайта, а также с YouTube-канала, ВК, Твиттер.

Как создать своего Телеграм-бота?

Я записала пошаговую видеоинструкцию – пример создания простого бота с меню:

Посмотреть на моего бота в действии вы можете здесь. В диалоге с ним нажмите «Начать» (Start), дальнейшие действия он вам подскажет.

Итак, для начала создания своего Телеграм-бота, зайдите на сайт manybot.io, там нажмите по кнопке «Создать бота». Вас перебросит на первоначальные инструкции.

Нужно перейти на Manybot в Телеграме и нажать «Начать» (Start) в чате с ботом, чтобы получить дальнейшие инструкции.

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

После выбора русского языка вы сможете приступить к созданию бота, все инструкции будут даваться в диалоге (чате).

Первым делом вводим команду /addbot или просто жмем по ней в полученном от бота сообщении.

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

Следующим шагом нужно напечатать в диалоге с BotFather команду /newbot и следовать дальнейшим подсказкам. А именно:

1) На английском нам предлагают указать название (имя) своего будущего бота. Я его назвала ViktoriaHelps и отправила это название в диалоге BotFather.

2) Далее указываем логин для бота. Обязательное условие, чтобы логин оканчивался на bot. Можно написать концовку слитно или через нижнее подчеркивание: _bot.

3) После этого получила сообщение с поздравлением, что мой бот создан, ссылку на него в Телеграм, а также токен, который мне нужно скопировать.

Далее возвращаюсь к диалогу с Manybot (выбираю его в контактах слева) и отправляю в чат сообщение со скопированным токеном.

В ответ получаю сообщение о том, что мне нужно добавить описание (приветственное сообщение) для своего бота. Это описание пользователь будет видеть в чате с ботом, когда перейдет на него.

Отправив Manybot описание, вижу сообщение, что мой бот успешно создан. Чтобы он появился в контактах слева, перейдите по ссылке на него и нажмите в чате «Начать».

Кстати, описание бота в любое время можно отредактировать. Делается это через команду /setdescription в диалоге с Manybot.

Настраиваем команды и меню в боте

Далее переходим к настройкам нашего бота и переключаемся на диалог с ним. Жмем внизу чата «Начать».

В ответ получаем сообщение с описанием нашего бота (то, что мы указали на предыдущем шаге). Его же будут видеть и подписчики вашего бота.

В сообщении ниже отобразится меню для управления вашим ботом (его видите только вы, как владелец бота). Если это сообщение не появилось, вы можете вызвать его сами, введя в чат команду /help или выбрав раздел «Помощь» в меню бота.

В этом сообщении отображаются команды, которые вы можете использовать для управления ботом. Например, чтобы отправить новое сообщение подписчикам, воспользуйтесь командой /newpost. Просто кликните по ней, либо отправьте в диалог боту и следуйте дальнейшим подсказкам. То же и с другими командами.

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

Для этого в меню под полем ввода сообщения кликаем по пункту «Пользовательские команды».

Выбираем «Создать команду».

Указываем название нашей команды – оно должно быть латиницей и без пробелов. Название может содержать цифры и нижнее подчеркивание (для разделения слов). Перед командой используем значок слеш (косую черту) /.

Вводим команду в поле сообщения и жмем Enter.

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

Мой пример ответа ниже, чтобы его сохранить, жмем «Enter», а затем кнопку «Сохранить».

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

Кстати, при создании команды мы можем добавить вопрос – обычный, развернутый, с вариантами ответа. Чтобы добавить вопрос, следуйте подсказкам бота.

Если вы хотите отредактировать или удалить команду, кликните по ней в меню.

Откроется новое меню, в котором вы сможете выбрать желаемое действие.

Например, выбираем редактирование. Здесь действия будут следующими:

1) Сначала нам нужно удалить предыдущий ответ на команду и подтвердить действие.

2) Затем нажать «Добавить сообщения к команде».

3) Вводим новый ответ, отправляем боту, сохраняем.

4) Получаем сообщение, что команда успешно отредактирована.

Чтобы вернуться к предыдущему меню, нажимаем «Назад».

Как добавить команду в меню бота?

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

Нажимаем по кнопке «Настроить главное меню».

Выбираем «Добавить пункт меню».

 

Выбираем нашу ранее созданную команду.

Вводим название для данного пункта меню и отправляем боту. Например, я назову «Перейти в блог».

 

Видим, что новый пункт добавился в меню!

Далее, если проскроллим эту менюшку вниз, увидим кнопки для добавления нового пункта меню. Все точно также – сначала создаем команду, затем добавляем ее в меню.

А также кнопку возврата на предыдущее меню.

Как удалить команду из меню?

Если вы хотите удалить пункт меню или поменять его название, просто кликните по нему.

У вас откроется другое меню с доступными действиями. Здесь много настроек, в частности можно менять расположение пунктов, создавать многоуровневые меню. Но сейчас не об этом…

Опять же, проскроллив менюшку вниз, вы увидите кнопки «Переименовать» и «Убрать пункт из меню». Выбираете нужное действие и следуете подсказкам бота.

Например, я просто удалю пункт «Перейти в блог» из меню.

Вернуться к главному меню и настройкам бота

Для этого кликаем на кнопку «Назад» в открывающихся меню, пока не выйдем на главное.

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

Ну а в пункте «Настройки» главного меню можно подключать Телеграм-каналы для постинга из бота, настроить автопостинг из RSS, Twitter, YouTube, VK. А также настроить часовой пояс.

Как увидеть меню своего бота и покликать по нему в качестве нового пользователя?

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

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

Друзья, если у вас есть вопросы по уроку, буду рада подсказать в комментариях. ;-)

Желаю успехов!

С уважением, Виктория Карпова

ТАКЖЕ РЕКОМЕНДУЮ ЭТИ МАТЕРИАЛЫ:

Как установить мессенджер Телеграм и начать им пользоватьсяКак создать и использовать канал в TelegramКак пользоваться блог-платформой Telegraph от Telegram

o-zarabotkeonline.ru

Делаем Telegram бота - Как создать бота телеграмм? Пишем, делаем, удаляем

Как создать бота в Телеграмм? В нашей статье ты найдешь все, чтобы у тебя получилось создать бота для Telegram без особого труда. Теперь каждый может (если знает) как создать бота телеграмм. Разработчики сделали общедоступной данную платформу.

Симулятор собеседника Telegram — это программа, которая запускается и работает на вашей стороне. Она посылает запросы к АПИ Telegram Bot, который является достаточно простым:

  • Программа обращается к установленным параметрам по ссылке;
  • Телеграмм отвечает JSON массивом.

Чтобы понять принцип работы Telegram API, нужно попробовать создать элементарного бота в Телеграмм.

Регистрация

До того как создать бота телеграмм, нужно сделать новую учетную запись для программы Telegram и получить присвоенный ей ID, который является также токеном. В Телеграмм помощь при такой регистрации оказывает виртуальный помощник @BotFather.

Делается это так:

  1. Боту следует написать инструкцию /start.
  2. В ответ он пришлет список всех своих команд.
  3. Далее нужно отправить установку /newbot.
  4. @BotFather предлагает придумать новое имя. Оно должно заканчиваться словом «bot».
  5. Если все сделано правильно, помощник присылает токен нового виртуального пользователя и url для добавления его в список контактов.

Полученную комбинацию желательно протестировать этой ссылкой: api.telegram.org/bot/getMe.

Процесс программирования

В данной статье рассказывается, как создать бота телеграмм на Python3, но все алгоритмы можно перенести на любой язык.

В Telegram есть возможность вместо выгрузки сообщений вручную установить вебхук, чтобы они присылали каждое письмо сами. Для создания Telegram бота на Python лучше воспользоваться каким-нибудь реактором, например, tornado.web.

Костяк программы:

Костяк программы

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

Логика будет находиться в классе tornado.web.RequestHandler, который реактор принимает для обработки запросов.

класс tornado.web.RequestHandler, который реактор принимает для обработки запросов

CMD обозначает словарь всех доступных команд. Send_reply — это функция отправления ответа. Она принимает готовый массив Message.

Код вот:

Команды

Сначала следует научить программу бота в Telegram константам /start и /help:

Учим программу константам /start и /help

Объект message[‘from’] является массивом типа User. От него бот получает данные пользователя, его ID и имя. Будет лучше, если функция ответов будет принадлежать message[‘chat’][‘id’]. Так при общении там будет User, а в случае чата — id последнего.

Установке /start отводится сразу две функции:

• команда без параметров нужна для вывода данных о боте; • с параметрами — для идентификации.

Есть смысл применять ее для требующих авторизации действий.

Теперь вы можете создать любое собственное задание. К примеру, /base64.

Создание /base64

Для тех, кто пользуется мобильным Telegram, будет полезно дать @BotFather перечень команд, которые должен принимать новый виртуальный собеседник:

Для мобильных Telegram перечень команд

Если пользователь Телеграмм захочет увидеть перечень доступных заданий (например, чтобы узнать, как убить программу после выполнения задачи), ему нужно будет написать «/».

Как научить бота говорить

Телеграмм присылает полностью все сообщение. Ограничение на необходимость ставить перед командами слеш создано только для удобства пользователей. Это позволяет научить программу отвечать по-человечески. Для того чтобы дать ей возможность получать в группах все сообщения, нужно написать /setprivacy помощнику @BotFather, отключая, таким образом, приватность.

В Handler следует добавить обработчик:

В список команд нужно включить речь:

В список команд включаем речь

Значение 75 здесь отображает вероятность того, что хочет сказать пользователь. Константа format_map удобна для описания требующих подстановки строк.

Так бот сможет отвечать на приветствия и обращаться к собеседнику по имени.

Отсылаемые сообщения могут быть не только текстовыми

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

Например, можно расширить словарь RESPONSES так:

И будем ловить сообщения:

Теперь объект Message не включает в себя текст, поэтому нужно изменить send_reply:

Так робот будет иногда присылать картинку вместо времени:

Отправка картинки со временем

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

Спасибо статье: https://habrahabr.ru/post/262247/

messagu.ru

Как написать бота для Telegram за 10 минут? / itProger

У активных пользователей Телеграмм, особенно у владельцев коммерческих страниц, возникает закономерный вопрос, как сделать бота для Телеграмм? Какие же навыки для этого потребуются?
Немного о ботах
Боты – это особые роботы, запрограммированные для выполнения определённых действий, преимущественно «механических» и однотипных манипуляций. Для социальной сети Телеграмм актуально программирование бота для: поиска и фильтрации определённых данных, организации рассылки для пользователей в каких-либо кругах, перевода информации между несколькими языками, формирования только интересных и актуальных новостных лент. Боты способны даже выполнять роль ИИ в играх. Список потенциальных функций робота многогранен. Отдельные разновидности ботов способны к имитации настоящего, реального общения. Нельзя сказать, что такие роботы выходят сильно интеллектуальными, но шаг за шагом ведутся разработки. Возможно, в скором будущем отличить бота и реального человека будет не под силу.
Создание бота для Telegram
Перед тем, как написать бота для Telegram важно четко поставить перед собой цель. Самый первый этап заключается в составлении плана основных задач, которые стоят перед программой. Возможно это рассылка сообщений, ежедневное обновление курса валют и остальное. На этом основании будет составляться код. Написание робота не всегда требует знание веб-языков программирования, можно обойтись практически без данной информации. Единственный недостаток второго варианта – программу нельзя будет качественно оптимизировать и могут появляться некоторые косяки. Для создания бота потребуется робот - @BotFather. Изначально потребуется добавить бота в список контактов и инициировать его запуск.

Написание бота выполняется поэтапно:

  1. Ввод команды /newbot – сейчас происходит генерация собственного, нового бота. Робот системы, BotFather, запросит ввести имя для бота, оно должно быть уникальным и заканчиваться на 3 буквы – «bot»;
  2. По желанию добавляется аватарка для программы и описание его действий или информация об авторе;
  3. На этом этапе BotFather пересылает ваш собственный токен API. В будущем код потребуется, поэтому нужно сохранить его куда-нибудь, чтобы не потерять, ведь запомнить вряд ли получится;
  4. Теперь бот создан, но его функционал приравнивается к 0. Для обучения программы хоть каким-нибудь действиям лучше использовать программирование, но подойдёт и Paquebot – ресурс для формирования роботов в социальные сети;
  5. Далее нужно добавить ещё одного бота - @Chatfuel и активировать его;
  6. Для запуска нужно ввести /addbot и после пробела вставить токен, который был ранее бережно сохранён;
  7. Сейчас бот уже сохранился на сервисе и пользоваться им можно прямо оттуда. Интерфейс программы интуитивно понятный, а команды для управления требуют начального уровня английского для понимания их предназначения. Функций огромное количество, поэтому перечислять нет смысла.
Используя услуги Paquebot теперь возможно управлять всем функционалом собственного бота, достаточно вводить базовые команды. К примеру, можно задать для бота права администратора канала, и он самостоятельно будет добавлять новости и обновлять ленту. Дополнительно здесь же возможно настраивать обновление в параллельных социальных сетях Вконтакте, Twitter, YouTube и подобных.

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

Теперь вопрос, как создать бота в Телеграмм, можно считать исчерпанным, если же пользователь желает поделиться своим творением, рекомендуется добавить его в каталог на Store Bot или заняться продвижением в социальной сети. В конечном счете бота можно продать.С использованием материалов сайта Telegram Free.

itproger.com