Боты, каналы и чаты Telegram на русском

Как работает флибуста

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

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

И недавно в Telegram появился бот, который имеет схожее название (@flibustamirrorbot). Здесь можно скачать книги, как в онлайн-библиотеке, хотя подтверждений нигде нет, что робот берет книги именно из базы данных Флибусты.

Работа программы происходит следующим образом:

  1. Поступает запрос от пользователя в виде названия книги или автора.
  2. Бот обращается к серверу и ищет все совпадения в своей базе.
  3. Затем он выдает ответ в виде списка книг, которые подходят под запрос пользователя.
  4. Далее пользователь выбирает один из форматов (fb2, epub, mobi), тем самым снова задав запрос, только уже в виде ID файла (каждый формат каждой книги имеет свой ID, и выбрав формат, мы выбираем именно ID).
  5. После этого программа снова обращается на сервер и ищет нужный файл.
  6. Как только файл найден, он отправляется пользователю, а тот в свою очередь может уже его скачать.

Здесь процедура может показаться несколько сложнее, но на самом деле здесь просто цикл повторяется два раза (каждый наш запрос – новый цикл).

Как работает бот статистики

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

То есть, работа такого робота делится на два аспекта:

  1. Собирать статистику и хранить ее на сервере. Бот не совершает данное действие по чьему-либо запросу и не отправляет ответов. Он просто пассивно собирает и хранит информацию. В такой ситуации цикл работы неполный, так как здесь нет первого и последнего пунктов.
  2. Выдача собранной статистики по запросу. А вот здесь уже цикл полный. И в отличие от предыдущего аспекта, этот начнет работать только тогда, когда руководитель канала решит увидеть статистику (то есть задаст запрос).

На примере ботов-статистиков можно увидеть, что действия программы бывают нескольких типов:

  • Пассивные (не требуется команды для начала работы). Такие действия будут выполняться либо по умолчанию, либо при соблюдении каких-либо условий.
  • Активные (для работы требуется команда от пользователя).

Тип каждого действия задается на программном уровне.

В чем заключается принцип работы ботов Телеграм

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

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

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

Вся программа хранится на специально выделенном сервере, а то, с чем мы взаимодействуем в самом Телеграм, является лишь рычагом управления программы.

Все гораздо проще выглядит на примере.

Например, у нас есть бот, который способен выдавать информацию по запросу пользователя. Мы пишем в чате свой запрос: «Когда состоится встреча?». Иными словами, мы только что дали ему команду. Он в свою очередь отправляет команду на сервер, где программа обрабатывает данный запрос. После она отправляет ответ боту. А тот выводит ответ на экран.

Таким образом, мы только что описали цикл работы роботов Телеграм:

  • Пользователь задает команду,
  • Далее бот отправляет команду на сервер,
  • Программа на сервере обрабатывает ее,
  • Далее ответ отправляется боту,
  • А тот показывает его пользователю.

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

Помните! Любое нажатие кнопки или отправленное сообщение – порождает новый цикл.

Например, бот-обменник. Вы выбрали действие, которое хотите совершить – обменять валюту. Это один цикл. Затем вы выбрали валюту. Это второй цикл. Затем указали сумму денег, которую хотите обменять. Это третий цикл.

Казалось бы, мы всего лишь нажали две кнопки и отправили одно сообщение, но бот успел проделать за это же время три цикла.

Иными словами, любое ваше действие – это команда для бота, которую он обязан выполнить.

Аудиокнига

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

Для тех, у кого книжная полка состоит не только их печатных и электронных изданий, существует специализированный канал, который так и называется «Аудиокниги».

В качестве альтернативы можно использовать ботов, обеспечивающих доступ к аудио файлам социальной сети «ВКонтакте», например, «@vkmusic_bot». Просто введите название аудиокниги, и при совпадении с файлами в соц. сети «ВКонтакте» вы сможете скачать его или начать прослушивать прямо из «Telegram».

vkmusic_bot

В качестве итога стоит сказать, что, к сожалению, большинство ботов книжной тематики в «Telegram» или не справляются со своим функционалом, или временно недоступны, как, например, в данный момент недоступны боты «Tap2bot» и «bukvoedbot».

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

Что делать если бот не работает

Часто бывают ситуации, когда бот попросту молчит. Он никак не отвечает на наши действия.

Здесь причин такого поведения может быть несколько:

  1. Причина в сервере. Все программы размещаются на специальных серверах, и если тот поврежден или не работает, то программа также не будет работать. Если вы владелец бота, можете попробовать поместить его на другом сервере. А если вы простой пользователь, то тогда ничего поделать не сможете.
  2. Ошибка в коде. Как мы уже говорили ранее, одна ошибка может привести к неисправности робота. В такой ситуации необходимо тщательно проверить весь программный код, найти и исправить ошибку.
  3. Неизвестная команда. Не все боты воспринимают одинаковые команды. Возможно, вы вводите команду, которую программа попросту не понимает, и, следовательно, никак на нее не реагирует. Также не все боты реагируют на обычные сообщения.

В такой ситуации вам поможет команда «/help». К счастью, каждый бот в Телеграм обязан обладать командами «/start» и «/help». Вторая выводит сообщение с возможными командами. Если же и это не помогло, тогда причина кроется в чем-то другом.

Как работает бот рассылок

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

В основе лежит все тот же цикл: Пользователь – Бот – Сервер – Бот – Пользователь.

Роботы такого рода, как правило, настраиваются заранее. А если быть точнее настраивается список получателей, который представляет собой список ID групп и пользователей.

А сам процесс рассылки происходит следующим образом:

  1. Мы отправляем сообщение, которое хотим разослать.
  2. Далее бот определяет, кому необходимо его отправить (это часть «Бот – Сервер – Бот»).
  3. После происходит рассылка (отправить можно, как текст, так и медиа-файлы, стикеры и т.д.).

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

Как работает бот-переводчик

Давайте рассмотрим принцип работы бота-переводчика.

Для нас, людей, процесс выглядит следующим образом:

  1. Мы пишем слово или фразу, которую хотим перевести. Например, слово «Небо».
  2. В ответ нам приходит перевод.

Все так просто и быстро. Хотя за это время успел пройти целый цикл.

А вот как на самом деле все происходило:

  1. Пользователь задал команду «Перевести» и написал, какое слово хочет перевести. Отправка сообщения для бота является командой – «Перевести», а слово «Небо» это параметр. Так он запрограммирован.
  2. Далее запрос отправляется на сервер.
  3. На сервере запрос обрабатывается программой. На сервере так же расположены библиотеки (словари), откуда программа берет перевод.
  4. Найдя нужный перевод, ответ отправляется обратно.
  5. А бот выводит нам ответ на экран.

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

Ссылка на основную публикацию