Голосовая навигация- правило ivr, это правило устанавливается аналогично другим правилам ivr в опциях контекста.
Ниже указано описание создания правила, на примере запросов, которые можно выполнить на странице интерактивного обозревателя.
Создание правила голосового помощника “voice_helper”:
К примеру, вызов попадает на id добавочного {extension_id} в контекст {context_id}, на опцию {option_digits} (обычно, start). Также для примера будем считать, что контекст пустой и правил там еще нет.
Добавляем правило, отправляем запрос
POST /api/ver1.0/extension/{extension_id}/ivr/context/{context_id}/options/{option_digits}/rules/
c телом:
{ "action": "voice_helper", "voice_helper_classic_term": false, "voice_helper_digits_max": 1, "voice_helper_final_count": 1, "voice_helper_rules": [ { "to_option": 1, "transcription": "машина|техник" }, { "to_option": 2, "transcription": "косметика|косметолог" }, { "to_option": 3, "transcription": "гигиена|продукты" } ], "voice_helper_timeout": 12000 }
В ответе на запрос будет содержаться id созданного правила, например "id": 1
Опции to_option
, куда попадут при сообщении слов из transcription
должны быть созданы, они не создаются автоматически, в этом примере они будут созданы ниже.
transcription
может содержать как точное слово, так и часть слова.
В результате указанного выше запроса будет создано правило голосовой навигации, по которому будет проиграна мелодия по умолчанию.
Если нужно задать конкретное звуковое приветствие, чтобы сообщить в приветствии, что от звонящего ожидается то или иное слово- нужно подготовить звуковой файл. Ресурс Звуковые Файлы (/sound/) позволит залить файл и узнать id файла.
Обновить любой параметр правила можно методом
PUT /api/ver1.0/extension/{extension_id}/ivr/context/{context_id}/options/{option_digits}/rules/{rule_id}
К примеру, для указания актуального приветствия с указанием нужного id файла __ID__
:
{"sound": __ID__}
аналогичным способом обновляется любой параметр правила voice_helper, например можно заменить правила voice_helper_rules
PUT /api/ver1.0/extension/{extension_id}/ivr/context/{context_id}/options/{option_digits}/rules/{rule_id}
{"voice_helper_rules": [ { "to_option": 1, "transcription": "продукты|еда" }, { "to_option": 2, "transcription": "комиксы|комик|икс" } ] }
Не рекомендуется делать много логики в одном правиле voice_helper_rules
, желательно не более 500
to_option
- это опции контекста. Start, invalid, timeout, 1, 2, 3, 4 и т.д. -это опции контекста. Правило voice_helper
создано в start, а навигация голосом будет по опциям 1-10 (либо 4-40, к примеру)
Создание опций выполняется запросом
POST /api/ver1.0/extension/{extension_id}/ivr/context/{context_id}/options/
{"digits": "string"}
, где string
опции контекста start, invalid, timeout, 1, 2, 3, 4 и т.д.