Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Warning

Мы обновили документацию, актуальная версия страницы доступна по ссылке: Голосовое меню (/ivr/)

Добавочные номера типа ivr служат для настройки маршрутизации звонков внутри АТС с использованием информации, вводимой клиентом на клавиатуре телефона с помощью тонального набора.

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

Звуковые файлы, которые необходимы для настройки голосового приветствия, загружаются в ресурс sound.

Важные понятия:

  • Контекст. Представляет собой заранее сформированный набор правил, на которые можно сослаться в настройках. Каждый контекст как минимум содержит  опции:
    1. start: описывает действия при вхождении в контекст 
    2. timeout: описывает действия при наступлении таймаута (клиент не сделал никакого выбора в течении заданного промежутка времени)
    3. invalid: действия, наступающие при выборе клиентом опции, которая не сконфигурирована 
    В дополнении к обязательным опциям контекста могут быть добавлены дополнительные: например, что делать при наборе клиентом последовательности "100".
    Все  опции по умолчанию выполняют действие hangup (повесить трубку) и это действие должно быть переопределено для задания необходимой логики.
    За IVR закреплен так называемый "entry_context" - в него попадает вызов после прихода в голосовое меню. Его еще можно назвать главным контекстом
  • 'background'/'foreground' тип звучания голосового приветствия. В случае "background" система готова принимать тональный набор в любой момент, а 'foreground' обязывает пользователя прослушать запись до конца и лишь после этого делать выбор(если возможность такого выбора сконфигурирована)

Table of Contents

Описание структур данных

Базовые параметры (ivr)

 

Имя

Тип

Обязательный

Значение По УмолчаниюОписание

entry_context

integer

нет

 
идентификатор главного контекста

lifetime

integer

нет


время (в секундах) по истечении которого происходит принудительный выход из IVR

lifetime_exp_action

string

нет

 

Действия при выходе из IVR по наступлению lifetime

  • 'transfer' - перевод звонка (параметр lifetime_exp_transfer_dst)
  • 'hangup' - повесить трубку

lifetime_exp_transfer_dst

string

нет

 
Переадресация на указанный номер при истечении lifetime и lifetime_exp_action='transfer'

sleep_time

integer

нет

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

Контекст (context)

Имя

Тип

Обязательный

Значение По УмолчаниюОписание

timeout

integer

нет

5000время (в миллисекундах) ожидания начала набора после выполнения последнего правила в опции контекста. По истечении уход в опцию timeout

allow_any_dial

boolean

нет

falseпозволен ли донабор любого добавочного клиента

inter_digit_timeout

integer

нет

2000время (в миллисекундах) ожидания следующей цифры. По истечении набор считается завершенным.  Например, при "digit_len": 3,  набор "30" будет принят по прошествии  inter_digit_timeout

name

string

да

 
имя контекста

digit_len

integer

нет


длина добавочного клиентапосле набора указанного количества цифр, ввод считается завершенным (без необходимости ожидания "inter_digit_timeout"). Также определяет максимальную длину возможного набора клиентом. Например, "digit_len": 3 позволяет набрать "7", "22", "300", но не дает возможности выбора "4000"

Опция контекста (context_option)

Имя

Тип

Обязательный

Значение По УмолчаниюОписание

digits

string

да

 

Добавляет к стандартным опциям конеткста (start,timout,invalid), пользовательскую опцию. Например, значение "2" задаст возможность обработки ввода цифры "2" после попадания в контекст

Правило опции контекста (context_option_rule)

digits

Имя

Тип

Обязательный

Значение По УмолчаниюОписание

action

string

нет

 Проговорить указанные цифры (методом play_digits_method), обязателен при action= 'play_digits'

sound

integer

нет

 Идентификатор звукового файла, который необходимо проиграть, обязателен при action= 'play_sound'

sound_type

string

нет

 

Обязателен при наличии идентификтора sound. Может принимать значения:

  • 'background' пользователь может сделать донабор, пока звучит приветствие
  • 'foreground' пользователь должен прослушать приветствие до конца

play_digits_method

string

нет

 

Обязателен при установленной опции digits. Может быть:

  • 'pronounced' проговорить цифры как одно число
  • iterated' - проговорить цифры последовательно одна за другой

interval

integer

нет

 правило выполняется только в этом временном интервале

caller_id_action

string

нет

 

определяет метод анализа источника вызова caller_id:

  • 'matches' должен совпадать (caller_id должен быть задан)
  • 'not_matches' должен не совпадать (caller_id должен быть задан)
  • 'anonymous' источник скрыт
  • 'any' любой источник

caller_id

string

нет

 Правило будет работать только для вызовов, источник которых определяется этим полем. Поле заполняется в виде регулярного выражения PCRE. Например: "^(\+|)7812" будет соответствовать всем источникам, начинающимся на "+7812" или "7812"

