Проект: Shortcut Holder  Публичный пост
17 ноября 2023  613
Shortcut Holder

Расскажите о себе и сути проекта?

Shortcut Holder — бот в Telegram, который позволяет с помощью inline-команд быстро делиться заметками с кем угодной. Например, чтобы отправить реквизиты, на которые друзья отправят деньги за ужин, достаточно нажать в любом чате @, выбрать Shortcut Holder, затем из списка шорткатов выбрать нужный — вуаля. Шорткаты можно добавлять и удалять в личке с ботом, в списке отображается только первые десять, потому что я ещё не сделал пагинацию.

Как появилась идея? Что вдохновило?

В эмиграции столкнулся с тем, что некоторые привычные паттерны общения сломались: в Армении нет Системы Быстрых Платежей, поэтому для перевода на карту за ужин нужно прям номер карты вводить, да ещё и имя вписывать. А ещё в Армении отрицаются таблички с номерами квартир, подъездом и иногда даже домов, поэтому каждому новому гостю приходится присылать фото, ссылку на карты и подробную инструкцию.
Раньше для всего этого приходилось использовать запиненные в чате с женой сообщения и пересылать их.
Но я из тех людей, которые между тем, чтобы потратить на работу руками час времени или два на автоматизацию выбирают второе :D
Так я за день написал бота, который позволит мне в пару кликов отправлять друзьям инструкцию с маршрутом до моей квартиры, реквизиты моих счетов в России и Армении, ссылку на мой Zoom и видос с инструкцией пользования моим ботом. Жена для своего детского сада, в котором работает директором, запилила уже девять таких шорткатов, активно пользуется.

Что вошло в прототип и сколько времени на него было потрачено?

Примерно рабочий день ушёл на то, чтобы вспомнить, как пользоваться Telegram Bot API. Функционал — Add/List/Delete/Select. В inline-режиме можно отправлять шорткаты, в личке — добавлять новые, удалять старые и получать список всех. Из приколов — очень помог ChatGPT, который сгенерировал полезные интерфейсы для моделей и некоторых функций, пришлось лишь немного поправить некоторые поля, кайф.

Какой технологический стек вы использовали? Почему?

  • Виртуалка с Ubuntu развёрнута на Yandex Cloud (за халявную квоту сотрудника);
  • Managed PostgreSQL там же за те же деньги;
  • Бот написан на Python;
  • С Telegram общаюсь с помощью PyTelegramBotApi (polling + callback);
  • Через SQLAlchemy хожу в PostgreSQL;
  • Сгенерировал аватарку в ChatGPT.

Площадка для облака выбрана из-за наличия бесплатной квоты на 16К деревянных. Managed PostgreSQL выбрал, чтобы не мучиться с поднятием и всем таким. В целом можно было бы обойтись даже SQLite, потому что трафика у меня там сейчас кот наплакал. Писал на Python, потому что ничего толкового ни на одном другом ЯП написать не могу. Ну а набор библиотек классический для Python+Telegram.

Как вы запускались и искали первых пользователей?

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

С какими самыми неожиданными трудностями пришлось столкнуться?

Мало активных пользователей (никого, кроме нас с женой). Многие не активировались (всего 15% добавили хотя бы один шорткат). Хочу в ближайшее время сделать рассылку, чтобы активировать спящих или пообщаться на тему возможных проблем.

Сколько потратили и заработали? Есть идеи как это можно монетизировать?

Потратил время, заработал опыт. Если появится какая-то активная аудитория, попробую собрать немного донатов. Буду смотреть на динамику, возможно введу плату за использование более чем N шорткатов или за поддержку хэштегов.

Какие планы на будущее?

Сейчас сообщения не поддерживают разметку — хочу это исправить. На удивление, с кондачка завести не удалось, почему-то ломается трансформация разметки в MessageEntity, и получается обычный текст. Но это очень полезная фича для того, чтобы делиться, например, ссылками или кликабельным номером карты/счёта.

Нужны ли какие-то советы или помощь Клуба?

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

Какой совет вы бы сами могли дать идущим по вашим стопам?

Делайте то, что по кайфу. Если не по кайфу — не делайте. Если было по кайфу, но теперь не по кайфу — перестаньте делать. Если не было по кайфу, а по кайфу стало — начните делать!

Аватар Anatolii Maksimov
Anatolii Maksimov @tolord
Product AnalystЯндекс.Маркет
📍Ереван, Армения

vk; tg

TG-канал со всякими высерами на разные темы: тыц

Подкаст «Женгялов хац» про релокантов, которые в новой стране запустили своё дело: [лендос] (https://zh.mave.digital) и [tg-канал] (https://t.me/zh_hatz

8 комментариев 👇
Anton Zhornikov Metal 3d print, Wi-Fi, LTE developer 20 ноября 2023

Идея классная, но включу немного паранойи - то есть я тебе боту отправляю отсортированную инфу вида "вот мой паспорт чтобы билеты оформлять" "вот моя карта" "вот мой адрес" "вот моё расписание работы" "вот по такому адресу"
И всё это хранится у тебя без шифрования в текстовом виде, правильно я понимаю?)
Я согласен ,что в современном мире тяжело инфу конечно беречь, но всё же. У парольных менеджеров типа битвардена есть зашированные заметки примерно с таким же функционалом только без вызова бота, нужно руками заходить копировать.

  Развернуть 1 комментарий

@storm21110, Ну всякие штуки типа паспорта это я не вижу как сценарий использования, но да, я понимаю о чём ты. Чувствительность информации исключительно на страх и риск пользователя.
Я думал о шифровании, но не придумал никакого нормального способа его использовать.

  Развернуть 1 комментарий

Слушай а попробуй продвигать проект как linktree. Типо сенвис в котором ты можешь быстро полелиться своими ссылками на другие соц сети и проекты в тг

  Развернуть 1 комментарий

@vasyaivanovpv, хм, думаю, спасибо

  Развернуть 1 комментарий

достаточно нажать в любом чате @, выбрать Shortcut Holder, затем из списка шорткатов выбрать нужный — вуаля

Попробовал, не работает так. "Shortcut Holder" нет в списке.

  Развернуть 1 комментарий

@SergeyZwezdin, Нужно один раз написать имя бота целиком, потом оно будет в списке всегда.

  Развернуть 1 комментарий

😱 Комментарий удален его автором...

  Развернуть 1 комментарий

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

  Развернуть 1 комментарий

@vasyaivanovpv, К сожалению, коротким его не сделать, потому что нужен суффикс *bot. Но это фиксистся тем, что после хотя бы одного использования он появляется в списке по нажатию на @

  Развернуть 1 комментарий

@tolord, о кстати да, фича с собакой супернужная, не знал.

  Развернуть 1 комментарий

😎

Автор поста открыл его для большого интернета, но комментирование и движухи доступны только участникам Клуба

Что вообще здесь происходит?


Войти  или  Вступить в Клуб