DroidScript
DroidScript
учимся и разрабатываем

Rudiskbot или несколько идей для своего бота

Ботостроительство  
12.12.2024

Перед тем, как что-то делать самим, неплохо посмотреть, что можно вообще делать. Практика показывает, что далеко не все даже опытные телеграмщики знакомы с режимом встроенных (inline) запросов. Для примера можно посмотреть Durger King, но предлагаю нечто более интересное и нестандартное - Rudiskbot.

Rudiskbot - это бот магазина видеоигр. После старта (подписки на бота) в ленте появляется пара сообщений.

Rudiskbot приветствие

Зачем нужно второе сообщение? При помощи одного сообщения нельзя установить две клавиатуры - под сообщением и пользовательскую.

Для простоты введём в чате:

@rudiskbot игра

В процессе ввода срабатывает автозаполнение и отображается список найденных игр.

Rudiskbot поиск игр

Помимо списка можно включить отображение найденных товаров в виде галереи

Rudiskbot gallery

У разработчиков ботов часто возникает вопрос, как в режиме галереи выводить надписи? Это недоступно. Суть режима галереи как раз и состоит в отображении только изображений.

После выбора товара из списка в ленте создаётся карточка товара с кнопками.

Rudiskbot карточка товара

Две кнопки слева загружают в карточку описание и следующую фотографию (если их больше одной), лупа - новый поиск, зелёная книга - сообщение с каталогом.

Rudiskbot каталог

Что тут и где - нужно разбираться, но PS5 нашел. Удобно то, что после нажатия на кнопку поиск выполняется сразу и ничего не нужно вводить:

Rudiskbot PS5

Введём слеш / и посмотрим, что с доступными командами. Анонс, помощь и купон на скидку. По кнопке Меню открывается этот же список зарегистрированных команд.

Суть персонального чата состоит в отображении диалога "вопрос-ответ". Но иногда возникают задачи, в которых это не требуется. Как что-то отправить боту без создания кучи ненужных сообщений и ответов в чате? Например, нам нужно сделать калькулятор.

Отправить сообщение боту без отображения в чате можно либо при помощи встроенного запроса, когда результат выводится во всплывающем меню, при нажатии на встроенную кнопку (под сообщением) или путём вызова мини-приложения.

Если сообщение вводится через поле ввода чата или при нажатии на кнопку пользовательской клавиатуры, то оно в любом случае отобразится в чате и убрать его можно будет только удалением сообщения. Сообщение можно не удалять, а обновлять. Так можно реализовать обучение языкам программирования JavaScript, PHP, Python и т.п. Ввод от пользователя будет удаляться, а результат интерпретации от бота - обновляться в одном и том же сообщении.

Что можно ещё придумать на базе встроенного запроса? Всё, что можно представить в виде списка, например, расписание занятий или мероприятий на неделю. Для этого можно использовать посты с закрепом, но преимущество встроенного запроса в том, что его можно выполнить из любого чата. Например, мы общаемся с кем-то, а по ходу дела посмотрели, какие мероприятия есть на сегодня, сколько стоят билеты, товар, какие появились новинки и т.д. Можно не только посмотреть, но и сразу переслать найденное собеседнику.

Введите в поле чата rudiskbot название товара.

Rudiskbot PS5

Встроенный поиск с автозаполнением явно выигрывает у такой "простыни". Для каждой найденной позиции можно создать сообщение, но так себе вариант. Конкуренцию может составить мини-приложение, но не во всём.

Для вдохновения можно посмотреть ещё примеры ботов, но хочется уже что-то и запрограммировать.

Ботостроительство  
© 2016-2025 
actech