Как я написал Telegram-бота для учёта подписок

Kate

Administrator
Команда форума

Мотивация​

В прошлом году я серьёзно пересмотрел свой подход к подпискам на разные сервисы, убрал что-то ненужное и пробовал много разных новых сервисов взамен ушедших.
Попробовал ВК Музыку и МТС Музыку вместо Spotify. Ну и посмотрел разные онлайн-кинотеатры, пока были бесплатные пробные периоды и промокоды: More TV, Окко и ТНТ Премьер (До этого сидел в основном на Кинопоиске и Netflix). Не везде впечатлился или впечатлился недостаточно сильно, чтобы продлить подписку, но опыт был интересный.
Пока тестил подписки, решил подойти к этому основательно и начал вести учёт трат. С одной стороны, не хотелось, чтобы деньги с зарплатной карты списывались из-за того, что я забыл отключить пробный период. С другой стороны, заводить левую карту, на которой нет денег, тоже было не очень удобно, так как планировал пользоваться подписками, которые мне понравятся. Но вообще с точки зрения учёта это самый годный вариант, так как с пустой карты ничего и не потратишь

Технологический стэк​

В общем подумал: я ж программист - и решил написать Telegram-бота, который будет напоминать мне о подписках. Пара вечеров, сервер на Яндекс Облаке (дабы не было проблем с оплатой AWS, Google Cloud Functions и прочей приблуды, которая в любой момент может закрыть продажи на российском рынке) и готово.
Мой технологический стэк:
  • Python
  • Яндекс.Облако.
    • Плюс №1. Яндекс не уйдёт из России, не перестанет предоставлять услуги, не заблокирует мне учётку со всем кодом и продолжит принимать оплату. Если бы я сделал бота на Google Cloud Functions или AWS, есть риск, что потом пришлось бы всё переписывать.
    • Плюс №2. У Яндекса есть собственные аналоги под всё, что мне было нужно и этим можно пользоваться бесплатно (по крайней мере, пока это не стало популярным). Например, можно воспользоваться Managed Service for YDB вместо других дорогих СУБД.
    • Минус №1 вытекает из предыдущего пункта. Я привык, что, когда что-то не получается в программировании, можно нагуглить решение твоей проблемы на StackOverFlow или найти видео на Youtube, где харизматичный индус всё доходчиво объяснит. В моём случае всё было иначе: очень мало туториалов от сообщества, когда дело доходит до тонкостей, не было (на момент написания бота) видео от харизматичных индусов и приходилось кропотливо самому вникать во все тонкости, читая документацию. Но в итоге я справился.
    • Знаю, что найти туториал по телеграм ботам на Yandex Cloud Functions непросто, так что прикладываю ссылку на годное видео.
Из интересного про всякие облака. Пока пользовался ботом, пробил бесплатный пробный период и пришлось внести депозит, чтобы он не отключился. Ну я и внёс 50 рублей. До сих пор не списали ни рубля, зато бот работает стабильно. Видимо, особо ничего и не потребляет.

Telegram Бот​

Ссылка на сам бот
В общем, делюсь сим чудом с общественностью: мб кому-то будет полезен.
745bbb1a369881899b18771fc5e8ebb0.jpeg
730840aa4f997d7e8dc35d1e484aeb9f.jpeg

Сценарии​

Вернёмся к подпискам. Решил остановиться на 3 основных сценариях:
  1. Окончание пробного периода.
  2. Ежемесячная подписка
  3. Ежегодная подписка
Из дополнительного функционала
  • ставлю зелёную галочку рядом с оплаченными подписками,
  • ставлю молнию у подписок, которые ещё предстоит оплатить,
  • считаю общую сумму подписок и пишу, сколько из них уже оплачено.
Это помогает трезво оценивать траты на Digital Entertainment и не выходить за рамки бюджета. Ну и просто интерактивчик. Добавленная подписка вбивается с помощью кнопок и клавиатуры за 5-10 секунд и в итоге список выглядит так:
5fbaadd070171bc9caa8b70d131fdac7.jpeg

Сценарии​

Сами напоминания приходят за 1 день до даты списания, и потом ещё в день списания. Сначала хотел сделать уведомление за 3 дня, но подумал, что посмотрю на уведомление, подумаю, что ещё куча времени и забуду отключить подписку. В целом, это можно легко поменять, если захочется.
Напоминания о предстоящих списаниях выглядят так.
8504563d36f08419fbd0f15d5204096a.jpeg

Вывод​

В итоге я забил все свои подписки в бот и стало понятно, сколько в месяц я трачу на все свои хотелки, готов ли я столько тратить дальше и что стоит отключить. Ну и годовые предстоящие годовые списания перестанут быть неожиданностью, так что я смогу вовремя спланировать бюджет.
Ну и несколько наблюдений по подпискам, которые я выявил в рамках тестирования:
  1. В конце 2021 года я перешёл на годовые подписки в нескольких сервисах ради экономии. Так вот за год стоимость годовой подписки у некоторых сервисов выросла в 2-3 раза. Ну например, в 2021 я купил годовую подписку на сервис N за 1290 рублей, а в декабре у меня с карты списалось 3190. В итоге пришлось писать в поддержку и ругаться.
  2. В онлайн-кинотеатрах есть кросс-показы. Это когда кинотеатры делятся друг с другом собственным контентом и таким образом увеличивают собственную базу фильмов и охват аудитории. Например, Трудных подростков от More TV можно было посмотреть на Кинопоиске без всяких доп подписок. Ну это если вы любите отечественные сериалы. Мне некоторые заходят. Имхо наш кинопродакшн потихонечку развивается и в будущем жду больше годных картин.


 
Сверху