context_option

string

нет

 

Определяет опцию контекста, в которую нужно перейти, при action='jump_to_context'

silence_time

integer

нет

 Время (в миллисекундах) отсутствия каких-либо звуков со стороны АТС, обязателен при action= 'play_silence'

context

integer

нет

 Определяет идентификатор другого контекста, в который нужно перейти, обязателен при action='jump_to_context'

transfer_dst

string

нет

 Переадресация на указанный номер. Если нужна переадресация на несколько номеров одновременно (одновременный вызов), то эти номера перечисляются через пробел. Обязателен для action='transfer'

set_variable_name

string

нет

 

Имя переменной, которая должна быть установлена. Должно начинаться с латинской буквы, может содержать латинские буквы, цифры, а также символы подчеркивания. Обязателен для action='set_variable

set_variable_value

string

нет

 Значение переменной, которая должна быть установлена. Обязателен для action='set_variable'
match_variable_namestringнет Имя переменной IVR, значение которой будет сравниваться со значением, заданным параметром match_variable_value. Если значения совпадут, то правило выполнится. Сравниваемая переменная может быть установлена системой, см. раздел "Предустановленные переменные в IVR", либо задана правилом опции контекста типа set_variable.
match_variable_valuestringнет Значение, которое будет сравниваться со значением переменной, имя которой задано параметром match_variable_name. Если значения совпадут, то правило выполнится. Обязателен, если задан параметр match_variable_name.

transfer_variable

string

нет

 Имя переменной, значение которой будет использовано в качестве номера для переадресации. Если переменная не установлена, то действие не выполняется. Переменная может быть установлена с помощью действия set_variable, record_digits, либо с помощью функции Call Interactive. Обязателен при action= 'transfer_from_variable'

play_digits_variable

string

нет

 Имя переменной, значение которой будет использовано для проигрывания цифр. Если переменная не установлена, то действие не выполняется. Переменная может быть установлена с помощью действия set_variable, record_digits, либо с помощью функции Call Interactive. Обязателен при action= 'play_digits_from_variable'

record_digits_variable

string

нет

 Имя переменной, в которую будут записаны введённые цифры. Обязателен при action= 'record_digits'

record_digits_max

integer

нет

 Максимальное количество введённый цифр, который будут записаны в переменную. Обязателен при action= 'record_digits'

record_digits_sound

integer

нет

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

call_interactive_url

string

нет

 URL, на который будет осуществляться HTTP-запрос функцией Call Interactive. Должен начинаться с http:// или c https://. Обязателен для action='call_interactive'

call_interactive_method

string

нет

 Метод, которым будет осуществляться HTTP-запрос функцией Call Interactive . Может принимать значение 'GET' или 'POST'. Обязателен для action='call_interactive'

call_interactive_timeout

integer

нет

 Время в секундах, в течение которого система будет ожидать ответ на HTTP-запрос функции Call Interactive. Если вызываемый URL не вернул ответ по истечении этого времени, то выполняется следующее правило.

caller_id_number

string

нет

 Номер звонящего для дальнейших переадресаций. Данный параметр может содержать в себе имена переменных, установленных в других действиях ранее, а также предустановленных переменных IVR. Имена переменных указываются в формате ${имя_переменной} Обязателен при action= 'set_caller_id_number'

caller_id_name

string

нет

 Имя звонящего для дальнейших переадресаций. Данный параметр может содержать в себе имена переменных, установленных в других действиях ранее, а также предустановленных переменных IVR. Имена переменных указываются в формате ${имя_переменной} Обязателен при action= 'set_caller_id_name'

action

string

да

 

