Создание и настройка голосового робота
Проект SaluteBot Voice — это возможность сделать голосового робота, который будет отвечать пользователям. Вы сможете заменить операторов в нерабочее время, вовлечь в диалог новых клиентов и предоставить ответы на общие вопросы.
Для подключения голосового робота создайте сценарий в инструментах Graph или Code.
Голосовой робот доступен для создания в корпоративных и личных пространствах.
Сценарий Code/Graph для голосовых роботов нельзя использовать в качестве сценария смартапа или чат-бота.
Для создания голосового робота:
- Создайте и подключите сценарий голосового робота.
- Подключите SIP-телефонию. Добавление SIP-подключений производится модераторами после создания заявки в течение 3 рабочих дней.
После создания первого проекта SaluteBot Voice будет автоматически подключен бесплатный пробный тариф. Удаление проекта SaluteBot Voice, независимо от подключенной телефонии, невозможно. Проекты Code/Graph для SaluteBot Voice можно удалить только в том случае, если они не используются в качестве сценариев в SaluteBot Voice.
Создание проекта для юридических лиц
Если вы создаете проект SaluteBot Voice как юридическое лицо, то создание корпоративного пространства — обязательный этап настройки личного кабинета Studio.
Создание корпоративного пространства
- Авторизуйтесь в Studio.
- Перейдите в левое боковое меню на главной странице Studio.
- Нажмите на вкладку Личное пространство.
- В выпадающем списке нажмите кнопку Создать корпоративное пространство.
- Введите название пространства в открывшемся окне и нажмите кнопку Создать пространство.
Теперь у вас есть корпоративное пространство, в котором вы можете работать как юридическое лицо.
Создание проекта SaluteBot Voice
- Нажмите Создать проект в левом боковом меню на главной странице Studio.
- Выберите проект:
- SaluteBot Voice Входящие Конструктор — можно подключить сценарий Graph.
- SaluteBot Voice Входящие IDE — можно подключить сценарий Code.
- Выберите пустой шаблон или сделанный вами ранее сценарий: проект Graph для SaluteBot Voice или Code для SaluteBot Voice.
- Нажмите Далее.
- Подтвердите согласие с условиями использования сервиса, если не сделали этого ранее.
- При необходимости укажите новое название и группу проекта.
- Нажмите Создать проект.
Вам откроется созданный проект, в котором автоматически подключен пробный тариф — 20 минут звонков ежемесячно. Чтобы начать пользоваться голосовым роботом, подключите телефонию.
Создание проекта для физических лиц
Проект SaluteBot Voice для физических лиц создается в личном пространстве Studio. Для создания проекта авторизуйтесь в Studio и пройдите все шаги по созданию проекта, описанные выше.
Подключение SIP-телефонии
Создайте проект сценария для голосового робота до того, как отправить заявку на телефонию.
После подключения телефонии выбрать другой сценарий не получится.
Для подключения телефонии в проект потребуется предварительно самостоятельно приобрести номер в сервисе облачной телефонии и ввести данные подключения в заявку.
Чтобы добавить телефонию в голосового робота:
- Перейдите в проект SaluteBot Voice Входящие.
- Нажмите Добавить телефонию.
- Заполните открывшуюся форму:
- ФИО — ваши фамилия, имя и отчество.
- Почта — электронный адрес для отправки уведомления по заявке.
- Наименование SIP-провайдер — наименование вашего SIP-провайдера или оператора. Например, Билайн.
- Ссылка на сайт провайдера — ссылка на сайт вашего SIP-провайдера или оператора.
- Сервер — сервер вашего SIP-провайдера или оператора. Например, sip.beeline.ru.
- Номер для подключения — номер телефона, на который будут приходить вызовы. Например, +74955675656.
- Порт — порт вашего SIP-провайдера или оператора. Например, 5060.
- SIP-адрес — SIP-адрес вашего SIP-провайдера или оператора. Например, 480560@sip.beeline.ru.
- SIP-логин — ваш логин SIP-подключения.
- SIP-пароль — ваш пароль SIP-подключения.
- Комментарий — дополнительная информация.
- Нажмите Отправить.
Если данные заполнены верно, в течение 3 рабочих дней на указанную в заявке почту придет уведомление о подключении телефонии. Если у нас возникнут вопросы по вашей заявке, мы также напишем на почту.
После успешной обработки заявки и подключения телефонии становится доступной кнопка Изменить телефонию.
Настройка голосового робота
Настройка параметров голоса
При работе с SaluteBot Voice возможно настроить голосовые параметры для проекта в целом и для отдельных реплик, а также настроить подсветку и разметку добавленного в реплику синтаксиса ssml.
Настройки позволяют выбрать голос для озвучивания, настроить его громкость, тембр и скорость речи.
Настройки параметров голоса связаны с общими настройками проекта в целом, но их можно изменить для каждого блока или оставить по умолчанию. Здесь задается персонаж, тембр, громкость и скорость. Глобальные настройки задаются в разделе Синтез речи блока Настройки сценария.
- Graph
- Code
Для настройки голосовых параметров проекта:
- Откройте проект сценария Graph.
- Перейдите в раздел Настройки проекта.
- Откройте вкладку Голосовые настройки.
- Выберите любые доступные настройки: Тип голоса, Скорость воспроизведения, Громкость голоса и Тембр голоса.
- Сохраните настройки.
В результате при общении с ботом будут применены указанные параметры.
Для настройки голосовых параметров реплики:
- Откройте проект сценария Graph.
- Перейдите в раздел Сценарий.
- Добавьте блок Текст.
- В блоке Текст установите доступные настройки: Тип голоса, Скорость воспроизведения, Громкость голоса и Тембр голоса.
- Сохраните настройки.
В результате при общении с ботом для выбранного блока будут применены указанные параметры. Для каждой реплики можно применить разные настройки. Сохранение настроек происходит сразу после их изменения.
Если вы назначили индивидуальные голоса для блоков, а затем изменили настройки по умолчанию в сценарии в целом, то настройки блока будут более приоритетными над общими настройками по умолчанию.
Для настройки подсветки SSML тегов:
- Откройте проект сценария Graph.
- Перейдите в раздел Сценарий.
- Добавьте блок Текст.
- В блоке установите отметку Включить разметку ssml. Для блока ввода реплики появится подсказка на ссылку с документаций ssml.
- Добавьте нужные теги ssml.
В результате теги будут размечены в тексте. В разметке тэгов подсвечиваются следующие параметры: название тега, его атрибут и значение. Если какие-то параметры голоса меняются относительно значений по умолчанию, то разметка текста изменится в зависимости от конкретного параметра.
Параметры передаваемые для настройки:
Название | Параметр | Тег |
---|---|---|
Тип голоса | voiceType | <voice name=Nec_8000>текст</voice> |
Громкость голоса | voiceLoudness | <paint loudness="3">текст</paint> |
Скорость голоса | voiceSpeed | <paint speed="3">текст</paint> |
Тембр голоса | voicePitch | <paint pitch="5">текст</paint> |
Пример заполнения:
{
"sessionId": "86024848-c12b-4056-b58b-93c69b412314",
"messageId": 0,
"uuid": {},
"messageName": "ANSWER_TO_USER",
"payload": {
"pronounceText": "<speak><paint pitch="5" speed="4" loudness="5">РЕПЛИКА РОБОТА ДОБАВЛЕННАЯ РАЗРАБОТЧИКОМ</paint></paint></speak>,
"pronounceTextType": "application/ssml",
...
}
}
Блок Текст содержит следующие параметры:
- Реплика робота - произносимая реплика робота.
- Добавить реплики - добавление новой реплики для рандомного ответа, содержит только поля настройки произносимой фразы.
- Описание блока - блок воспроизводит реплику указанную в голосовом канале. Для добавления разметки настройте реплику, в настройках включите разметку фразы ssml.
Для настройки голосовых параметров проекта:
- Откройте проект сценария Code.
- Перейдите в раздел Настройки проекта.
- Откройте вкладку Голосовые настройки.
- Выберите любые доступные настройки: Тип голоса, Скорость воспроизведения, Громкость голоса и Тембр голоса.
- Сохраните настройки.
В результате при общении с ботом будут применены указанные параметры.
Для настройки подсветки SSML тегов:
- Откройте проект сценария Code.
- Добавьте или выберите нужный стейт.
- Укажите настройки голоса в теге
а:
. - Добавьте нужные теги ssml.
- Сохраните настройки.
В результате теги будут размечены в тексте. В разметке тегов подсвечиваются следующие параметры: название тега, его атрибут и значение.
Настройка перебивания
Вы можете настроить в сценарии голосового робота те реплики, которые нельзя перебивать клиенту.
- Graph
- Code
- Откройте проект сценария Graph.
- Перейдите в раздел Сценарий.
- Добавьте блок Текст, в котором установите отметку в поле Запретить перебивание. По умолчанию эта опция отключена. При включении этой опции в сценарий добавляется тэг
a:
, для которого устанавливается свойствоdisable_barge_in = true
.
Пример в сценарии
state: node_01
a: мой ответ || disable_barge_in = true // реплика с запретом перебивания
- Сохраните настройки.
В результате при общении с роботом для выбранного блока будут применены указанные параметры: реплики клиента не будут останавливать реплику робота, пока она не будет воспроизведена полностью.
- Откройте проект сценария Code.
- Выберите или добавьте стейт, в котором должна быть реплика без перебивания.
- Добавьте или выберите реплику, которая не должна перебиваться, и установите для нее свойство свойство
disable_barge_in = true
. - Сохраните сценарий.
В результате при попадании в стейт и воспроизведении реплики ботом: реплики клиента не будут останавливать реплику робота, пока она не будет воспроизведена полностью.
Свойство запрета перебивания также можно установить в теге, функциях reactions
и reply
.
Переадресация вызова
- Graph
- Code
Для настройки переадресации (перевода звонка на указанный номер телефона):
- Откройте проект сценария Graph.
- Выберите или добавьте шаг сценария, в котором должен быть выполнен перевод.
- Добавьте блок Перевод на оператора.
- Заполните номер телефона, на который должен быть совершен перевод.
- В сценарий будет добавлен Блок перевода на оператора.
- В блоке заполните обязательный параметр: номер для перевода - номер телефона оператора в формате
+7 ХХХ-ХХ-ХХ
, если есть добавочный номер+7 ХХХ-ХХ-ХХ**Добавочный
. - Сохраните сценарий.
При добавлении блока в сценарий добавляется тег TransferToOperator с параметром:
Название | Поле | Тип |
---|---|---|
Номер для перевода | number | string |
Для настройки переадресации (перевода звонка на указанный номер телефона):
- Откройте проект сценария Code.
- Добавьте или выберите стейт, в котором должен быть выполнен перевод.
- Добавьте тип
reply switch
и укажите номер телефона в параметрах. - Сохраните сценарий.
Пример перевода:
script:
$response.replies = $response.replies || [];
$response.replies.push({
type: 'switch',
number : '+790945323'
callTimeout: 600,
});
Завершение звонка
- Graph
- Code
Для настройки завершения звонка:
- Откройте проект сценария Graph.
- Выберите или добавьте шаг сценария, на котором голосовой робот должен завершить звонок.
- Добавьте блок Завершение сценария.
- Сохраните и соберите сценарий.
В результате в ходе исполнения сценария при переходе клиента в этот блок голосовой робот завершит звонок.
Для настройки завершения звонка:
- Откройте проект сценария Code.
- Добавьте или выберите стейт, в котором голосовой робот должен завершить звонок.
- Добавьте переменную
$caller.hangUp()
. - Сохраните и соберите сценарий.
В результате в ходе исполнения сценария при переходе клиента в этот блок голосовой робот завершит звонок.
Другие возможности голосового робота
Загрузка аудиозаписей
Для того, чтобы голосовой робот звучал более естественно, можно загрузить аудиозаписи реплик реальных людей через интерфейс в сценарии. Для загрузки ваших аудиозаписей используйте блок Аудио. Загруженные аудиозаписи можно использовать в сценарии, например, включать специальные сигналы.
Отчеты по вызовам
В разделе Статистика можно ознакомиться с детализацией всех диалогов, по умолчанию установлен период сбора информации 1 неделя.
Отчет содержит следующие параметры:
msisdn - номер телефона, с которого поступает звонок;
result - последнее сообщение или пустое поле (если робот не услышал пользователя). Настраивается автором сценария через скрипт. В каждом элементе сценария можно задать переменную result (например, результат звонка), которая будет записываться в отчет для того, чтобы возможно было получить отчеты по определенным блокам сценария и понять, произошел ли сброс после приветствия, следует ли перезвонить клиенту с определенного блока и т.д. По мере прохождения диалога по разным блокам происходит переход к следующей заданной переменной;
call_start - дата и время начала звонка;
duration - длительность звонка в секундах;
call_uuid - уникальный id вызова в телефонии;
call_transcript - полная расшифровка диалога, включая реплики голосового робота и ответы клиента;
call_record - ссылка на файл с записью разговора в формате wav;
hang_up_phone - инициатор завершения разговора ("telephony" - если голосовой робот самостоятельно завершил вызов, "caller" - если вызов был завершен клиентом);
dialog_uuid - уникальный id вызова голосового бота.