Когда запись идёт сразу из трёх мест — с сайта, от голосового робота и от администратора на стойке, — расписание легко превращается в источник конфликтов: два пациента на один слот, «места нет», хотя оно только что освободилось, злой пациент у закрытой двери. Всё это следствие рассинхрона. Разбираем, как робот держит слоты едиными во всех каналах, где возникают задержки и что проверить перед запуском, чтобы двойных записей не было в принципе.
Голосовой робот пишет запись не в свою отдельную таблицу, а прямо в то же расписание, которым пользуется регистратура и сайт. Источник данных о свободных слотах один, поэтому робот всегда видит актуальную картину и бронирует только реально свободное время. Рассинхрон возникает там, где каналы ведут разные копии расписания.
Идея единого расписания простая: сколько бы каналов записи ни было, база слотов должна быть одна. Тогда любое изменение — новая запись, перенос, отмена — сразу видно всем. Ниже разберём, как это устроено технически и почему это снимает саму причину двойных записей.
Начнём с того, откуда вообще берётся рассинхрон и во что он обходится клинике.
Двойная запись появляется, когда два канала работают с разными копиями расписания. Пациент бронирует слот на сайте, а робот в ту же секунду предлагает его другому — потому что обновление ещё не дошло. По данным клиник, до 10-15% конфликтов записи в мультиканальной регистратуре — это именно рассинхрон, а не ошибка человека.
Классический сценарий: администратор ведёт запись в одной системе, сайт — в другой, а напоминания шлёт третий сервис. Между ними обмен идёт выгрузками раз в час или руками. В окне между обновлениями и рождаются накладки.
Цена ошибки высокая: пациент приходит к закрытой двери, теряет доверие и уходит. Один такой случай стоит дороже, чем весь сэкономленный на ручной сверке час.
Единое расписание — это когда сайт, голосовой робот, мессенджеры и регистратура читают и пишут в одну базу слотов, а не в свои копии. Каждый занятый интервал моментально становится недоступен во всех каналах сразу. Именно так устроена запись в YClients или медицинской CRM, к которой подключается робот.
В такой модели у канала нет «своего» расписания — есть общий календарь клиники, а каналы лишь окна в него. Робот не хранит слоты у себя: он спрашивает систему записи в момент разговора и бронирует там же.
Это ключевое отличие от старых схем с обменом файлами: нет промежуточных копий — нет и расхождений между ними.
Во время разговора робот делает запрос к системе записи и получает актуальный список свободных интервалов у нужного врача. Пациенту он называет только те слоты, что свободны прямо сейчас. Проверка занимает доли секунды, поэтому диалог идёт в живом темпе без пауз на «уточню расписание».
Если за время короткой паузы слот успел занять другой канал, робот увидит это при бронировании и предложит следующий свободный. Пациент не замечает подмены — для него это просто «а давайте тогда на 15:30».
Так работает двусторонняя связь: робот и читает расписание, и пишет в него, оставаясь в тех же данных, что и весь остальной персонал.
Двойную запись предотвращает блокировка слота в момент подтверждения: как только робот пишет бронь, интервал закрывается для всех каналов атомарно. Между «пациент согласился» и «слот занят» проходят миллисекунды, поэтому окно для гонки практически исчезает. Это снимает 10-15% типовых конфликтов расписания.
Если два запроса на один слот приходят почти одновременно, систему записи выигрывает тот, кто подтвердил первым; второму робот сразу предлагает альтернативу. Слот не может достаться двоим — этого не позволяет сама база.
Результат: администратор перестаёт разбирать накладки задним числом, а пациент не сталкивается с «извините, это время уже занято» на приёме.
Когда пациент переносит или отменяет визит через робота, изменение уходит в общее расписание сразу, и освободившийся слот тут же виден остальным каналам. Никакой ручной правки не нужно — робот сам снимает старую бронь и ставит новую. Освободившееся время можно тут же предложить листу ожидания.
Это важно, потому что отмены — самый частый источник «мёртвых» слотов: администратор не всегда успевает вычистить их из всех систем. Робот делает это мгновенно и автоматически.
Как робот подтверждает и переносит визиты в исходящем режиме, разобрано в материале про подтверждение и перенос записи автообзвоном.
В нормальном режиме изменение расходится по каналам за доли секунды — это прямой запрос к общей базе, а не периодическая выгрузка. Заметная задержка возникает только при разрыве связи с системой записи или при обмене со сторонним сервисом по расписанию, а не в реальном времени.
Именно поэтому важно, чтобы связка робот-CRM работала по API в реальном времени, а не через ночную выгрузку. Тогда «окно рассинхрона» измеряется миллисекундами, а не часами.
Если какой-то из каналов всё же обновляется реже, его слоты стоит считать менее приоритетными и синхронизировать в первую очередь.
Двусторонняя синхронизация значит, что запись, сделанная роботом, появляется в CRM, а запись, сделанная в CRM, видна роботу. Настраивается это подключением робота к API системы записи с правами на чтение и запись слотов. После связки оба направления работают автоматически, без ручной сверки.
На практике подключение занимает минуты: клиника выдаёт роботу доступ к своему расписанию, а дальше он ведёт запись наравне с администратором. Никакой отдельной базы у робота не заводится.
Пошагово механика двусторонней связки описана в статье как настроить двустороннюю синхронизацию записей.
В сети клиник единое расписание работает по филиалам: у каждого свои врачи и кабинеты, но робот видит их все и записывает в нужную точку. Пациенту он предлагает слоты того филиала, который тот выбрал голосом, и не путает расписания. Так одна связка обслуживает хоть десять адресов.
Это снимает частую боль сетей — когда пациента записали не в тот филиал, потому что каналы вели раздельные расписания. При общей базе такой ошибки не возникает.
Как подключить второй и последующие филиалы к роботу, описано в гайде как добавить второй филиал.
Запись от робота выглядит в расписании так же, как ручная, но с пометкой источника — администратор сразу видит, что слот занял бот. Карточка пациента, услуга, врач и время проставлены полностью. Ничего дозаполнять руками не нужно, и это экономит по несколько минут на каждой записи.
Пометка источника важна для аналитики: она показывает, какую долю записей робот берёт на себя, и помогает считать его вклад в загрузку.
Администратор в любой момент может поправить запись робота вручную — она не «заблокирована», это обычная строка расписания.
Робот бронирует слот с учётом реальной длительности услуги: короткая консультация занимает один интервал, а процедура на час — соответственно больше. Если клиника закладывает буфер на уборку или подготовку кабинета, робот оставляет его автоматически. Так расписание не «слипается» и врач не выбивается из графика.
Длительность и буфер настраиваются один раз на уровне услуги, а дальше робот применяет их к каждой записи. Пациенту он называет время начала, а внутренний резерв клиника видит у себя.
Это убирает типичную ошибку плотной записи, когда два визита наложились из-за того, что канал не знал реальной длительности.
Если связь с системой записи временно пропала, робот не бронирует вслепую: он фиксирует контакт и заявку пациента, а как только связь вернётся — ставит запись и подтверждает её. Так исключён самый опасный сценарий — обещание слота, которого может не оказаться.
Пациенту в этот момент робот честно говорит, что администратор перезвонит для подтверждения времени, и берёт удобные интервалы. Никто не остаётся без ответа.
Такой «безопасный режим» важнее скорости: лучше подтвердить запись на минуту позже, чем создать двойную бронь.
Перед боевым запуском стоит прогнать три теста: записать пациента роботом и убедиться, что слот закрылся на сайте; отменить запись в CRM и проверить, что робот снова видит слот свободным; занять одно время из двух каналов одновременно. Если во всех трёх случаях расписание осталось единым — синхронизация настроена верно.
Эти проверки занимают полчаса, но избавляют от главного риска первых дней — двойных записей на глазах у пациентов. Их лучше сделать на тестовом расписании, а не на боевом.
Отдельно проверьте перенос и лист ожидания: именно они чаще всего вскрывают скрытый рассинхрон.
Единое расписание убирает две статьи потерь: время администратора на ручную сверку каналов и упущенных пациентов из-за накладок. Клиника перестаёт терять по несколько слотов в неделю на «мёртвых» бронях и конфликтах, а это прямая выручка врачебного часа.
Плюс снижается репутационный риск: пациент, столкнувшийся с двойной записью, редко возвращается и часто оставляет отзыв. Единая база слотов закрывает этот сценарий.
Как считать отдачу от автоматизации записи в целом, разобрано в материале про ROI голосового бота.
Начните с инвентаризации каналов записи: где сейчас ведётся расписание, сколько копий существует и как они обмениваются данными. Чаще всего оказывается, что копий две-три и сверяются они вручную. Свести их к одной базе и подключить робота к ней — и есть переход на единое расписание.
Дальше робот встаёт как ещё один канал записи в общую систему и начинает вести слоты наравне с администратором, без отдельной таблицы. Двойные записи уходят как класс уже в первую неделю.
Протестировать связку можно бесплатно 7 дней без карты и сравнить, как ведёт себя расписание до и после единой базы.
7 дней бесплатно, без карты. Подключение к вашему номеру за 15 минут.