Кейс системы записи

CRM для записи клиентов с Telegram-ботом

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

Архитектура

Как устроено решение

Из каких частей состоит проект и как они работают вместе.

01

Telegram-бот

Клиент выбирает время и записывается сам, а специалист управляет расписанием в закрытом меню бота.

02

FastAPI

Принимает события Telegram и передаёт действия сервисам записи, расписания и уведомлений.

03

PostgreSQL

Хранит клиентов, записи, услуги, расписание и настройки в одной базе данных.

04

Redis и worker

Помогают удерживать выбранное время на время оформления и доставлять напоминания без дублей.

05

Доменный слой

Отдельные модули рассчитывают свободное время, создают записи, ведут услуги и отправляют уведомления.

06

Запуск и проверка

Docker-конфигурация помогает запустить систему, а тесты проверяют запись, расписание, кабинет и уведомления.

Технологии проекта

  • Python 3.12
  • aiogram 3
  • FastAPI
  • PostgreSQL
  • Redis
  • SQLAlchemy
  • Alembic
  • Docker
Функции

Что умеет система

Возможности, реализованные в этом проекте.

Запись клиента

Клиент выбирает услугу и свободное время в Telegram, оставляет телефон и подтверждает запись без переписки со специалистом.

Управление записью

В боте доступны история, отмена, перенос, повторная запись, экспорт события в ICS и связь со специалистом.

Кабинет специалиста

Специалист видит предстоящие записи и меняет их статусы прямо в Telegram.

Услуги и расписание

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

Защита от конфликтов

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

Ручная запись

Специалист может добавить запись по телефону, а после подтверждения номера связать её с Telegram-профилем клиента.

Аналитика

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

Напоминания

Фоновая доставка отправляет уведомления и напоминания, повторяет неудачные попытки и предотвращает дубли.

Экспорт

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

Подтверждение

Демонстрация и исходный код

В открытом репозитории опубликованы модели и миграции базы данных, движок расчёта слотов, обработчики бота, сервисы кабинета специалиста, уведомления, тесты и Docker-конфигурация.

Отдельные скриншоты интерфейса пока не опубликованы.
Посмотреть репозиторий на GitHub
Результат

Что получилось

Что можно проверить в проекте и какой сценарий он решает.

Клиент записывается сам

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

Специалист управляет расписанием

Записи, клиенты, услуги и статусы собраны в одной базе; рабочий кабинет доступен через Telegram.

Что подтверждено

В открытом репозитории есть сценарии записи, модель данных и тесты. Публичной статистики использования или экономии времени нет.

Связаться

Создать заказ

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

Хотите принимать записи через Telegram?

Расскажите, какие услуги вы оказываете, как устроено расписание и кто должен управлять записями. Обсудим подходящий сценарий бота и CRM.

Услуги

Что может понадобиться вместе с этой задачей

Дополнительные направления, которые часто используются вместе с этой услугой.