Нагадування про запис — головний біль будь-якого сервісного бізнесу. Слот простоює, адміністратор витрачає години на обдзвін, клієнт забуває прийти. Ми розробили голосових ботів для 50+ клінік, салонів краси та автосервісів — і щоразу знижували no-show rate з 20–35% до 5–10%. Результат — прямі гроші: якщо у вас 1000 записів на місяць і середній чек 3000 грн, повернення заповнених слотів дає приріст виручки до 600 000 грн щомісяця.
Чому AI-обдзвін ефективніший за ручне нагадування?
Ручний обдзвін — навантаження на адміністраторів, пропущені дзвінки та людські помилки. AI-бот працює без перерв, обробляє до 1000 викликів паралельно і з однаковою якістю. Порівняйте: середній адміністратор витрачає 30 секунд на один дзвінок, бот — 10 секунд, тобто AI автообдзвон у 3 рази швидший за ручний. Для потоку 100 записів на день економія 12 людино-годин. Плюс бот не забуває подзвонити і не втомлюється надвечір.
Як AI-бот справляється з нестандартними відповідями?
Після того як бот додзвонився і вимовив сценарій нагадування, він аналізує відповідь клієнта за допомогою NLP-моделі (на базі трансформера). Якщо клієнт явно підтверджує — запис фіксується як підтверджений. Якщо просить перенести або скасувати — запускається відповідний підпроцес. У разі неоднозначної фрази бот перепитує. Такий підхід дає точність визначення інтенту 96%+ на реальних діалогах. Технічно це реалізовано через класифікатор на основі Sentence-BERT — ембеддінги фрази порівнюються з еталонними сценаріями косинусною близькістю.
Логіка нагадувань
REMINDER_SCHEDULE = {
"medical_appointment": [
{"offset": timedelta(days=2), "message": "long_reminder"},
{"offset": timedelta(hours=4), "message": "day_reminder"},
{"offset": timedelta(hours=2), "message": "final_reminder"},
],
"beauty_salon": [
{"offset": timedelta(days=1), "message": "long_reminder"},
{"offset": timedelta(hours=3), "message": "final_reminder"},
],
"service_center": [
{"offset": timedelta(hours=24), "message": "long_reminder"},
{"offset": timedelta(hours=2), "message": "final_reminder"},
]
}
async def schedule_reminders(appointment: dict):
schedule = REMINDER_SCHEDULE.get(
appointment["type"], REMINDER_SCHEDULE["beauty_salon"]
)
appointment_dt = datetime.fromisoformat(appointment["datetime"])
for reminder in schedule:
reminder_time = appointment_dt - reminder["offset"]
if reminder_time > datetime.utcnow():
await task_queue.schedule(
task="send_appointment_reminder",
args={
"appointment_id": appointment["id"],
"message_type": reminder["message"]
},
eta=reminder_time
)
Сценарій нагадування
REMINDER_SCRIPTS = {
"long_reminder": """
Добрий день, {customer_name}!
Нагадуємо, що ви записані до {specialist_name}
післязавтра, {appointment_date} о {appointment_time}.
Адреса: {address}.
Ви плануєте відвідати нас? Натисніть 1 для підтвердження, 2 — якщо хочете перенести.
""",
"final_reminder": """
Вітаємо, {customer_name}!
Нагадуємо про ваш візит сьогодні о {appointment_time} до {specialist_name}.
Чекаємо вас за адресою {address}. Якщо не зможете прийти — будь ласка, повідомте заздалегідь.
"""
}
Обробка відповіді на нагадування
async def handle_reminder_response(
appointment_id: str,
user_response: str
) -> str:
intent = await classify_intent(user_response)
if intent == "confirm":
await calendar.confirm(appointment_id)
return "Чудово! Чекаємо на вас. До побачення!"
elif intent == "reschedule":
slots = await calendar.get_available_slots(
specialist_id=appointment["specialist_id"],
days_ahead=7
)
return f"Найближчі доступні часи: {format_slots(slots[:3])}. Який зручний?"
elif intent == "cancel":
await calendar.cancel(appointment_id)
await notify_specialist(appointment_id)
return "Запис скасовано. Будемо раді бачити вас іншого разу!"
return "Вибачте, не зрозуміла. Скажіть 'підтверджую' або 'хочу перенести'."
Наш досвід і результати
Компанія працює на ринку з 2019 року (понад 5 років досвіду) та реалізувала 50+ проектів. Ми впроваджуємо голосових ботів з 2019 року. За цей час розробили рішення для 50+ клінік, салонів краси та автосервісів. Середнє зниження no-show — з 25% до 8%. Один із проєктів — мережа стоматологій з філіями у 4 містах — отримала економію понад 1,5 млн грн на місяць за рахунок заповнених слотів. Гарантуємо аналогічний результат за умови коректного налаштування сценаріїв.
"Після впровадження AI-обдзвону кількість неявок впала на 70% за перший місяць. Бот взяв на себе всю рутину — адміністратори лише підтверджують перенесення в CRM." — *Головний лікар мережі стоматологій, клієнт нашої розробки.*
Порівняння: ручне нагадування vs AI-бот
| Критерій | Ручний обдзвін | AI-автообдзвін |
|---|---|---|
| Час на дзвінок | 30-60 сек | 8-12 сек |
| Паралельність | 1 дзвінок | До 1000 паралельно |
| Помилки при перенесенні | Регулярно | Автоматична синхронізація |
| Повнота обдзвону | 60-70% | 99%+ (3 спроби) |
| Вартість на 1000 записів/міс | ~50 000 грн (зарплата) | Відсутня (амортизація незначна) |
Технічні деталі інтеграції
Система побудована на мікросервісній архітектурі: сервіс телефонії (REST/WebRTC), NLP-класифікатор (PyTorch + ONNX Runtime), черга завдань (Redis + Celery), календар (PostgreSQL + Redis). Інтеграція з CRM через REST API або webhook'и. ASR: Silero (українська/російська) або Google Cloud Speech-to-Text. TTS: Silero або Yandex SpeechKit.
Як працює система: покрокова інструкція
- Клієнт записується через сайт, додаток або адміністратора — запис потрапляє в CRM.
- Система автоматично створює нагадування згідно з розкладом (за 2 дні, 4 години, 2 години до візиту).
- У призначений час бот дзвонить клієнту, використовуючи заданий сценарій нагадування.
- Бот аналізує відповідь клієнта: підтвердження, перенесення, скасування або невизначена відповідь.
- У разі перенесення бот пропонує вільні слоти, оновлює запис і повідомляє адміністратора.
- Якщо клієнт не відповів — бот повторює дзвінок до 3 разів з інтервалом 15 хвилин.
- Всі дії фіксуються в CRM для звітності.
Що входить у розробку під ключ
| Етап | Що робимо | Результат |
|---|---|---|
| Аналітика | Вивчаємо специфіку запису, типи послуг, пікові години | Технічне завдання з логікою нагадувань |
| Проєктування | Проектуємо діалогові сценарії та інтеграцію з CRM | Схема сценаріїв, API-специфікація |
| Розробка | Пишемо код на Python з використанням FastAPI, PostgreSQL, ASR/TTS | Готовий мікросервіс |
| Тестування | Проганяємо 200+ діалогів, перевіряємо edge cases (помилки DTMF, шуми) | Звіт про тестування |
| Деплой | Розгортаємо на ваших серверах або в хмарі (AWS/GCP/Azure + Kubernetes) | Система в продакшені |
| Документація | Передаємо опис API, інструкцію адміністратора, код з коментарями | Повний пакет документації |
Також навчаємо ваших співробітників роботі з системою та надаємо 30 днів безкоштовної технічної підтримки після запуску.
Терміни та як почати
Базова система для одного типу запису — від 2 тижнів (вартість від 80 000 грн). Якщо потрібно кілька індустрій, різні сценарії нагадувань і глибока інтеграція з CRM — від 4 до 6 тижнів (вартість від 150 000 грн). Вартість розраховується індивідуально після аналізу ваших процесів.
Замовте консультацію по вашому проєкту — розрахуємо оптимальний сценарій і терміни. Отримайте демо-доступ до робочого прототипу та переконайтеся в ефективності системи до покупки. Оцінимо ваш проєкт і запропонуємо рішення під ключ — зв'яжіться з нами для консультації.







