Warning |
---|
Мы обновили документацию, актуальная версия страницы доступна по ссылке: Правила входящего вызова (/incom_rule/) |
Table of Contents |
---|
Ресурс служит для задания правил обработки входящих вызовов, например, установления переадресации. Правила можно добавлять для добавочных любых типов.
...
Ресурс | Метод | Параметры Пути | Тело запроса | Описание | |
---|---|---|---|---|---|
extension/{extension_id}/incom_rule/ | POST | extension_id (integer) уникальный идентификатор добавочного, может принимать значение @me в случае пользователя типа "экстеншен" | поля IncomingRule 61870459, за исключением IncomingRule.id(генерируется автоматически) | Добавить правило входящего вызова | |
extension/{extension_id}/incom_rule/ | GET | extension_id (integer) уникальный идентификатор добавочного, может принимать значение @me в случае пользователя типа "экстеншен" | Получить список входящих правил для добавочного | ||
extension/{extension_id}/incom_rule/{rule_id} | PUT | extension_id (integer) уникальный идентификатор добавочного, может принимать значение @me в случае пользователя типа "экстеншен" rule_id (integer) идентификатор IncomingRule.id | обновленные поля IncomingRule61870459 , за исключением IncomingRule.id | Обновляет правила входящего вызова | |
extension/{extension_id}/incom_rule/{rule_id} | DELETE | Удаляет правило входящего вызова | |||
extension/{extension_id}/incom_rule/{rule_id} | GET | Получить правило входящего вызова | |||
extension/{extension_id}/incom_rule/order/ | PUT | extension_id (integer) уникальный идентификатор добавочного, может принимать значение @me в случае пользователя типа "экстеншен" | IncomingRuleOrder61870459 | Изменить порядок правил входящего вызова | |
extension/{extension_id}/incom_rule/order/ | GET | extension_id (integer) уникальный идентификатор добавочного, может принимать значение @me в случае пользователя типа "экстеншен" | Получить порядок правил входящего вызова |
Описание структур данных
Правило входящего вызова (IncomingRule) AnchorIncomingRule IncomingRule
IncomingRule | |
IncomingRule |
Имя | Тип | Обязательное | Значение По Умолчанию | Описание | |||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
| да | - | Уникальный идентификатор правила (в пределах добавочного). Поле только для чтения. | |||||||
type | string | да |
| ||||||||
name | string | нет | null | Имя правила, не обязательно уникальное. | |||||||
playfile_sound | integer нет | при type playfile | null | Идентификатор звукового файла для правила типа playfile. | |||||||
transfer_dst | string нет | при type transfer | null | Актуален Обязателен для "type": "transfer". Переадресация на указанный номер. Если нужна переадресация на несколько номеров одновременно (одновременный вызов), то эти номера перечисляются через пробел. | |||||||
|
| нет | 60 | Актуален Обязателен для "type": "transfer" и "type": "cascade". Время в секуднах, в течении которого будет пытаться осуществиться перевод. Если время истекло, а перевода не произошло, то происходит переход к обработке следующего правила | |||||||
cascade_numbers
| arrayнет | при type cascade | [ ] | Актуален Обязателен для "type": "cascade". Задает последовательность подключаемых к вызову номеров и время подключения каждого нового номера в виде массива cascade_number элементов: cascade_number:
Например: Примечание: при каскадном вызове сразу начинает звонить номер с минимальным delay, независимо от его фактического значения. Например: | |||||||
allow_public_transfer | boolean | нет | false | Если переадресация была на внешний номер (не добавочный внутри сети), то указывает, можно ли с него будет делать трансфер звонка. | |||||||
caller_id | string | нет | null | Правило будет работать только для вызовов, источник которых определяется этим полем. Поле заполняется в виде регулярного выражения PCRE. Например: "^(\+|)7812" будет соответствовать всем источникам, начинающимся на "+7812" или "7812" | |||||||
|
| нет | 'any' | определяет метод анализа источника вызова caller_id:
| |||||||
|
| нет | 'any' | Правило отработает только в случае, если статус предыдущего вызова (самого добавочного либо предыдущего правила переадресации) соответствует значению, переданному в этом параметре
| |||||||
extension_call_status |
| нет | 'any' | Правило отработает только в случае, если статус вызова добавочного (если он вызывался) соответствует значению, переданному в этом параметре.
| |||||||
|
| нет | 'any' | Правило отработает лишь при таком статусе добавочного. Принимает одно из значений:
| |||||||
|
| нет | null | Правило отработает при попадании во временной интревал | |||||||
|
| нет | true | Опция позволяет включать/выключать существующие правила | |||||||
|
| нет | true | Не транслировать вызывающему абоненту "early media". Может быть полезно, если происходит серия последовательных переадресаций на разные номера и вызывающий абонент может слышать автоответчик вида "номер не доступен" | |||||||
|
| нет | true | Это правило является последним и последующие обрабатывать не нужно | |||||||
enable_call_screening | boolean | нет | false | Включение функции call_screening для данного правила переадресации. Параметр применим только к правилами типа transfer и cascade. |
...
Имя | Тип | Обязательное | Значение По Умолчанию | Описание | |
---|---|---|---|---|---|
|
| да | Полный список правил в нужном порядке |
...
Примеры использования
Настроим правила для добавочного типа "phone"с идентификатором 54. Для начала убедимся, что на данный момент нет никаких настроек
метод | ресурс | данные | ответ | |
---|---|---|---|---|
GET | /extension/54/incom_rule/ |
| [] |
Переадресация
Настроим отправку всех не отвеченных вызовов на номер 00018966 ("type:" "transfer"). Правило должно будет действовать только с 10:00 до 20:00 и распространяться на вызовы с номеров, начинающихся на "+7812" или "000". Номер 00018966 должен звонить 15 секунд.
...
метод | ресурс | данные | ответ |
---|---|---|---|
POST | /extension/54/incom_rule/ | { "final": false ] | { |
...
Реорганизация правил
Чтобы поменять предыдущие правила местами достаточно выполнить:
...