Технологии и безопасность

Ассистент отвечает по вашим данным — и умеет остановиться.

Здесь по шагам: откуда ассистент берёт расписание и цены, что делает перед тем, как создать запись, где лежат ваши доступы и что происходит, когда он чего-то не знает.

01Путь ответа

Что происходит между вопросом клиента и записью

Клиент пишет в мессенджер салона. Ассистент разбирает вопрос, запрашивает нужное в YClients — услуги, цены, мастеров, свободные окна — и отвечает по тому, что получил.

Дальше два исхода. Если данных хватает, ассистент создаёт запись, и она появляется в вашем журнале. Если вопрос выходит за то, что он может проверить, диалог уходит администратору: тот получает имя клиента, канал, суть вопроса и ссылку на переписку.

Данные YClients · запись или человек
02Актуальные данные

Расписание и цены берутся в момент разговора

Ассистент работает через официальный API YClients. Услуги, цены, мастеров и свободные окна он запрашивает во время диалога, поэтому называет то, что стоит в вашем журнале сейчас.

Поменяли цену или закрыли мастеру день — ассистент отвечает по-новому со следующего вопроса клиента. Отдельного прайса, который нужно поддерживать вручную, у него нет.

Официальный API YClients · без второго прайса
03Проверка перед записью

Время сверяется заново в момент записи

Между «во сколько свободно?» и «записывайте» проходит время, и окно может занять другой клиент или сам администратор. Поэтому перед созданием записи ассистент запрашивает свободные окна мастера ещё раз.

Если выбранного времени в свежем списке нет, записи не будет: ассистент скажет клиенту, что время заняли, и предложит те окна, которые свободны сейчас. Заодно он проверяет, что мастер действительно оказывает выбранную услугу, а длительность берёт из карточки услуги в YClients.

Сверка окна · проверка мастера и услуги
04Защита от дублей

Один запрос — одна запись

Мессенджеры повторяют доставку сообщений, а клиент может нажать «записаться» дважды. Ассистент помнит, какие сообщения он уже обработал, и второй раз то же самое не выполняет.

У самой записи есть свой признак повтора: тот же клиент, мастер, услуга, время и телефон считаются одной и той же просьбой. Повторную запись ассистент не создаёт, а говорит клиенту, что запись уже оформлена.

Повторы сообщений · повторная запись
05Неясный результат

Когда непонятно, создалась запись или нет

Ассистент различает два разных случая. Если YClients прямо отказал — время недоступно, данные не подошли — это понятный ответ, и ассистент предлагает клиенту другое время.

Если ответа не было вовсе — обрыв связи или таймаут — запись могла создаться, а могла и нет. Вслепую ассистент не повторяет: он сообщает администратору, что нужно проверить эту запись в YClients, и предлагает клиенту дождаться проверки или выбрать другое время.

Отказ и неизвестность — разные случаи
06Живой диалог

Умный диалог, а не дерево кнопок «нажмите 1»

Ассистент понимает свободные формулировки: «а можно попозже?», «сколько стоит 2D?» или «перенесите на другой день». Он учитывает контекст разговора и помогает подобрать услугу, мастера и время.

Тон ответов настраивается под салон. Если вопрос выходит за заданные правила, ассистент не выдумывает ответ, а предлагает связаться с администратором и даёт телефон салона. Переписку вы видите у себя и можете ответить сами в любой момент.

Онлайн-запись показывает не весь прайс салона. Поэтому, если услуга там не нашлась, ассистент никогда не отвечает «у нас такого нет». Он говорит, что не может проверить это сам, и предлагает уточнить у администратора. Так салон не теряет клиента из-за неполного каталога.

Понимание переписки и контекста
07Память

Помнит разговор и узнаёт постоянного клиента

Ассистент держит историю переписки, поэтому не переспрашивает то, что клиент уже назвал: услугу, мастера, удобное время.

Историю визитов он берёт из YClients — когда человек приходил, что делал и у какого мастера. Это работает, даже если клиент пишет в переписку впервые. Поэтому ассистент сразу предлагает привычное: «В прошлый раз делали окрашивание бровей у Анастасии — повторим?»

