Разработка AI-системы автообзвона клиентов для напоминания о записи

Проектируем и внедряем системы искусственного интеллекта: от прототипа до production-ready решения. Наша команда объединяет экспертизу в машинном обучении, дата-инжиниринге и MLOps, чтобы AI работал не в лаборатории, а в реальном бизнесе.
Показано 1 из 1 услугВсе 1566 услуг
Разработка AI-системы автообзвона клиентов для напоминания о записи
Средняя
~1-2 недели
Часто задаваемые вопросы
Направления AI-разработки
Этапы разработки AI-решения
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1218
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1161
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    853
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1047
  • image_logo-advance_0.png
    Разработка логотипа компании B2B Advance
    561
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    825

Разработка AI-системы автообзвона клиентов для напоминания о записи

Напоминания о записи снижают no-show rate с 20–35% до 5–10%. Для клиник, салонов, автосервисов это прямая экономия: незаполненный слот = потерянная выручка. AI-бот делает это автоматически без нагрузки на администраторов.

Логика напоминаний

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 "Извините, не поняла. Скажите 'подтверждаю' или 'хочу перенести'."

Экономия для клиники

  • 100 записей/день × 25% no-show = 25 незаполненных слотов
  • 1 слот = 2000 руб. выручки
  • Снижение no-show до 8% = +17 слотов × 2000 = 34 000 руб./день

Сроки: система напоминаний с одним типом записи — 2 недели. Мультиспециализированная — 4–6 недель.