Голосовая навигация

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

Права приложения api должны быть all (также включается администратором платформы, подробнее описано тут: https://ringme-confluence.atlassian.net/wiki/spaces/RAL/pages/17367134 )

 

Голосовая навигация- правило ivr, описание действия voice_helper доступно тут: https://ringme-confluence.atlassian.net/wiki/spaces/RAL/pages/1572765705 . Это правило устанавливается аналогично другим правилам 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 может содержать как точное слово, так и часть слова.

В результате указанного выше запроса будет создано правило голосовой навигации, по которому будет проиграна мелодия по умолчанию.

Если нужно задать конкретное звуковое приветствие, чтобы сообщить в приветствии, что от звонящего ожидается то или иное слово- нужно подготовить звуковой файл. Ресурс https://ringme-confluence.atlassian.net/wiki/spaces/RAL/pages/17367226 позволит залить файл и узнать 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/

, где string опции контекста start, invalid, timeout, 1, 2, 3, 4 и т.д.