ОПИСАНИЕ КОНЦЕПЦИИ TELEGRAM БОТОВ И ИХ РАЗРАБОТКА

Авторы:Б.И. Бийбосунов, С.К. Бийбосунова, Н.Ж. Жолочубеков

Источник: Бийбосунов Б. И., Бийбосунова С. К., and Жолочубеков Н. Ж.. "Описание концепции Telegram ботов и их разработка" Colloquium-journal, no. 7 (59), 2020, pp. 3-6. doi:10.24411/2520-6990-2020-11485

Аннотация

В данной статье подробно описана концепция Telegram ботов, история появления самого мессен- джера и ботов для него, а также будет рассмотрен способ их создания. Разработан Telegram бот, да- ющий прогноз погоды, и исходя из нее дает советы пользователям.

Введение

Telegram - мессенджер, получивший большую популярность и был создан в 2013 году Павлом Ду- ровым, также известным за создание социальной сети ВКонтакте. Широкую известность мессенджер получил за счет высокой степени анонимности, ко- торой удалось достичь внедрением шифрования пе- редаваемых данных. Был создан специальный про- токол обмена данными, конкретно для Telegram - MTProto, включающий в себя систему алгоритмов шифрования. В данном протоколе использовали DH (Криптографический протокол Диффи - Хелл- мана) и асимметричный алгоритм шифрования RSA для авторизации, а для передачи данных - AES (Advanced Encryption System). В новой версии про- токола MTProto 2.0 стали использовать хеширова- ние по алгоритму SHA-256 [1].

Android версии Telegram. Анонимный опрос в группе Telegram

Рис 1 - Android версии Telegram. Анонимный опрос в группе Telegram

В 2015 году Telegram добавил собственный API для разработки пользователями собственных ботов. На данный момент Telegram боты широко используются в различных целях: продвижение бизнеса (Бот от компании “Нова Пошта”, позволяет отслеживать свои посылки), доп. функции для ка- нала/группы (Бот для проведения опросов - Pollbot), проведение операций с криптовалютой (К примеру, от cryptorussia.ru. Однако надежность по- добных ботов не полностью достоверна) и прочие (К примеру, бот “Флибуста”, который позволяет сразу скачать книгу, которую вы запросили). В об- щем, Telegram боты очень даже актуальная тема, которая позволяет добавить множество полезных функций. В 2016 году был проведен конкурс по со- зданию Telegram ботов botprize с призовым фондом 200.000$ [2].

Пример реализации интерактивного Telegram бота с выбором кнопок

Рис 2 - Пример реализации интерактивного Telegram бота с выбором кнопок

Способ создания Telegram ботов

Для создания Telegram бота необходимы базовые знания языка программирования Python [3]. Первым делом, необходимо установить сам Python на ПК. Делается это через официальный сайт Python.

Официальный сайт Python

Рис 3 - Официальный сайт Python

Далее необходимо зайти в командную строку (В случае, если в качестве ОС используется один из дистрибутивов Linux - открыть терминал). Необходимо иметь интернет подключение для корректной ра- боты. Вводим: python3 -m pip install pyTelegramBotAPI [3].

Результат загрузки pyTelegramBotAPI через командную строку

Рис 4 - Результат загрузки pyTelegramBotAPI через командную строку

После завершения, открываем IDLE (Специ- альный встроенный IDE для написания программ- ного кода на Python), создаем новый файл и пропи- сываем следующее (Также возможно использовать IDE, как PyCharm, Visual Studio или же редакторы кода - Visual Studio Code, Sublime Text, Notepad++ и т.д. в связке с командной консолью):

import telebot
bot = telebot.TeleBot("TOKEN")
@bot.message_handler(commands= ['start', 'help'])
def send_welcome(message): bot.reply_to(message, "Howdy, how are you doing?")
@bot.message_handler(func=lambda message: True)
def echo_all(message): bot.reply_to(message, message.text)

Итак, мы прописали простого Telegram бота, который на ваше сообщение отвечает этим же со- общением, т.е. “эхо-бот”.

Разработанный Telegram бот, дающий прогноз погоды, и исходя из нее дает советы

Рис 5 - Разработанный Telegram бот, дающий прогноз погоды, и исходя из нее дает советы

Заключение

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

Литература

  1. Общая информация про Telegram [Элек- тронный ресурс]. – Режим доступа: https://en.wikipedia.org/wiki/Telegram_(software).
  2. API на Python для создания Telegram бота [Электронный ресурс]. – Режим доступа: https://github.com/eternnoir/pyTelegramBotAPI.
  3. Официальный сайт Python [Электронный ресурс]. – Режим доступа: https://www.python.org/.