Сеть клиник заменила телефонную регистратуру онлайн-записью. Нагрузка на колл-центр упала втрое.
В сети из шести клиник вся запись шла через телефон. В пиковые часы дозвониться было невозможно, а администраторы вели расписание в общей таблице.
Мы сделали запись онлайн с реальным расписанием врачей, напоминаниями в Telegram и отменой в один клик.
Самым сложным оказался не сайт, а перенос расписаний: пришлось разобрать пять лет записей в таблицах и привести их к единому виду.
Через три месяца после запуска через сайт шло 62% всех записей.
Как это устроено
Фрагмент из настоящего кода проекта — чтобы было видно, что внутри.
TypeScript
type Bucket = { count: number; resetAt: number };const buckets = new Map<string, Bucket>();/** * Ограничение частоты запросов. * Защищает формы от перебора и спама. */export function rateLimit( key: string, limit = 8, windowMs = 60_000,): RateLimitResult { const now = Date.now(); const bucket = buckets.get(key); // Окно истекло или его не было — начинаем заново. if (!bucket || bucket.resetAt < now) { buckets.set(key, { count: 1, resetAt: now + windowMs }); return { ok: true, remaining: limit - 1, retryAfter: 0 }; } if (bucket.count >= limit) { return { ok: false, remaining: 0, retryAfter: Math.ceil((bucket.resetAt - now) / 1000), }; } bucket.count += 1; return { ok: true, remaining: limit - bucket.count, retryAfter: 0 };}Связаться
Заявка на проект
Заполните форму — обсудим детали и сроки.
Следующий проект
Nur — приложение доставки