Одним из трендов 2024 года в Telegram стали Мини-приложения - это, как сайт, только в мессенджере, представляете? - Нет, я покажу!Я Владислав, разработчик Telegram ботов. Разрабатываю на среде конструктора PuzzleBot. Возможности данного конструктора позволяют создавать от простых до сложных ботов, а сам сервис следует трендам мессенджера и выпустил обновление, в котором можно создавать Мини-приложения. Мы сразу решили внедрить эту технологию в наш проект.Driver - это бот-сервис, который я развиваю с партнером Сергеем. Идея сервиса простая, Telegram - удобный и многофункциональный мессенджер, так почему бы в нем не сделать сервис по заказу автомобилей? Сделали 🫡🔗Ссылка для ознакомления с ботом: https://t.me/tg_driver_botВ данной статье, Вы узнаете:Что такое мини-приложение, и чем оно отличается от обычного Telegram ботаКак через Telegram бота регистрировать пользователейПочему мы использовали мини-приложение для реализации отдельных функций ботаКак прокачать группу до супергруппы и отправлять в нее заявкиЗачем боту нужна база данныхЗадача ботаУдобное оформление заявки на автомобиль через Telegram бота. Все доступные функции из подобных агрегаторов реализованы в данном боте. Вы можете заказать машину, посмотреть статус вашего заказа, получить уведомление о подаче машины, о подробном функционале я расскажу далее в статье.Структура бота в конструктореЧто решает ботСервисы по заказу машин уже давно не являются новинкой, и любая крупная компания имеет свой агрегатор и предоставляет такие услуги. Но как оказалось, люди в регионах не имеют возможности пользоваться этими агрегаторами, поэтому было решено разработать Telegram бота, и постепенно интегрировать его в разные поселки.Как работает ботЧасть функционала выполнена через мини-приложения, часть в привычном интерфейсе Telegram. Вся логика бота настроена через PuzzleBot с применением интеграций сервиса.Далее разберем каждую функцию отдельно.Демонстрация работы бота для пассажираМини-приложенияМини-приложения стали прорывным обновлением для всего сообщества, и вот почему:Нет ограничений. Да, как бы это не было грустно, но у Telegram ботов есть ограничение на количество запросов в секунду, так, если 30 человек в одну секунду запустят бота, 31й пользователь получит сообщение через некоторое время. У мини-приложений, таких ограничений нет.Бесшовный интерфейс. Мини-приложения имеют всем привычный формат сайта, в то время, как в боте переход от одной команды к другой реализуется, в основном, через кнопки.Отдельное окно. Меня очень вдохновила возможность добавлять мини-приложение на рабочий стол своего телефона. Теперь не нужно будет скачивать отдельное мобильное приложение, например, чтобы записаться на мероприятие - это очень актуально в наши дни.Быстро и доступно. Мобильные приложения создаются очень долго и стоят дорого. Благодаря Telegram, есть возможность создать мини-приложение от 2х недель с ценой в десятки раз ниже цены на мобильное приложение.В нашем проекте через мини-приложения работают регистрации пользователей: пассажиров и водителей. А также, через мини-приложение сделали оформление заявки на машину.Демонстрация работы мини-приложений для регистрации пользователей ботаРегистрация пользователейПользователям бывает сложно заполнить все данные для регистрации через бота и не совершить ошибку, тут мини-приложение оказалось очевидным выходом сразу по ряду причин:Все в одном окне, пользователь видит введенные данные и может их сразу изменитьУдобный интерфейс и приятный дизайн. Гибкость в настройке от выбора цвета кнопки до загрузки фонового изображения для всего мини-приложенияДля каждого формата данных в конструкторе есть свой блок. Например, при запросе фотографии, пользователю доступна кнопка, при нажатии на которую, откроется галерея и предложит выбрать изображениеРегистрация пассажира через мини-приложениеЛогика работыГлавная функция бота - это работа с заявками, поэтому важно, чтобы каждый этап отрабатывал стабильно, и бот моментально реагировал на любые изменения. Мини-приложение позволило сократить количество запросов при формировании заявки с 7 запросов (каждый вопрос в заявке = одному запросу в Telegram) от одного пользователя до 1 запроса, такой запрос отправляется для публикации заявки в группу.Слева форма заявки через интерфейс Telegram, где каждый блок - это отдельный запрос. Справа мини-приложение - единая форма заявкиЗаявки в группеДля водителей была реализована группа, куда приходят все заявки. Доступ в группу открывает бот после прохождения регистрации и верификации от администратора.Заявка - это пост в группу от бота с кнопкой. При нажатии на кнопку, пользователя перенаправляет в бот, где уже проверяется статус заказа, и ,если заявка актуальна, пользователь становится исполнителем, а сам пост с заявкой удаляется из группы.Демонстрация заявки в группе и работа статусов через ботаБаза данных - nocoDBДля работы такого масштабного проекта обязательно подключать базу данных к боту. В нашем проекте мы подключили nocoDB - база данных, которая позволяет хранить разные типы данных в ячейках. Что дает база данных боту:Все нужные данные, которые поступают в бот, фиксируются в таблице. Мы получаем данные в удобном формате для работы вручную или подключения дополнительных интеграцийПри необходимости, бот может обращаться к этой таблице или определенной ячейке, чтобы изменить данные. Например, таким образом работает изменение статуса заявкиЧерез интегрированные переменные бот может получить необходимые данные из таблицы. Так работает личный кабинет у пользователей ботаБаза данных nocoDB в табличном виде для ботаВ итогеМы решили сразу несколько задач данным ботом:Удобно для пассажиров. Через мини-приложения получилось упросить регистрацию пользователям, а каждая новая заявка меньше влияет на производительность бота (в 7 раз)Удобно для водителей. Единая группа с заявкамиМы продолжаем развивать проект Driver, в ближайших планах - подключить заявки для курьеров и разработать мини-приложения для разных функций бота.Составили прототипы будущих функций ботаСпасибо, что прочитали 🫶🏻 Если Вы хотите внедрить мини-приложение для Вашего проекта, пишите мне - @serebertsevv. Посмотреть другие работы можно в канале - Бот ис лав
Выглядит действительно интересно 👍
Действительно интересно указывать адрес не на карте а вводя улицу вручную, такого не видел еще