Статья:

Методологии разработки чат-бота для платформы Telegram

Журнал: Научный журнал «Студенческий форум» выпуск №21(157)

Рубрика: Технические науки

Выходные данные
Смелов Д.Н. Методологии разработки чат-бота для платформы Telegram // Студенческий форум: электрон. научн. журн. 2021. № 21(157). URL: https://nauchforum.ru/journal/stud/157/94466 (дата обращения: 28.03.2024).
Журнал опубликован
Мне нравится
на печатьскачать .pdfподелиться

Методологии разработки чат-бота для платформы Telegram

Смелов Дмитрий Николаевич
студент, Российский университет транспорта, РФ, г. Москва
Сергеева Ольга Александровна
научный руководитель, профессор, доцент, Российский университет транспорта, РФ, г. Москва

 

METHODOLOGIES FOR DEVELOPING A CHAT-BOT FOR THE TELEGRAM PLATFORM

 

Dmitry Smelov

Student, Russian Transport University, Russia, Moscow

Olga Sergeeva

Professor, associate Professor, Russian Transport University, Russia, Moscow

 

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

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

Методы исследования данной предметной области:

1) Анализ научных источников;

2) Анализ документации;

В результате исследований была проанализирована предметная область создания чат-ботов на платформе Telegram и изучены способы и методы автоматизации бизнес-процессов с помощью чат-ботов.

Abstract. Today, the Telegram program is one of the most demanded messengers all over the world. Ease of use, ease of installation, availability on multiple platforms and operating systems, and a free distribution model allowed the messenger to confidently gain a foothold in the market. One of the main and unique features of this application is the ability to create a chat bot by the user, which can be designed for almost any need.

The purpose of this scientific article is to research and analyze the subject area of creating chat bots on the Telegram platform, as well as to consider methodologies for the development and use of these bots.

Research methods for this subject area:

1) Analysis of scientific sources;

2) Analysis of documentation;

As a result of the research, the subject area of ​​creating chat bots on the Telegram platform was analyzed and the ways and methods of automating business processes using chat bots were studied.

 

Ключевые слова: Telegram; чат-боты.

Keywords: Telegram; chat bots.

 

В текущих реалиях и физические, и юридические лица стремятся упростить и ускорить выполнение каких-либо процессов. Уменьшение времени выполнения даже небольшой последовательности действий может оказать огромный эффект и сократить денежные и временные расходы пользователя. Для этого используются различные методологии автоматизации процессов. Одной из них являются специальные программы – боты, которые разрабатываются под определенные нужды пользователей.

Боты представляют из себя специальную программу, которая выполняет автоматически или по заданному расписанию какие-либо действия через интерфейсы, предназначенные для людей.

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

Telegram - это кроссплатформенный мессенджер, позволяющий обмениваться текстовыми, голосовыми и видеосообщениями, и файлами многих форматов. Также есть возможность делать видео- и аудиозвонки, организовывать конференции, многопользовательские группы и каналы. Клиентские приложения Telegram доступны для Android, iOS, Windows Phone, Windows, macOS и GNU/Linux. Количество ежемесячных активных пользователей сервиса по состоянию на январь 2021 года составляет около 500 млн человек. Помимо обмена сообщениями в диалогах и группах, в мессенджере можно хранить неограниченное количество файлов любых форматов, вести каналы, создавать и использовать ботов. При этом, платформа является абсолютно бесплатной [1].

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

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

Создать чат-бота в Telegram можно несколькими способами:

1) С использованием Microsoft Visual Studio. В качестве языка программирования в этом случае рационально будет использоваться C# или Node.js. При этом, нет необходимости писать с нуля большие массивы кода, так как гораздо проще воспользоваться готовым набором шаблонов, таких как Bot Application, Bot Framework Emulator, Bot Dialog и Bot Controller. Информация по их установке содержится в документация Microsoft Bot Framework, вам же останется только настроить эти шаблоны под свои требования. Однако данный вариант подходит только для пользователей Windows.

