Приложение Телеграмм честно может похвастаться открытием новой, абсолютно уникальной базы для создания ботов. Хоть ботовая платформа была разработана еще в начале лета (презентация состоялась 24.06), лишь малая часть активных внешних разработчиков начала усиленно шлифовать и разрабатывать собственные приложения.
Сегодня бот – незаменимый помощник для Telegram, ведь с его помощью устанавливается связь с запрашиваемыми серверами TelegramBot API. Кроме этого, сам процесс работы бота направлен на обращения на URL с заданными параметрами, после которого Телеграмм выдает JSON – ответ.
Давайте же окунемся вглубь вопроса и рассмотрим пример создания бота (тривиального типа).
Процедура регистрации приложения (бота)
Перед тем, как начать непосредственную разработку и заливку бота в общий интерфейс и чат, необходимо присвоить вашей мини – программе индивидуальный код (типа id), который является уникальным персонифицирующим токеном. Для того, чтобы осуществить данную операцию, необходимо отправить запрос в специфический бот — @BotFather.
Для того, чтобы осуществить данную операцию, необходимо следовать такому алгоритму действий:
- пишем текстовое сообщение с информационным наполнением «start»;
- после этого, получаем перечень всех возможных опционных команд и функций;
- далее отправляем боту сообщение с текстовым наполнением «newbot» и по входящему запросу существующего бота, придумываем никнейм своему боту (единственное условие: в имени должен быть суффикс/префикс «bot»);
- если все условия и правила учтены, то существующий бот выдает вам запрос и разрешительную ссылку (быстрое добавление созданного бота в список имеющихся контактов).
В принципе, к этому моменту уже можно запускать бот или же, при желании, возможно создать приветственное сообщение для будущих пользователей и описание бота. Возможно, если вы хотите поразить определенную целевую аудиторию, то может добавить созвучную музыкальную композицию или изображение. Важный совет: стоит проверить уникальность и пригодность вашего токена, перейдя по адресной ссылке (api.telegram.org/bot/getMe).
Процесс программирования ботов
Обычно боты создаются в режиме Python3, но благодаря прогрессивности ИТ — технологий, можете воспользоваться любым удобным и привычным режимом.
Телеграмм настроен на автоматическую загрузку сообщений, поэтому уместно создать конфиденциальное облако, которое значительно ускорить процесс выкачки текстовых сообщений (наиболее быстрым и применимым являетсяtornado.web.).
Пусть каркасная часть бота будет отражена в определённой фразе (логичнее использовать ту, которая отражает информационное наполнение запрограммированного бота). Тогда, перед тем, как запустить бот, необходимо провести процедуру активации WebHook с локализацией на собственный адрес. Далее настраиваем привычный сигнал (выход на 6) и отображаем нагружение происходящих событий/ действий.
Далее, в классе tornado.web.RequestHandler создается уникальная логика бота (логистическая программа):
- словарный запас;
- функциональная особенность отправки (пересылки) текстовых ответов;
- формирование сообщений.
После того, как вы занесли все нюансы в логику бота, необходимо начать разработку основных команд, которыми будет обладать ваша программа.
Создание команд
По правилам программы Телеграмм, абсолютно каждый бот (в не зависимости от специфики, популярности и загруженности) должен реагировать на 2 команды:
- Start;
- Help.
Первая команда создана для идентификации бота, а не для просмотра заложенной информации. Зачастую, ее использование тесно связано с процедурой авторизации каких — либо программ.
Команда «Help» направлена на отражение основных параметров бота, его специфических характеристик, особенностей и команд.
Для создания команд несменным помощником является основной бот @BotFather, который поможет вам создать необходимый и требуемый по вашей классификации перечень команд.
Всеобщность
Вы уже заметили, что программа Телеграмм присылает абсолютно целостные и значимые в смысловом плане сообщения, не разбивая их на отдельные нелепые части. Поэтому, возникает возможность запрограммировать ваш бота на озвучки человеческой речи (голосовое уведомление).
Единственный нюанс в том, что «говорливый» бот будет доступен только в приватных сообщениях, ибо в чате данная особенность невозможна. Для того, чтобы запустить процесс «говорения» бота совершаем ряд связных операций:
- отправляем текстовое сообщение «setprivacy» на адрес @BotFather;
- переключаемся на приватность;
- в перечне команд добавляем опцию «псевдо – речь».
После этого, бот может озвучивать сообщения и предавать информацию в голосовом режиме.
Медиа аспекты и возможности
Боты не многим отличаются от реальных пользователей месседжера Телеграмм, поэтому у них тоже есть возможность общаться с использованием картинок, музыкальных файлов, видеозаписей и стикеров.
Для того, чтобы заполучить пакет стикеров необходимо отправить текстовое сообщение «at_sticker» и провести модификацию к параметрам send_reply. Таким образом, помимо текста ваш бот будет высылать и забавные стикеры и отображать показатели времени.
Потенциал
С помощью надежной платформы API, боты могут стать незаменимыми помощниками и основой для автоматизации процессов, формировании викторин, опросов, конкурсов и отправки уведомительных сообщений. Основной упор можно сделать на специфику CTF, DozoR.
Рамки
Сегодня имеются жёсткие рамки в использование ВебХук. Дело в том, что он функционирует только на основе https (при наличии валидного сертификата). Далёко не каждый разработчик имеет валидный сертификат. А причина в том, что отсутствует поддержка от ДНС. Но, благодаря наличию ручного режима в Telegramm, есть возможность дифференцировать коды и службы имеющихся данных под те, к которым подстроена ваша программа, проводящие выкачку и пересылку сообщений на локальные адреса.
Другие материалы про ботов Telegram: