- PVSM.RU - https://www.pvsm.ru -

Чат-боты на все случаи жизни. 7 инструкций по созданию мини-приложений в Telegram

Чат-боты на все случаи жизни. 7 инструкций по созданию мини-приложений в Telegram - 1

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

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

Выберите интересующего вас бота:

Паттерны взаимодействия с ботами [1]
Веб-приложение на Node.js и React [2]
Платежная система с Payments [3]
Карманный ChatGPT, которому можно отправлять голосовые сообщения [4]
Бот для генерации сложных паролей [5]
Бот для создания стикеров из сообщений [6]
Бот для мониторинга погоды на Python [7]

Паттерны взаимодействия с ботами


Вы можете усовершенствовать своего Telegram-бота, добавив паттерны взаимодействия с пользователями. Например, заменить командную строку на ключевое слово «Поехали!» или расположить под сообщением кнопку START. О том, как интегрировать эти паттерны в бот, подробно рассказываем в статье.

В процессе разработки мы использовали Python 3.9 и python-telegram-bot — фреймворк на основе обработчика. Ядро получает обновления (Update) от Telegram Bot API и вызывает соответствующий обработчик из списка зарегистрированных. Или игнорирует, если подходящего обработчика нет. В тексте вы найдете наглядную демонстрацию описанной работы.

Перейти к инструкции → [8]

Чат-боты на все случаи жизни. 7 инструкций по созданию мини-приложений в Telegram - 2

Кнопки InlineKeyboard.

Что вы узнаете из текста?

  • Какие существуют способы взаимодействия с Telegram-ботом.
  • Какие нюансы стоит учитывать в работе с ботами.
  • Как создать обработчик аргументов команды /start или кодовых слов — например, «Поехали!».
  • Как создать кнопки ReplyKeyboard, заменяющие клавиатуру, и InlineKeyboard, располагающиеся под сообщением.

Чат-боты на все случаи жизни. 7 инструкций по созданию мини-приложений в Telegram - 3

Веб-приложение на Node.js и React


Год назад в Telegram Bot API добавили Web Apps — кастомные страницы, которые открываются внутри переписки с ботом. Сейчас эта функция востребована у большого количества пользователей — от создателей маленьких tg-ботов до коммерческих компаний.

Мы подготовили инструкцию по созданию такого веб-приложения. В ней — пошаговая разработка с JavaScript-кодом, который вы можете использовать в своем tg-боте. В качестве фронтенда использовали React, а для бэкенда — node.js. Готовое веб-приложение будет поддерживать авторизацию пользователя, встроенную оплату через платежные системы, кастомизацию под выбранную пользователем тему и многое другое.

Перейти к инструкции → [9]

Чат-боты на все случаи жизни. 7 инструкций по созданию мини-приложений в Telegram - 4

Форма обратной связи.

Что вы узнаете из текста?

  • Как сделать форму обратной связи.
  • Как добавить кнопку «купить» и корзину с товарами.
  • Как обработать полученные данные методом sendData.

Платежная система с Payments


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

В статье используем популярную библиотеку на Python — aiogram, предназначенную для создания ботов. И связываем ее с приложением через Telegram Bot API. Дополнительно вы можете выбрать платежную систему. Мессенджер поддерживает оплату более чем в 200 странах через такие шлюзы, как Stripe, YooMoney, Sberbank, LiqPay, PayMaster и другие.

Перейти к инструкции → [10]

Чат-боты на все случаи жизни. 7 инструкций по созданию мини-приложений в Telegram - 5

Что вы узнаете из текта?

  • Как сгенерировать invoice с деталями платежа.
  • Как подключить возможность оплаты в рублях и долларах.
  • Как настроить платежи с помощью аргумента Pre Checkout Query и Successful Payment.

Карманный ChatGPT, которому можно отправлять голосовые сообщения


Часто сервисы Open AI неудобно использовать на территории России. Приходится каждый раз подключать VPN и писать запросы вручную. Потратить несколько минут на формулировку и еще несколько — на набор текста. Теперь представьте: вы открываете tg-бот, записываете голосовое сообщение и получаете текстовый ответ из ChatGPT. В нашей инструкции рассказываем, как это сделать.

Для настройки рабочего окружения мы использовали Node.js и фреймворк Telegraf. После научили бота обрабатывать голосовые сообщения, получать на них ссылки в формате ogg и преобразовывать в текст. А чтобы бот всегда был на связи, задеплоили его на облачный сервер.

Перейти к инструкции → [11]

Чат-боты на все случаи жизни. 7 инструкций по созданию мини-приложений в Telegram - 6

Что вы узнаете из текста?

  • Как научить бота фильтровать голосовые сообщения и получать на них ссылки в формате ogg.
  • Как обрабатывать и конвертировать полученные данные из getFileLink в mp3.
  • Как сохранять сообщения и их контексты для каждого пользователя.

Бот для генерации сложных паролей


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

Для создания такого бота мы использовали сразу несколько инструментов. Среди них — PyCharm, aiogram и Redis. Далее настроили параметры конфигурации из готового репозитория на GitHub. По умолчанию вы можете выбрать любой из трех пресетов для генерации пароля. Если в какой-то момент их станет недостаточно, вы всегда можете добавить новые или изменить существующие в XKCD-password-generator.

Перейти к инструкции → [12]

Чат-боты на все случаи жизни. 7 инструкций по созданию мини-приложений в Telegram - 7

Что вы узнаете из текста?

  • Как создать новую конфигурацию бота.
  • Как изменить готовые пресеты в XKCD.
  • Как сделать бота, если у вас не PyCharm.

Бот для создания стикеров из сообщений


Было ли у вас такое, что какое-то сообщение друга в Telegram хотелось отправлять впоследствии в виде стикера? С этой инструкции вы можете создать с друзьями или коллегами свой личный «фонд золотых цитат». Концепт идеи прост: пользователь пересылает сообщение в диалог с ботом и получает готовый стикер. Без лишних действий и стороннего софта.

Для разработки мы выбрали Python версии 3.8. Нарисовали шаблон стикера с помощью библиотеки Pillow и продумали уникальные имена для набора. С последним оказалось не все так просто. Если использовать имя бота в уникальном имени набора, то любой может получить к нему доступ. Поэтому в качестве уникального имени выбрали скрытый UUID в Telegram.

Перейти к инструкции → [13]

Чат-боты на все случаи жизни. 7 инструкций по созданию мини-приложений в Telegram - 8

Что вы узнаете из текста?

  • Как исправить «особенность» с уникальным именем набора.
  • Какие ограничение мессенджер накладывает на стикеры.
  • Как разработать бота без БД и промежуточных файлов.

Бот для мониторинга погоды на Python


Классика бот-разработки! Задача отлично подойдет для знакомства с Telegram-ботами и первого пет-проекта. В результате получите карманного синоптика, который будет отправлять вам данные о погоде в любом городе.

В статье детально рассмотрим работу с API с помощью токенов для OpenWeather и Telegram-бота. Приступим к парсингу ответов в формате JSON: заберем данные о городе и температуре, влажности, давлении и скорости ветра. А после — задеплоим на облачный сервер. И все это на асинхронной библиотеке aiogram.

Автор: Анастасия Ербанова

Источник [14]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/diy/386387

Ссылки в тексте:

[1] Паттерны взаимодействия с ботами : #1

[2] Веб-приложение на Node.js и React: #2

[3] Платежная система с Payments : #3

[4] Карманный ChatGPT, которому можно отправлять голосовые сообщения: #4

[5] Бот для генерации сложных паролей: #5

[6] Бот для создания стикеров из сообщений: #6

[7] Бот для мониторинга погоды на Python: #7

[8] Перейти к инструкции →: https://habr.com/ru/companies/selectel/articles/685206/

[9] Перейти к инструкции →: https://habr.com/ru/companies/selectel/articles/726856/

[10] Перейти к инструкции →: https://habr.com/ru/companies/selectel/articles/729856/

[11] Перейти к инструкции →: https://habr.com/ru/companies/selectel/articles/731692/

[12] Перейти к инструкции →: https://habr.com/ru/companies/selectel/articles/717690/

[13] Перейти к инструкции →: https://habr.com/ru/companies/selectel/articles/598375/

[14] Источник: https://habr.com/ru/companies/selectel/articles/751930/?utm_source=habrahabr&utm_medium=rss&utm_campaign=751930