2) С использованием PHP. В первую очередь данный язык примечателен тем, что по нему намного больше обучающей и технической литературы, чем по другим языкам. Также для PHP существует несколько уже готовых библиотек для работы с Telegram, таких, например, как Telegram Bot SDK, позволяющая свести усилия по созданию бота к минимуму.

3) С использованием Python. Python является одним из наиболее популярных решений. В основном это связано с широкими возможностями, доступными как при использовании стандартных библиотек, так и с применением уже готовых вариантов, таких как PyTelegramBotAPI, рассчитанных на работу непосредственно с Telegram. К тому же, бот, написанный на Python, работает намного быстрее, чем на других языках [2].

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

1) Пещера времени является старейшей и самой простой структурой выбора пути. Большинство простейших чат-ботов строится как раз с использованием этой модели. Она довольно универсальна. Ее применяются для чат-ботов, консультирующих пользователей на веб-сайтах или же для чат-ботов в технической поддержке компании. На такой схеме можно построить интернет-магазин в прямо на платформе. Чат-бот сможет определить потребности клиента и на выходе выдаст ему два-три варианта подходящего ему товара. Модель изображена на рисунке 1.

 

Рисунок 1. Модель «Пещера времени»

 

2) Перчатка – схема, которая разветвляется не сверху вниз, а слева направо. Обычно имеет одну центральную ось, от которой идут ответвления, которые заканчиваются либо остановкой чат-бота, либо возвращением на один или несколько этапов назад. Данная модель хорошо подойдет для создания образовательных проектов. Модель изображена на рисунке 2.

 

Рисунок 2. Модель «Перчатка»

 

3) Ветки и бутылочное горлышко – модель, в которой структура чат-бота разветвляется, но всегда сходится на ключевых этапах. Эту схему можно назвать усовершенствованной версией предыдущей модели в списке. Модель изображена на рисунке 3.

 

Рисунок 3. Модель «Ветки и бутылочное горлышко»

 

4) Квест – модель с очень сложной, но интересной структурой. Практически не используется в маркетинговых целях. Основное использование такой модели распространено в игровых проектах для создания уникальной и захватывающей истории. Модель изображена на рисунке 4.

 

Рисунок 4. Модель «Квест»

 

5) Открытая карта - схема, по которой можно перемещаться в обе стороны. Такую структуру имеют личные кабинеты в мессенджере. Также в качестве примера можно привести путеводитель по торговому центру, где общее меню — этаж ТЦ, есть разделение по типам отделов, из которых ведутся ссылки на конкретные магазины [3]. Модель изображена на рисунке 5.

 

Рисунок 5. Модель «Открытая карта»

 

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

  1. Регистрация. Прежде чем начинать разработку, бота необходимо зарегистрировать и получить его уникальный id, являющийся одновременно и токеном. Для этого в Telegram существует специальный бот — @BotFather. Ему необходимо направить команду /start и получить в ответ список всех его команд. Для создания используется команда /newbot. После наименования вашего бота, BotFather возвращает токен бота и ссылку для быстрого добавления бота в контакты.
  2. Программирование. Описание кодом «каркаса» бота, его основного функционала, подключение библиотек и модулей.
  3. Команды. Telegram требует, чтобы у бота обязательно были встроены 2 команды: /start и /help. Первая команда запускает итерацию, вторая команда выводит список доступных пользователю команд.
  4. Свобода. После соблюдения всех вышестоящих этапов можно приступать к программированию всего функционала чат-бота [4].

 

Список литературы:
1. Telegram [Электронный ресурс]. URL: https://ru.wikipedia.org/wiki/Telegram
2. Создание бота в Telegram. Основы. [Электронный ресурс]. URL: https://wibe.ua/sozdanie-bota-v-telegram/
3. Модели для написания сценариев чат-ботов [Электронный ресурс]. https://vc.ru/services/102218-modeli-dlya-napisaniya-scenariev-chat-botov
4. Инструкция: как создавать ботов в Telegram [Электронный ресурс]. https://habr.com/ru/post/262247/