Мы с важной новостью: с 28 февраля 2025 года сервис Хабр Фриланс прекратит свою работу.

Купить услуги можно до 28 февраля 2025, но пополнить баланс уже нельзя. Если на вашем счете остались средства, вы можете потратить их на небольшие услуги — служба поддержки готова поделиться бонусами, на случай, если средств немного не хватает.
R50 46f7bd55ddc04b5f7089f79e2869bb1a
Python-разработчик

Телеграм-бот знакомств — Катюша • Katyusha bot

Добавлено 14 апр 2023 в 00:31
Меня всегда привлекала тематика создания Telegram ботов. Хотелось сделать сложный, многофункциональный бот, который понравится людям и я стал рассматривать варианты из уже имеющихся. Выбор пал на чат-ботов знакомств. В России их немного, а адекватных, с бесплатным функционалом и хорошей функциональностью всего один, который я и попытался превзойти.

Телеграм-бот знакомств - Катюша • Katyusha bot позволяет людям в любой точке пока что только России, а в перспективе и мира найти себе пару, партнёра, человека по интересам. В принципе можно зарегистрироваться в любой точке земного шара, но на данный момент бот адаптирован только под Российские регионы.

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

Катюша имеет красивый интерфейс, обладает сложной системой поиска анкет, в которой учитываются: возраст, интересы и самое главное - локация.

Поиск осуществляется в три этапа:
  • Сначала алгоритм выдает анкеты из указанного в Вашей анкете города, если они в нём имеются.
  • Если их нет или в Вашем городе анкеты закончились, начинает выдавать анкеты из области, в которой расположен Ваш город.
  • Аналогично с предыдущим пунктом. Но теперь в обоих случаях алгоритм выдаёт все анкеты подряд со всего мира.
Самое главное, я учёл то, чего не учли создатели других подобных телеграм-ботов — города с одинаковыми названиями.

Мелкие посёлки до 10 тысяч населения я конечно же не обрабатывал (пока это не требуется), но прошёлся по всем крупнейшим и не очень городам и если например ввести город "Троицк", то бот понимает что такой город есть как в Московской, так и в Челябинской областях и предложит пользователю соответствующий выбор. Аналоги таких чат-ботов этого не учли и поэтому просто потеряли пользователей из многих крупных городов, таких как Троицк, Донецк, Радужный, Благовещенск, Ростов и т.д.

Также есть возможность ввести город для своей анкеты предоставив боту свою геолокацию (Использовал кстати геокодер от Яндекса) и если другой пользователь таким же образом ввёл в анкету свой город, то при пролистывании в его анкете будет отображаться расстояние до этого пользователя в метрах или километрах в зависимости от дальности расстояния. Вся информация полученная с помощью геокодера API Яндекс.Карт кэшируется по закону не более тридцати суток, затем удаляется. Либо удаляется автоматически после того как сам пользователь изменил город, ручками написав название.

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

В анкету можно добавлять как фото, так и видео, а еще специально для девочек фотоколлаж до трёх фотографий и даже видеокружок вместо аватарки.

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

Пока что бот доступен в Telegram по ссылке https://t.me/katemewbot или нику @katemewbot. В дальнейшем буду выкладывать его в Вконтакте и переведу на несколько языков в Telegram для адаптации в других странах.

Простейшая регистрация, удобное, понятное меню, никаких рассылок и платных функций в самом боте, всё как мы любим.

Для разработки использовал: Асинхронный фреймворк aiogram, клиент GeoPy для геокодирования c помощью библиотеки geodesic, FSMContext для работы с машиной состояний, много времени и тщательную проработку поисковой системы для эффективного и оптимального поиска анкет.

Проект запущен на сервере и работает круглосуточно. Благодарю за то, что дочитали до конца.

Ссылки:

A0bba4fdbb 2783971f59 F01fd23234 612f02662d 8faff54dd2 Dafefaaf6c 5f1aeff57a 980ae68c84 61a5b79e89 1788655be3 508070399b 364e468108