История переписки · визиты из YClients
08Справка салона

Отвечает про салон по вашим правилам

Вы один раз заполняете анкету: график и выходные, правила отмены и опоздания, как готовиться к процедурам, противопоказания, чем можно оплатить, где припарковаться. Ассистент отвечает строго по ней.

Чего в анкете нет — он не придумывает, а предлагает уточнить у администратора. Администратор перестаёт отвечать на одни и те же бытовые вопросы по десять раз в день.

Анкета салона · только подтверждённые ответы
09Ваши доступы

Доступы салона лежат отдельно от логики ассистента

Чтобы отвечать от имени салона, ассистенту нужны доступы: к YClients и к вашим мессенджерам. Мы держим их в отдельном защищённом хранилище. Логика диалога обращается к нему по имени салона и самих доступов не получает.

Наружу разрешён закрытый список действий — прочитать расписание, создать или отменить запись, отправить сообщение. Запросы вне этого списка не проходят. В рабочие журналы доступы и тексты переписки не пишутся.

Отдельное хранилище · закрытый список действий
10Салоны не пересекаются

Каждый салон отделён от остальных

Ассистент обслуживает несколько салонов, и данные одного не видны другому. Каждый запрос привязан к своему салону: обращение к чужому филиалу YClients отклоняется и попадает в журнал как ошибка доступа.

Правила общения, анкета, каналы и история переписки у каждого салона свои. Настройки соседей на ваши ответы не влияют.

Свои данные · свои правила · свои каналы
11Данные и закон

Данные клиентов хранятся в России, согласие — по 152-ФЗ

База с перепиской и контактами клиентов стоит на сервере в России, в Санкт-Петербурге. Обмен идёт по защищённым каналам (TLS/HTTPS).

Номера телефонов не попадают в языковую модель: ассистент вырезает их из текста до отправки и подставляет обратно в момент создания записи.

Перед первой записью ассистент показывает текст согласия на обработку персональных данных и ссылку на политику салона. Ответ клиента сохраняется вместе с текстом, который человек видел. Формулировки документов согласуются с салоном.

Сервер в России · TLS/HTTPS · 152-ФЗ
12Управление записями

Отменить и перенести — прямо в переписке

Клиент просит об этом обычными словами: «не смогу прийти» или «давайте на пятницу». После подтверждения изменение уходит в YClients, а освободившееся окно возвращается в расписание.

Администратор управляет любой записью салона из чата: «найди запись Ольги на завтра», «перенеси на 16:00», «отмени». Перед изменением ассистент называет клиента, услугу, мастера, дату и время и ждёт подтверждения. Клиентам этот режим недоступен.

Отмена · перенос · режим салона
13Единое ядро

Один ассистент во всех ваших каналах

Ассистент построен как единое ядро с тонкими переходниками под каждый канал. Логика, знание услуг и тон общения общие, поэтому клиент получает одинаково ровный ответ и в Telegram, и во ВКонтакте.

Ассистент работает в Telegram, ВКонтакте, MAX, WhatsApp* и в чате на сайте салона. В Telegram он отвечает от лица салона через Telegram Business — клиенту не нужно искать отдельного бота и нажимать «Старт». Все три канала входят в подписку.

Единое ядро · Telegram · ВКонтакте · MAX
14Наблюдение

За работой ассистента следим мы

Мы проверили ассистента на типовые атаки и закрыли их: защита от спама и перегруза сообщениями, изоляция посторонних команд, управление записями только для салона.

Подключение к базе задублировано: если пропадает связь по одному сетевому пути, ассистент уходит на резервный, и нам приходит оповещение о сбое. Обновления, поддержку и донастройку логики — услуги, цены, тон общения — берём на себя.

24/7 · мониторинг · защита
Остались вопросы

Покажем ассистента в деле — на примере вашего салона.

Ответим на любые вопросы про запись, данные и безопасность. Подключение — за пару дней.

Написать в Telegram →