Rechedar
Войти в кабинет

Справочник узлов сценария

Что умеет бот в диалоге: строительные блоки сценария — фразы, вопросы, меню, свободный диалог с ИИ, вебхуки, перевод на оператора.

Сценарий — YAML-документ: граф из узлов, по которому идёт диалог. Этот справочник — клиентская выжимка полной спецификации сценариев: что умеет каждый узел и когда его применять. Сценарии готовятся командой Rechedar по вашему описанию, но понимать строительные блоки полезно, чтобы формулировать задачу.

Общие понятия

  • Узел — шаг диалога: сказать фразу, задать вопрос, позвать оператора… В каждый момент активен ровно один узел.
  • Переходы (next) — куда идти дальше; можно ветвиться по ответам.
  • Переменные — сохранённые ответы ({name}, {score}), подставляются во фразы и условия.
  • Barge-in — абонент может перебить ботa фразой, бот слушает всегда.
  • Тишина / «не понял» — у каждого вопроса есть ретраи (по умолчанию 2): бот вежливо переспрашивает, потом идёт по ветке отказа.
  • Голос — выбирается в редакторе сценария из библиотеки: системные голоса платформы и ваши клоны (загружаются на экране «Голоса» из 3–30 секунд чистой записи — как это сделать, см. голоса). Смена голоса не требует правки сценария.

Узлы

say — произнести фразу

Односторонняя реплика бота, ответ не ждётся. Приветствие, информирование о записи, прощание. Поддерживает подстановку переменных.

ask — вопрос с ожиданием ответа

Речь абонента распознаётся (ASR — «ухо» платформы) и сопоставляется с ожиданиями: да/нет, число, свободная фраза, дата. Ответ сохраняется в переменную. Основной узел опросов: «Оцените сервис от 1 до 10» → {score}.

Абонент выбирает клавишами (DTMF) или голосом: «Нажмите 1 или скажите „да“». Надёжнее ask для точных выборок (да/нет/не знаю), работает на любых трубках.

llm_dialog — свободный диалог с ИИ

Бот с языковой моделью ведёт беседу в рамках заданной роли и цели: обрабатывает возражения («дорого», «не интересно»), задаёт уточняющие вопросы, фиксирует результат. Модель видит весь разговор и переменные; есть лимит реплик и защиты от ухода от темы. Это самый «человеческий» режим — например, анкетирование с уточнениями.

У узла есть два «навыка», включаемых флагами в сценарии (ниже — отдельными разделами).

Навык: база знаний (kb)

Бот отвечает по вашим документам. Загрузите текст или FAQ «вопрос;ответ» в разделе «База знаний» кабинета — и на каждую реплику абонента платформа найдёт самые подходящие фрагменты и подсунет их модели. Бот перестаёт «фантазировать» и цитирует ваши тарифы/условия. Перед запуском проверьте в кабинете песочницу вопросов («Проверить вопрос»): что нашли вы — то увидит и бот.

Навык: память об абоненте (memory)

Бот учитывает, что платформа уже знает об этом человеке из прошлых звонков и чатов: удобное время, о чём просил, статус клиента. Работает во всех каналах; накопленное видно на экране «Контакты» — у каждого контакта список фактов с источником (из какого диалога). Отдельный факт можно стереть по требованию абонента; накопление целиком отключается в «Настройках».

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

webhook — запрос к вашей системе

HTTP-вызов вашего сервиса в середине диалога: проверить статус клиента в CRM, получить персональные данные (сумму долга, дату доставки), записать ответ во внешнюю систему. Возможности узла:

  • метод и заголовки настраиваются, тело — JSON с подстановкой переменных ({"phone": "{phone}", "code": "{code}"});
  • поля ответа можно разложить в переменные (items[0].id → {order_id}) и использовать дальше во фразах и ветвлениях;
  • есть режим «не ждать ответа» (послали и пошли дальше) и повторы при сбоях;
  • авторизационные секреты (API-ключи) подставляются шаблоном {{ secret.имя }} — значение хранится зашифрованным, не виден в сценарии и логах; выдаёт команда Rechedar при подключении;
  • розетка плагина: поле «Плагин преобразования ответа» прогоняет ответ вашей системы через ваш WASM-модуль до разложения в переменные — удобно для неудобных форматов (SOAP/XML, вложенность). Модули — раздел «Плагины» (меню «Ещё»), там же галерея готовых модулей платформы (адреса, время перезвона, извлечение контакта и другие) — установка в один клик без компиляции; узел без плагина работает как обычно.

Ответ синхронный, с таймаутом (до 30 секунд — дольше абонент слушает тишину; долгие операции лучше в режиме «не ждать»).

transfer — перевод на живого оператора

Соединение абонента с вашим номером/очередью (внутренней АТС, колл-центра): когда скрипт исчерпан или абонент просит человека. Бот выходит из разговора, дальше — ваш оператор.

hangup — завершить звонок

Терминальный узел: вежливое прощание и отбой. Обязателен у каждого сценария (успешный финал и финалы отказов — свои ветки).

set — присвоить переменные

Служебный узел: вычислить/сохранить значение (например, отметить контакт «горячий») для ветвления и выгрузки.

branch — ветвление

Управление потоком по условию: если {score} >= 8 → ветка «спасибо, отлично», иначе → ветка «что улучшить». Читается как обычное «если».

Возражения и отказы — что платформа делает сама

Помимо узлов сценария, бот слушает абонента на каждом шаге и распознаёт типовые возражения и отказы (библиотека + нейросеть):

  • Возражения («дорого», «откуда вы взяли мой номер», «я занят», «перезвоните позже») — бот отвечает подготовленной репликой отработки и продолжает диалог. На каждый класс — до двух попыток, затем вежливый выход. Какие классы отрабатывать и чем прощаться при отказе — настраивается в сценарии (секция «возражения»); история каждой попытки видна в аналитике.
  • Отказ от звонков («не звоните мне больше», «удалите мой номер») — бот сразу вежливо завершает разговор, а номер навсегда исключается из обзвона: повторные кампании его не набирают. Это работает всегда, независимо от сценария, — право абонента на отказ не зависит от настроек. Реестр отказов виден в кабинете (раздел «Не звонить»); снять отказ может только ваш оператор по обращению абонента.

Типовые связки

  • Опрос NPS: say (представление) → ask (оценка 0–10) → branch (критик/доволен) → ask (комментарий) → hangup.
  • Подтверждение записи: say → menu (подтвердить/перенести/ отменить) → branch → … → hangup.
  • Обработка возражений: say → llm_dialog (роль: договориться о встрече, возражения отрабатывать мягко) → set (результат) → hangup.
  • Долг с проверкой: webhook (баланс из вашей БД) → llm_dialog (сообщить и предложить оплату) → transfer (оператор, если спор) → hangup.

Обновлено: 2026-10-08

← Вся документация · Поиск по документации