Студия выросла и сняла второй зал. Тренер Иван теперь ведёт и на Пушкинской, и на Соколова — в расписании это два разных календаря, а человек один. Администратор Аня знает про это, но помнит не всегда: во вторник она поставила Ивану персональную тренировку на Соколова, не заметив, что на то же самое время он уже стоит на Пушкинской.
Дальше по сценарию: звонок клиенту, извинения, перенос. И так каждый раз, когда два зала живут в двух табличках, а сверяет их память администратора.
Модуль «Площадки и календари людей» закрывает обе половины этой задачи — справочник мест, где вы работаете, и общее время у разных календарей, после которого пересечение перестаёт быть вопросом внимательности.
Что меняется
| Две таблички и память | CraftYourCRM | |
|---|---|---|
| Где вы работаете | знают сотрудники | справочник «Площадки», видно всей команде |
| Клиент выбирает место | звонком или наугад | шаг «где?» на странице записи, с адресом каждого зала |
| Клиент помнит, куда ехать | «сейчас найду переписку» | адрес зала на экране «вы записаны» |
| Мастер в двух залах | два календаря, сверяет человек | общее время на оба |
| Один кабинет на двоих | договариваются устно | общее время: занят у одного — занят у всех |
| Пересечение часа | ловят глазами, иногда после звонка клиента | отказ в момент записи |
| Мастер не с этой площадки | узнают на месте | в списке не появится |
| Клиенты разных залов | одна ссылка на всех, лишний экран каждому | своя ссылка на каждый зал |
| Площадка на ремонте | предупреждают устно | галочка «Принимает записи» снята |
Площадка — это место, где идёт работа
Модуль ставит в кабинет раздел «Площадки»: название, адрес, комментарий и галочка «Принимает записи». Одна запись, «Основная площадка», заводится сразу — чтобы было с чего начать, а не с пустого экрана.
Дальше площадка проставляется календарю: у раздела «Ресурсы» появляется поле «Площадка» — где работает именно этот календарь. Оно приезжает готовым к работе: и в карточке календаря, и колонкой в списке — настраивать после установки нечего. Оставили пустым — календарь не привязан к месту и предлагается везде. Это важная мелочь: установка модуля ничего не выключает и никого не прячет, пока вы сами не разметили, кто где.
Галочка «Принимает записи» — способ временно убрать зал со страницы записи, не удаляя его: ремонт, затянувшаяся аренда, сезон. Записи и история места остаются на месте.
Общее время: один час нельзя занять дважды
Вторая половина модуля — поле «Делит время с». Оно отвечает на один вопрос: чьё время на самом деле занимает запись в этом календаре. Заполняется у второго календаря и указывает на первый.
Иван — один человек, два календаря
┌─────────────────────────────┐ ┌─────────────────────────────┐
│ «Иван · Пушкинская» │ │ «Иван · Соколова» │
│ Площадка: Зал на Пушкинской │ │ Площадка: Зал на Соколова │
│ Делит время с: — │◀──│ Делит время с: Иван · Пушк. │
└─────────────────────────────┘ └─────────────────────────────┘
▼ ▼
общее время — «Иван · Пушкинская»
вт 12, 19:00–20:00 занято ← бронь пришла на Пушкинскую
вт 12, 19:00–20:00 отказ ← тот же час пытаются занять на Соколова
И вот здесь разница между «мы проверяем» и «этого не может быть». Пересечение отклоняет не код кабинета, а сама база данных: у занятого времени стоит ограничение, которое физически не даёт записать две пересекающиеся брони с общим временем. Ошибиться мимо этой проверки нельзя — ни через страницу записи, ни через перенос в кабинете, ни через групповое занятие, ни двумя одновременными клиентами, нажавшими «Записаться» в одну секунду.
Сетка свободного времени читает занятость так же, поэтому час, который база потом отвергнет, клиенту просто не показывается. Отказ — это страховка, а не обычный сценарий.
Календарь без заполненного поля ведёт себя ровно как раньше: он занят только своими записями. Никакой миграции расписания, никакого «перед включением всё перепроверьте».
Про поле можно не знать: похожие календари система находит сама
Знать про поле «Делит время с» заранее — плохая защита: тот, кто о нём не слышал, узнаёт о нём в день, когда клиент приехал не туда. Поэтому ищет система. В «Настройках» → «Онлайн-запись» появляется блок «Похожие календари»: два активных календаря с одним и тем же именем, между которыми общего времени нет, — и один вопрос к вам.
Похожие календари
┌──────────────────────────────────────────────┐
│ Иван · Зал на Пушкинской │
│ Иван · Зал на Соколова │
│ │
│ [ Связать ] [ Это разные ] │
└──────────────────────────────────────────────┘
«Связать» проставляет общее время само — открывать карточки и вспоминать, у какой из них заполнять поле, не нужно. «Это разные» гасит вопрос: полные тёзки бывают, и второй раз про эту пару вас не спросят. Решение всегда ваше — система не склеивает календари по догадке: у двух разных Иванов общее время сделало бы половину часов непродаваемой.
Связать — значит сперва показать правду. Общее время действует на будущие записи, но те, что уже созданы, оно не отменяет: если Ивана успели записать в двух местах на один и тот же час, эта запись никуда не денется. Поэтому перед связыванием система показывает такие пересечения списком — с датой, часом и именами обоих клиентов, — и говорит прямо: связка их не отменит, перенесите или отмените каждую сами.
Честные границы: сравниваются имена целиком (пометка места в скобках или после тире отбрасывается), так что «Кабинет 1» и «Кабинет 2» парой не считаются; вопрос задаётся только про календари, которые принимают записи; а само поле общего времени приносит этот модуль — без него блок покажет пару и позовёт включить модуль, но связать будет нечем.
Тем же полем — общий кабинет, кресло или зал
Второй случай встречается не реже первого: календарей несколько, а место или оборудование одно. Два врача принимают в одном кабинете. Два мастера работают на одном кресле. Двое преподавателей ведут в одном зале. Одна печь, один подъёмник, один станок — а услуг на нём несколько.
Это тот же вопрос «чьё время занимает запись» и то же поле. Заводите карточку самого места — обычный календарь, у которого снята галочка «Принимает записи», — и указываете её в поле «Делит время с» у всех, кто это место делит:
┌─────────────────────────────┐
│ «Кабинет №2» │ ← «Принимает записи»: снято
│ записей не принимает никогда│ (это не мастер, а место)
└─────────────────────────────┘
▲ ▲
┌───────────────────────────┐ ┌───────────────────────────┐
│ «Врач Иванов» │ │ «Врач Петрова» │
│ Делит время с: Кабинет №2 │ │ Делит время с: Кабинет №2 │
└───────────────────────────┘ └───────────────────────────┘
пн 09, 10:00–10:30 занято у Иванова → у Петровой этого часа в сетке нет
Клиенту такая карточка не показывается и выбрать её нельзя — она служебная. Зато занятость у обоих врачей теперь общая, и «два приёма в одном кабинете в один час» становится состоянием, которого база данных не допускает.
И то, и другое сразу. Занятие держит время КАЖДОГО, кто в нём задействован, — и календаря, на который записан клиент, и карточки, с которой этот календарь делит время. Поэтому две половины модуля не спорят друг с другом, а складываются: у студии с двумя залами преподаватель Валера может вести в барабанной (календарь делит время с залом) и выезжать к ученику домой (второй календарь делит время с первым) —
«Барабанная» ◀── «Валера · барабанная» ◀── «Валера · выезд»
▲
«Аня · барабанная»
пн, 10:00 урок Валеры в барабанной → занят и зал, и сам Валера
у Ани этого часа нет (зал), у выезда Валеры — тоже (человек)
пн, 11:00 урок Ани в барабанной → занят зал и Аня
выезд Валеры в 11:00 при этом СВОБОДЕН: общего времени с Аней у него нет
— и ни один из четырёх часов не продаётся дважды, а свободные остаются свободными. Раньше выбирать приходилось: либо защищён зал, либо человек.
Клиент выбирает, куда ему удобно
Когда площадок больше одной, на публичной странице записи появляется первый шаг «где?» — раньше услуги и раньше мастера. Клиент выбирает зал, а дальше подбор идёт уже внутри него: свободное время считается по календарям этой площадки, автоподбор не предложит того, кто здесь не работает, и в списке мастеров такой человек тоже не появится. Раньше он там был, и клиент узнавал о нём только отказом в момент брони.
Под названием зала стоит его адрес — тот самый, что вы заполнили в карточке площадки. Выбирают ведь не название, а место, куда ехать: «Зал на Пушкинской» и «Зал на Соколова» без улиц отличаются друг от друга только словом. Адрес не заполнен — клиент увидит одно название, пустой строки не будет. Тот же адрес повторяется на экране «вы записаны», строкой «Где»: шаг «где?» человек проходит за минуту до и закрывает вкладку, а подтверждение открывает в день визита — и до недавнего времени уносил с собой всё, кроме единственного, чего не знал заранее.
Список услуг сужается тем же выбором. У услуги есть своё поле «Площадка»: «Урок барабанов» бывает только в барабанной, «Аппаратная чистка» — только там, где стоит аппарат. Ученик вокалистки такие услуги в списке не увидит вовсе, а ссылка с противоречивой парой «этот зал + эта услуга» получит честный отказ вместо чужого расписания. Услуга без площадки предлагается везде — размечать можно постепенно.
Лишнего экрана на пустом месте не возникает. Площадка одна — шага нет вовсе, она подставляется молча. Площадок нет — страница выглядит ровно так же, как до установки модуля. Клиент видит выбор только тогда, когда выбор действительно есть.
Своя ссылка на каждый зал
Страница записи у пространства одна, но раздавать её можно разными ссылками. Допишите к адресу название зала — и клиент, который по ней пришёл, шага «где?» не увидит вовсе: он уже там, где нужно.
всем сразу craftyourcrm.ru/b/ВАШ-КЛЮЧ
только Соколова …/b/ВАШ-КЛЮЧ?venue=Зал на Соколова
сразу на услугу …/b/ВАШ-КЛЮЧ?service=Вокал, 60 мин
Так у студии, где барабанщик и вокалистка ведут своих учеников, получаются две ссылки вместо одной: каждый ученик открывает своё направление и сразу выбирает время. Название пишется как есть — регистр и пробелы значения не имеют. Протухшая ссылка не ломает ничего: переименовали зал — старый адрес просто откроет обычный первый экран, а не ошибку.
Собирать такой адрес руками не нужно: «Настройки» → «Онлайн-запись» → блок «Ссылки для раздачи», и там своя кнопка «Скопировать» напротив каждого зала и каждой услуги. Строки появляются там, где клиенту есть из чего выбирать: зал один — шага «где?» на странице нет, и ссылка ничего не изменит.
Кому это нужно в первую очередь
Сетям студий, залов и секций — где один тренер ведёт в нескольких местах и его час продаётся из разных расписаний; студии платформа раздаёт все четыре модуля сразу, и площадки в этом порядке стоят вторыми, до групповых занятий — публичное расписание групп сужается по календарю тренера, поэтому размечать календари выгоднее раньше, чем наполнять расписание. Клиникам с несколькими кабинетами и филиалами — врач принимает то там, то тут. Мастерам, совмещающим свой кабинет и чужую площадку — самый частый источник двойной записи, потому что два расписания заводятся в разных местах и никогда не сверяются.
И вторая половина зала: всем, у кого место или оборудование одно, а принимающих несколько — салон, где два мастера работают на одном кресле; кабинет, который делят два специалиста; школа занятий, где в зале преподают по очереди; мастерская с одним подъёмником на несколько услуг.
Общее у всех одно: время едино, а календарей несколько — и цена рассинхрона всегда одна, звонок клиенту с извинением.
Сколько это стоит
Нисколько. Площадки — модуль бесплатного тарифа, как и остальные модули: платный тариф продаёт объём (места в команде, записи, файлы), а не доступ к возможностям. Отдельной платы «за филиал» или «за второй адрес», как принято у отраслевых платформ, у нас нет и не будет.
Честные ограничения
Ядро модуля — общее время и подбор по площадке — работает полностью. А вот вокруг него есть незакрытые края, и мы называем их поимённо.
- Услуге, которая бывает только в одном зале, зал уже назначается — но старому пространству поле надо дозавести. «Площадка» есть теперь и у услуги: заполнили — услуга предлагается только там, оставили пустым — везде. Поле приезжает вместе с «Онлайн-записью», поэтому у тех, кто поставил её раньше, оно не появится само: карточка модуля в «Конструкторе» → «Восстановить расчёт» заводит его одной кнопкой и без потери данных. Кнопки «обновить все модули разом» пока нет — каждый модуль чинится своей, и мы это признаём.
- Связка календарей действует вперёд, а не назад. Поставили «Делит время с» — общим становится будущее время; брони, созданные до этого, остаются как были и друг о друге не знают. Разметьте календари до того, как расписание наполнится, либо перепроверьте уже стоящие пересечения глазами один раз.
- Цепочка связывает соседей, но не концы. «А делит время с Б» работает всегда — в том числе когда у самого Б стоит В. А вот А и В общего времени не имеют: связка читается на один шаг и дальше не идёт. Для места, которое делят несколько человек, поэтому и удобнее отдельная карточка-ключ: на неё указывают все, а сама она не указывает ни на кого. Ошибки при сохранении цепочки сейчас нет — предупреждает только подсказка поля, и мы честно называем это незакрытым краем.
- Бронь не запоминает, где она прошла. Клиенту место называется — и на шаге «где?», и строкой «Где» на экране «вы записаны», — но считается оно каждый раз заново: по выбору клиента и по разметке календаря. Отдельного поля «площадка» у самой записи нет, поэтому в письмах, документах и выгрузках ответить «в каком зале» пока нельзя, а переразметили календарь задним числом — старые записи «переедут» вместе с ним. У группового занятия своего поля «Площадка» тоже нет: место читается через календарь тренера — по нему публичное расписание групп и сужается.
- Выходной ставится КАЖДОМУ календарю отдельно. Особые дни («не работаю 13 августа», «работаю 16-го с 10:00») живут в графике конкретного календаря — а у человека с двумя площадками календарей два. Уехали в отпуск — закройте оба, иначе второй продолжит принимать записи. Связка «тот же человек» защищает от двойной брони, но выходным не делится: это разные расписания, и часто они и правда разные (в клубе отпуск, в зале — подмена).
- Сняли с записи все площадки разом — фильтр выключается целиком. Это защита от пустой страницы записи: когда доступных мест не остаётся, подбор возвращается к поведению «без модуля» и календари снова предлагаются. Убирайте залы по одному.
Что дальше
Настройте саму запись и её публичную страницу — онлайн-запись; продавайте час зала сразу группе — групповые занятия. Пошаговая инструкция по разметке календарей уже в справке кабинета — статья «Площадки и календари людей» проводит по обеим половинам модуля: залы и общее время.
Как эта разметка выглядит на живой задаче, показано на двух отдельных страницах: онлайн-запись клиентов для студии, школы и зала — про залы и группы, CRM для барбершопа — про кресла и мастеров.
Как этим пользоваться
Пошаговый разбор с картинками — в справке.
Открыть инструкциюОткрыто целиком, без регистрации.
Что рядом
- Онлайн-запись: клиент записывается сам, пока вы работаетеПубличная страница, где клиент выбирает услугу и свободное время. Запись сразу в CRM, отмена и перенос — на его стороне, а двойная бронь невозможна: это запрещено на уровне базы данных, а не проверкой в коде.
- Групповые занятия: расписание и состав группы — в CRM, а не в перепискеЗанятие с числом мест стоит на календаре и по-настоящему занимает час тренера, клиент записывается в группу сам со страницы записи, группа отмечается одним сохранением, а неявка списывает визит абонемента по вашему правилу. Число мест — запрет, а не подсказка, и на сайте тоже. Что уже работает и чего пока нет — сказано прямо, без умолчаний.
Соберите свою CRM под свою нишу — бесплатно и без карты.
Собрать мою CRM →