Непосредственно определяет, что нужно сделать в этом правиле:

  • 'transfer' - выполнить перевод вызова (сделать переадресацию) на номер(а) из transfer_dst. Максимально возможное количество номеров передаресации – 10, для одновременной переадресации на большее количество номеров следует использовать действие group_call.
  • 'group_call' - перевод звонка (сделать переадресацию) на номер(а) из параметра transfer_dst. При данном типе переадресации правила входящего вызова для перечисленных в transfer_dst добавочных номеров не выполняются.
  • 'hangup' - повесить трубку
  • 'play_sound' - проиграть приветствие (параметр sound и sound_type)
  • 'play_silence' - тишина в background формате (параметр silence_time).
  • 'jump_to_context' - перейти в другой контекст (параметр context и context_option)
  • 'play_digits' - проиграть цифры (параметр digits и play_digits_method)
  • 'play_digits_from_variable' - проиграть цифры, содержащиеся в переменной (параметр play_digits_variable и play_digits_method)
  • 'record_digits' - записать набор цифр в переменную (параметры record_digits_variable, record_digits_max и record_digits_sound)
  • 'set_variable' - установить переменную в канале (параметры set_variable_name и set_variable_value).
  • 'transfer_from_variable- перевод звонка на номер, содержащийся в переменной (параметр transfer_variable)
  • 'call_interactive' - функция Call Interactive – осуществить HTTP-запрос на определенный URL (параметры call_interactive_url и call_interactive_method)
  • 'set_caller_id_number' -установить номер звонящего для дальнейших переадресаций из IVR (параметр caller_id_number)'set_caller_id_name' - установить имен звонящего для дальнейших переадресаций из IVR (параметр caller_id_name)

    да


    Непосредственно определяет, что нужно сделать в этом правиле:

    • 'transfer' - выполнить перевод вызова (сделать переадресацию) на номер(а) из transfer_dst. Максимально возможное количество номеров переаlресации – 10, для одновременной переадресации на большее количество номеров следует использовать действие simple_transfer.
    • 'simple_transfer' - перевод звонка (сделать переадресацию) на номер(а) из параметра transfer_dst. При данном типе переадресации правила входящего вызова для перечисленных в transfer_dst добавочных номеров не выполняются.
    • 'hangup' - повесить трубку
    • 'play_sound' - проиграть приветствие (параметр sound и sound_type)
    • 'play_silence' - тишина в background формате (параметр silence_time).
    • 'jump_to_context' - перейти в другой контекст (параметр context и context_option)
    • 'play_digits' - проиграть цифры (параметр digits и play_digits_method)
    • 'play_digits_from_variable' - проиграть цифры, содержащиеся в переменной (параметр play_digits_variable и play_digits_method)
    • 'record_digits' - записать набор цифр в переменную (параметры record_digits_variable, record_digits_max и record_digits_sound)
    • 'set_variable' - установить переменную в канале (параметры set_variable_name и set_variable_value).
    • 'transfer_from_variable- перевод звонка на номер, содержащийся в переменной (параметр transfer_variable)
    • 'call_interactive' - функция Call Interactive – осуществить HTTP-запрос на определенный URL (параметры call_interactive_url и call_interactive_method)
    • 'set_caller_id_number' -установить номер звонящего для дальнейших переадресаций из IVR (параметр caller_id_number)
    • 'set_caller_id_name' - установить имен звонящего для дальнейших переадресаций из IVR (параметр caller_id_name)
    • 'quality_rate' - установить правило оценки качества разговора,  основные параметры для работы этого действия: sound и max_rate
    • 'voice_helper' - установить правило голосовой навигации,  основные параметры для работы этого действия: soundvoice_helper_digits_maxvoice_helper_rules, voice_helper_timeout.  Описание правила и параметров доступны на отдельной странице speech to text, пример использования доступен на странице Голосовая навигация

    digits

    string

    нет


    Проговорить указанные цифры (методом play_digits_method), обязателен при action= 'play_digits'

    sound

    integer

    нет


    Идентификатор звукового файла, который необходимо проиграть, обязателен при action= 'play_sound'

    sound_type

    string

    нет


    Обязателен при наличии идентификтора sound. Может принимать значения:

    • 'background' пользователь может сделать донабор, пока звучит приветствие
    • 'foreground' пользователь должен прослушать приветствие до конца

    play_digits_method

    string

    нет


    Обязателен при установленной опции digits. Может быть:

    • 'pronounced' проговорить цифры как одно число
    • iterated' - проговорить цифры последовательно одна за другой

    interval

    integer

    нет


    правило выполняется только в этом временном интервале

    caller_id_action

    string

    нет


    определяет метод анализа источника вызова caller_id:

    • 'matches' должен совпадать (caller_id должен быть задан)
    • 'not_matches' должен не совпадать (caller_id должен быть задан)
    • 'anonymous' источник скрыт
    • 'any' любой источник

    caller_id

    string

    нет


    Правило будет работать только для вызовов, источник которых определяется этим полем. Поле заполняется в виде регулярного выражения PCRE. Например: "^(\+|)7812" будет соответствовать всем источникам, начинающимся на "+7812" или "7812"

    context_option

    string

    нет


    Определяет опцию контекста, в которую нужно перейти, при action='jump_to_context'

    silence_time

    integer

    нет


    Время (в миллисекундах) отсутствия каких-либо звуков со стороны АТС, обязателен при action= 'play_silence'

    context

    integer

    нет


    Определяет идентификатор другого контекста, в который нужно перейти, обязателен при action='jump_to_context'

    transfer_dst

    string

    нет


    Переадресация на указанный номер. Если нужна переадресация на несколько номеров одновременно (одновременный вызов), то эти номера перечисляются через пробел. Обязателен для action='transfer'

    set_variable_name

    string

    нет


    Имя переменной, которая должна быть установлена. Должно начинаться с латинской буквы, может содержать латинские буквы, цифры, а также символы подчеркивания. Обязателен для action='set_variable

    set_variable_value

    string

    нет


    Значение переменной, которая должна быть установлена. Обязателен для action='set_variable'
    match_variable_namestringнет
    Имя переменной IVR, значение которой будет сравниваться со значением, заданным параметром match_variable_value. Если значения совпадут, то правило выполнится. Сравниваемая переменная может быть установлена системой, см. раздел "Предустановленные переменные в IVR", либо задана правилом опции контекста типа set_variable.
    match_variable_valuestringнет
    Значение, которое будет сравниваться со значением переменной, имя которой задано параметром match_variable_name. Если значения совпадут, то правило выполнится. Обязателен, если задан параметр match_variable_name.

    transfer_variable

    string

    нет


    Имя переменной, значение которой будет использовано в качестве номера для переадресации. Если переменная не установлена, то действие не выполняется. Переменная может быть установлена с помощью действия set_variable, record_digits, либо с помощью функции Call Interactive. Обязателен при action= 'transfer_from_variable'

    play_digits_variable

    string

    нет


    Имя переменной, значение которой будет использовано для проигрывания цифр. Если переменная не установлена, то действие не выполняется. Переменная может быть установлена с помощью действия set_variable, record_digits, либо с помощью функции Call Interactive. Обязателен при action= 'play_digits_from_variable'

    record_digits_variable

    string

    нет


    Имя переменной, в которую будут записаны введённые цифры. Обязателен при action= 'record_digits'

    record_digits_max

    integer

    нет


    Максимальное количество введённый цифр, который будут записаны в переменную. Обязателен при action= 'record_digits'
    max_rateintegerнет5Максимальная оценка разговора, параметр, только для действия quality_rate

    record_digits_sound

    integer

    нет


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

    call_interactive_url

    string

    нет


    URL, на который будет осуществляться HTTP-запрос функцией Call Interactive. Должен начинаться с http:// или c https://. Обязателен для action='call_interactive'

    call_interactive_method

    string

    нет


    Метод, которым будет осуществляться HTTP-запрос функцией Call Interactive . Может принимать значение 'GET' или 'POST'. Обязателен для action='call_interactive'

    call_interactive_timeout

    integer

    нет

    5Время в секундах, в течение которого система будет ожидать ответ на HTTP-запрос функции Call Interactive. Если вызываемый URL не вернул ответ по истечении этого времени, то выполняется следующее правило.

    caller_id_number

    string

    нет


    Номер звонящего для дальнейших переадресаций. Данный параметр может содержать в себе имена переменных, установленных в других действиях ранее, а также предустановленных переменных IVR. Имена переменных указываются в формате ${имя_переменной}. Обязателен при action= 'set_caller_id_number'

    caller_id_name

    string

    нет


    Имя звонящего для дальнейших переадресаций. Данный параметр может содержать в себе имена переменных, установленных в других действиях ранее, а также предустановленных переменных IVR. Имена переменных указываются в формате ${имя_переменной}.Обязателен при action= 'set_caller_id_name'
    play_sound_from_variablebooleanнетfalse

    Для правил play_sound, quality_rate, voice_helper доступен параметр play_sound_from_variable

    В этой системной переменной может хранится приветствие, синтезированное с помощью действия text_to_speech в call interactive: Call Interactive#TTS

    В случае, если синтезированного приветствия нет, а play_sound_from_variable активен-  будет проигран звуковой файл по-умолчанию, указанный в sound

    Предустановленные переменные в IVR
    Anchor
    ivr_vars
    ivr_vars

    Имя переменнойОписание
    called_didПубличный номер (DID), на который пришел вызов в систему. Если вызов локальный, переменная содержит номер IVR без префикса клиента.
    caller_id_nameИмя звонящего
    caller_id_numberНомер звонящего

    ...


    Пример

    Для клиента с уникальным идентификатором 12, нужно создать IVR с номером "071" при попадании в который действуют правила:

    ...

    1. Используя ресурс  sound,  нужно загрузить файл  hello.wav и advertising.wav
       
       


      user@host$ curl -i -X POST -F file=@hello.wav -F"title=мой файл приветствия" -H"Authorization: Bearer TSyAxXtAsbE9Kl0iAVGG6LmnfEte8X"https://host.domain/api/ver1.0/client/12/sound/
      HTTP/1.1 100 Continue
      HTTP/1.1 201 CREATED
      Server: nginx/1.8.0
      Date: Tue, 11 Aug 2015 09:50:41 GMT
      Content-Type: application/json
      Content-Length: 150
      Connection: keep-alive
      Access-Control-Allow-Origin: *
      Access-Control-Allow-Methods: GET, POST, DELETE, PUT, PATCH, OPTIONS
      Access-Control-Allow-Headers: Content-Type, api_key, Authorization
      {"id": 51, "client_id": 12, "title""мой файл приветствия"}
       
      user@host$ curl -i -X POST -F file=@advertising.wav -F"title=мой файл рекламы" -H"Authorization: Bearer TSyAxXtAsbE9Kl0iAVGG6LmnfEte8X"https://host.domain/api/ver1.0/client/12/sound/
      HTTP/1.1 100 Continue
      HTTP/1.1 201 CREATED
      Server: nginx/1.8.0
      Date: Tue, 11 Aug 2015 09:50:41 GMT
      Content-Type: application/json
      Content-Length: 150
      Connection: keep-alive
      Access-Control-Allow-Origin: *
      Access-Control-Allow-Methods: GET, POST, DELETE, PUT, PATCH, OPTIONS
      Access-Control-Allow-Headers: Content-Type, api_key, Authorization
      {"id": 52, "client_id": 12, "title""мой файл рекламы"}

      идентификаторы новых файлов: hello.wav "id": 51advertising.wav "id": 52

    2. Используя ресурс  extension,  создать добавочный, типа "ivr"

      метод
      ресурс
      данные
      ответ
      POST
      client/@me/extension/

      {
      "status": "active",
      "name": "071",
      "label": "тестовый IVR",
      "type": "ivr"
      }

       


      {
      "status": "active",
      "name": "000*071",
      "extra_params": null,
      "label": "тестовый IVR",
      "client_id": 12,
      "extension_group_id": null,
      "type": "ivr",
      "id": 204
      }

      Идентификатор нового добавочного "id": 204

    3. Создаем контекст, который будет являться главным (entry_context):

      метод
      ресурс
      данные
      ответ
      POST
      /extension/204/ivr/context/

       {

      "digit_len": 3,
      "allow_any_dial": true,
      "inter_digit_timeout": 2000,
      "name": "Основной контекст",
      "timeout": 5000
      }

      {
      "name": "Основной контекст",
      "inter_digit_timeout": 2000,
      "timeout": 5000,
      "allow_any_dial": true,
      "id": 1,
      "digit_len": 3
      }

      Идентификатор контекста "id": 1

    4. Теперь можно привязать этот контекст ,как главный к нашему IVR, заодно   указываем "sleep-time", позволяющий задать паузу от прихода вызова в IVR до начала каких-либо действий контекста "entry_context"

      метод
      ресурс
      данные
      ответ
      PUT
      extension/204/ivr/

      {

      "sleep_time": 5000,
      "entry_context": 1
      }

      {
      "lifetime_exp_transfer_dst": null,
      "lifetime_exp_action": "hangup",
      "lifetime": 1800,
      "sleep_time": 5000,
      "entry_context": 1
      }


    5. Как отмечалось ранее, каждый контекст уже имеет опцию start.  Сконфигурирем его для проигравания foreground музыкального файла "advertising.wav"

      метод
      ресурс
      данные
      ответ
      POST
      extension/204/ivr/context/1/options/start/rules/

      {
      "sound": 52,
      "sound_type": "foreground",
      "action": "play_sound"
      }

      {
      "digits": null,
      "sound": 52,
      "sound_type": "foreground",
      "play_digits_method": null,
      "interval": null,
      "caller_id_action": "any",
      "caller_id": null,
      "context_option": null,
      "silence_time": null,
      "context": null,
      "transfer_dst": null,
      "action": "play_sound",
      "id": 1
      }


       

       

    6. Далее, по аналогии, укажем воспроизвести  файл  hello.wav в background 

      метод
      ресурс
      данные
      ответ
      POST
      extension/204/ivr/context/1/options/start/rules/

      {
      "sound": 51,
      "sound_type": "background",
      "action": "play_sound"
      }

      {
      "digits": null,
      "sound": 51,
      "sound_type": "background",
      "play_digits_method": null,
      "interval": null,
      "caller_id_action": "any",
      "caller_id": null,
      "context_option": null,
      "silence_time": null,
      "context": null,
      "transfer_dst": null,
      "action": "play_sound",
      "id": 2
      }


    7. Теперь в  контексте "Основной контекст", добавим возможность обработки выбора "1"

      метод
      ресурс
      данные
      ответ
      POST
      /extension/204/ivr/context/1/options/

      {
      "digits": "1"
      }

      {
      "digits": "1"
      }


    8. И укажем, что хотим делать для выбора "1" (перевод на мобильный +7(987)6543210)

      метод
      ресурс
      данные
      ответ
      POST
       /extension/204/ivr/context/1/options/1/rules/
       

      {
      "transfer_dst": "+7987654321",
      "action": "transfer"
      }

      {
      "digits": null,
      "sound": null,
      "sound_type": null,
      "play_digits_method": null,
      "interval": null,
      "caller_id_action": "any",
      "caller_id": null,
      "context_option": null,
      "silence_time": null,
      "context": null,
      "transfer_dst": "+7987654321",
      "action": "transfer",
      "id": 3
      }


    9. По аналогии добавим вызов добавочного "002" по набору "2" 

      метод
      ресурс
      данные
      ответ
      POST
      /extension/204/ivr/context/1/options/

      {
      "digits": "2"
      }

      {
      "digits": "2"
      }


      метод
      ресурс
      данные
      ответ
      POST
       /extension/204/ivr/context/1/options/1/rules/

      {
      "transfer_dst": "002",
      "action": "transfer"
      }

      {
      "digits": null,
      "sound": null,
      "sound_type": null,
      "play_digits_method": null,
      "interval": null,
      "caller_id_action": "any",
      "caller_id": null,
      "context_option": null,
      "silence_time": null,
      "context": null,
      "transfer_dst": "002",
      "action": "transfer",
      "id": 4
      }


    10. Осталось в случае отсутствия выбора клиента автоматически переводить на добавочный 050. Как уже отмечалсь, в контектсте есть опция "timeout",  в которой можно задать это действие

      метод
      ресурс
      данные
      ответ
      POST
       /ivr/144/context/2/options/timeout/rules/

      {
      "transfer_dst": "050",
      "action": "transfer"
      }

      {
      "digits": null,
      "sound": null,
      "sound_type": null,
      "play_digits_method": null,
      "interval": null,
      "caller_id_action": "any",
      "caller_id": null,
      "context_option": null,
      "context": null,
      "transfer_dst": "050",
      "action": "transfer",
      "id": 5
      }


    11. В итоге можно посмотреть все доступные опции контекста:

      метод
      ресурс
      данные
      ответ
      GET
      /extension/204/ivr/context/1/options/

       


      [
      {
      "digits": "start"
      },
      {
      "digits": "timeout"
      },
      {
      "digits": "invalid"
      },
      {
      "digits": "2"
      },
      {
      "digits": "1"
      }
      ]



    Ресурсы

    Раздел "добавочный"

    PUT /extension/{extension_id}/ivr/

    Обновить ivr configuration

    Параметры URL

    Имя

    Тип

    extension_id

    string

    Параметры JSON

    Имя

    Тип

    Обязательный

    lifetime_exp_action

    string

    нет

    entry_context

    integer

    нет

    lifetime_exp_transfer_dst

    string

    нет

    vm_enabled

    boolean

    нет

    vm_greeting

    integer

    нет

    lifetime

    integer

    нет

    vm_attach_file

    boolean

    нет

    sleep_time

    integer

    нет

    vm_mailto

    string

    нет

    Поля ответа

    Имя

    Тип

    lifetime_exp_action

    string

    entry_context

    integer

    lifetime_exp_transfer_dst

    string

    vm_enabled

    boolean

    vm_greeting

    integer

    lifetime

    integer

    vm_attach_file

    boolean

    sleep_time

    integer

    vm_mailto

    string

    GET /extension/{extension_id}/ivr/

    Получить ivr configuration

    Параметры URL

    Имя

    Тип

    extension_id

    string

    Поля ответа

    Имя

    Тип

    lifetime_exp_action

    string

    entry_context

    integer

    lifetime_exp_transfer_dst

    string

    vm_enabled

    boolean

    vm_greeting

    integer

    lifetime

    integer

    vm_attach_file

    boolean

    sleep_time

    integer

    vm_mailto

    string

    ...

    POST /extension/{extension_id}/ivr/context/

    Добавить ivr context

    Параметры URL

    Имя

    Тип

    extension_id

    string

    Параметры JSON

    Имя

    Тип

    Обязательный

    timeout

    integer

    нет

    allow_any_dial

    boolean

    нет

    inter_digit_timeout

    integer

    нет

    name

    string

    да

    digit_len

    integer

    нет

    Поля ответа

    Имя

    Тип

    name

    string

    inter_digit_timeout

    integer

    timeout

    integer

    allow_any_dial

    boolean

    id

    integer

    digit_len

    integer

    GET /extension/{extension_id}/ivr/context/

    Получить ivr context list

    Параметры URL

    Имя

    Тип

    extension_id

    string

    Поля ответа

    Имя

    Тип

    name

    string

    inter_digit_timeout

    integer

    timeout

    integer

    allow_any_dial

    boolean

    id

    integer

    digit_len

    integer

    ...

    PUT /extension/{extension_id}/ivr/context/{context_id}

    Обновить ivr context

    Параметры URL

    Имя

    Тип

    context_id

    integer

    extension_id

    string

    Параметры JSON

    Имя

    Тип

    Обязательный

    timeout

    integer

    нет

    allow_any_dial

    boolean

    нет

    inter_digit_timeout

    integer

    нет

    name

    string

    нет

    digit_len

    integer

    нет

    Поля ответа

    Имя

    Тип

    name

    string

    inter_digit_timeout

    integer

    timeout

    integer

    allow_any_dial

    boolean

    id

    integer

    digit_len

    integer

    GET /extension/{extension_id}/ivr/context/{context_id}

    Получить ivr context

    Параметры URL

    Имя

    Тип

    context_id

    integer

    extension_id

    string

    Поля ответа

    Имя

    Тип

    name

    string

    inter_digit_timeout

    integer

    timeout

    integer

    allow_any_dial

    boolean

    id

    integer

    digit_len

    integer

    DELETE /extension/{extension_id}/ivr/context/{context_id}

    Удалить ivr context

    Параметры URL

    Имя

    Тип

    context_id

    integer

    extension_id

    string

    ...

    POST /extension/{extension_id}/ivr/context/{context_id}/options/

    Добавить context option

    Параметры URL

    Имя

    Тип

    context_id

    integer

    extension_id

    string

    Параметры JSON

    Имя

    Тип

    Обязательный

    digits

    string

    да

    Поля ответа

    Имя

    Тип

    digits

    object

    GET /extension/{extension_id}/ivr/context/{context_id}/options/

    Получить context options list

    Параметры URL

    Имя

    Тип

    context_id

    integer

    extension_id

    string

    Поля ответа

    Имя

    Тип

    digits

    object

    ...

    DELETE /extension/{extension_id}/ivr/context/{context_id}/options/{option_digits}

    Удалить context option

    Параметры URL

    Имя

    Тип

    context_id

    integer

    extension_id

    string

    option_digits

    string

    ...

    POST /extension/{extension_id}/ivr/context/{context_id}/options/{option_digits}/rules/

    Добавить context rule

    Параметры URL

    Имя

    Тип

    context_id

    integer

    extension_id

    string

    option_digits

    string

    Параметры JSON

    Имя

    Тип

    Обязательный

    transfer_variable

    string

    нет

    call_status

    string

    нет

    play_digits_method

    string

    нет

    caller_id

    string

    нет

    match_variable_value

    string

    нет

    play_digits_variable

    string

    нет

    call_interactive_method

    string

    нет

    record_digits_max

    integer

    нет

    max_rateintegerнет

    match_variable_name

    string

    нет

    caller_id_action

    string

    нет

    context_option

    string

    нет

    silence_time

    integer

    нет

    set_variable_name

    string

    нет

    caller_id_number

    string

    нет

    final

    boolean

    нет

    sound

    integer

    нет

    sound_type

    string

    нет

    call_interactive_url

    string

    нет

    caller_id_name

    string

    нет

    digits

    string

    нет

    name

    string

    нет

    record_digits_variable

    string

    нет

    interval

    integer

    нет

    transfer_dst

    string

    нет

    context

    integer

    нет

    action

    string

    да

    set_variable_value

    string

    нет

    call_interactive_timeout

    integer

    нет

    record_digits_sound

    integer

    нет

    Поля ответа

    Имя

    Тип

    transfer_variable

    string

    call_status

    string

    play_digits_method

    string

    caller_id

    string

    match_variable_value

    string

    play_digits_variable

    string

    call_interactive_method

    string

    id

    integer

    record_digits_max

    string

    match_variable_name

    string

    caller_id_action

    string

    context_option

    string

    silence_time

    integer

    set_variable_name

    string

    caller_id_number

    string

    final

    boolean

    sound

    integer

    sound_type

    string

    call_interactive_url

    string

    caller_id_name

    string

    digits

    string

    name

    string

    record_digits_variable

    string

    interval

    integer

    transfer_dst

    string

    context

    integer

    action

    string

    set_variable_value

    string

    call_interactive_timeout

    integer

    record_digits_sound

    integer

    GET /extension/{extension_id}/ivr/context/{context_id}/options/{option_digits}/rules/

    Получить context rules list

    Параметры URL

    Имя

    Тип

    context_id

    integer

    extension_id

    string

    option_digits

    string

    Поля ответа

    Имя

    Тип

    transfer_variable

    string

    call_status

    string

    play_digits_method

    string

    caller_id

    string

    match_variable_value

    string

    play_digits_variable

    string

    call_interactive_method

    string

    id

    integer

    record_digits_max

    string

    match_variable_name

    string

    caller_id_action

    string

    context_option

    string

    silence_time

    integer

    set_variable_name

    string

    caller_id_number

    string

    final

    boolean

    sound

    integer

    sound_type

    string

    call_interactive_url

    string

    caller_id_name

    string

    digits

    string

    name

    string

    record_digits_variable

    string

    interval

    integer

    transfer_dst

    string

    context

    integer

    action

    string

    set_variable_value

    string

    call_interactive_timeout

    integer

    record_digits_sound

    integer

    ...

    PUT /extension/{extension_id}/ivr/context/{context_id}/options/{option_digits}/rules/order/

    Udpate context option rules order

    Параметры URL

    Имя

    Тип

    context_id

    integer

    extension_id

    string

    option_digits

    string

    Параметры JSON

    Имя

    Тип

    Обязательный

    rules_ids

    array [integer]

    да

    Поля ответа

    Имя

    Тип

    rules_ids

    array [integer]

    GET /extension/{extension_id}/ivr/context/{context_id}/options/{option_digits}/rules/order/

    Получить context option rules order

    Параметры URL

    Имя

    Тип

    context_id

    integer

    extension_id

    string

    option_digits

    string

    Поля ответа

    Имя

    Тип

    rules_ids

    array [integer]

    ...

    PUT /extension/{extension_id}/ivr/context/{context_id}/options/{option_digits}/rules/{rule_id}

    Обновить context rule

    Параметры URL

    Имя

    Тип

    context_id

    integer

    option_digits

    string

    rule_id

    integer

    extension_id

    string

    Параметры JSON

    Имя

    Тип

    Обязательный

    transfer_variable

    string

    нет

    call_status

    string

    нет

    play_digits_method

    string

    нет

    caller_id

    string

    нет

    match_variable_value

    string

    нет

    play_digits_variable

    string

    нет

    call_interactive_method

    string

    нет

    record_digits_max

    integer

    нет

    match_variable_name

    string

    нет

    caller_id_action

    string

    нет

    context_option

    string

    нет

    silence_time

    integer

    нет

    set_variable_name

    string

    нет

    caller_id_number

    string

    нет

    final

    boolean

    нет

    sound

    integer

    нет

    sound_type

    string

    нет

    call_interactive_url

    string

    нет

    caller_id_name

    string

    нет

    digits

    string

    нет

    name

    string

    нет

    record_digits_variable

    string

    нет

    interval

    integer

    нет

    transfer_dst

    string

    нет

    context

    integer

    нет

    action

    string

    нет

    set_variable_value

    string

    нет

    call_interactive_timeout

    integer

    нет

    record_digits_sound

    integer

    нет

    Поля ответа

    Имя

    Тип

    transfer_variable

    string

    call_status

    string

    play_digits_method

    string

    caller_id

    string

    match_variable_value

    string

    play_digits_variable

    string

    call_interactive_method

    string

    id

    integer

    record_digits_max

    string

    match_variable_name

    string

    caller_id_action

    string

    context_option

    string

    silence_time

    integer

    set_variable_name

    string

    caller_id_number

    string

    final

    boolean

    sound

    integer

    sound_type

    string

    call_interactive_url

    string

    caller_id_name

    string

    digits

    string

    name

    string

    record_digits_variable

    string

    interval

    integer

    transfer_dst

    string

    context

    integer

    action

    string

    set_variable_value

    string

    call_interactive_timeout

    integer

    record_digits_sound

    integer

    GET /extension/{extension_id}/ivr/context/{context_id}/options/{option_digits}/rules/{rule_id}

    Получить context rule

    Параметры URL

    Имя

    Тип

    context_id

    integer

    option_digits

    string

    rule_id

    integer

    extension_id

    string

    Поля ответа

    Имя

    Тип

    Имя

    Тип

    transfer_variable

    string

    call_status

    string

    play_digits_method

    string

    caller_id

    string

    match_variable_value

    string

    play_digits_variable

    string

    call_interactive_method

    string

    id

    integer

    record_digits_max

    string

    match_variable_name

    string

    caller_id_action

    string

    context_option

    string

    silence_time

    integer

    set_variable_name

    string

    caller_id_number

    string

    final

    boolean

    sound

    integer

    sound_type

    string

    call_interactive_url

    string

    caller_id_name

    string

    digits

    string

    name

    string

    record_digits_variable

    string

    interval

    integer

    transfer_dst

    string

    context

    integer

    action

    string

    set_variable_value

    string

    call_interactive_timeout

    integer

    record_digits_sound

    integer

    DELETE /extension/{extension_id}/ivr/context/{context_id}/options/{option_digits}/rules/{rule_id}

    Удалить context rule

    Параметры URL

    Имя

    Тип

    context_id

    integer

    option_digits

    string

    rule_id

    integer

    extension_id

    string

    ...

    Теги по теме

    Related Labels