...
На входящий вызов можно создавать несколько правил (максимальное количество определяется ресурсом limits).
Ресурсы
Ресурс | Метод | Параметры Пути | Тело запроса | Описание |
---|---|---|---|---|
extension/{extension_id}/incom_rule/ | POST | extension_id (integer) уникальный идентификатор добавочного, может принимать значение @me в случае пользователя типа "экстеншен" | поля *Правила входящего вызова (/incom_rule/), за исключением 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 | обновленные поля *Правила входящего вызова (/incom_rule/) , за исключением 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 в случае пользователя типа "экстеншен" | *Правила входящего вызова (/incom_rule/) | Изменить порядок правил входящего вызова |
extension/{extension_id}/incom_rule/order/ | GET | extension_id (integer) уникальный идентификатор добавочного, может принимать значение @me в случае пользователя типа "экстеншен" | Получить порядок правил входящего вызова |
Описание структур данных
Правило входящего вызова (IncomingRule) AnchorIncomingRule IncomingRule
IncomingRule | |
IncomingRule |
Имя | Тип | Обязательное | Значение По Умолчанию | Описание | ||||||
---|---|---|---|---|---|---|---|---|---|---|
|
| да | Уникальный идентификатор правила (в пределах добавочного) | |||||||
type | string | да |
| |||||||
name | string | нет | null | Имя правила, не обязательно уникальное. | ||||||
playfile_sound | integer | нет | null | Идентификатор звукового файла для правила типа playfile. | ||||||
transfer_dst | string | нет | null | Актуален для "type": "transfer". Переадресация на указанный номер. Если нужна переадресация на несколько номеров одновременно (одновременный вызов), то эти номера перечисляются через пробел. | ||||||
|
| нет | 60 | Актуален для "type": "transfer" и "type": "cascade". Время в секуднах, в течении которого будет пытаться осуществиться перевод. Если время истекло, а перевода не произошло, то происходит переход к обработке следующего правила | ||||||
cascade_numbers
| array | нет | [ ] | Актуален для "type": "cascade". Задает последовательность подключаемых к вызову номеров и время подключения каждого нового номера в виде массива cascade_number элементов: cascade_number:
Например: Примечание: при каскадном вызове сразу начинает звонить номер с минимальным delay, независимо от его фактического значения. Например: | ||||||
allow_public_transfer | boolean | нет | false | Если переадресация была на внешний номер (не добавочный внутри сети), то указывает, можно ли с него будет делать трансфер звонка. | ||||||
caller_id | string | нет | null | Правило будет работать только для вызовов, источник которых определяется этим полем. Поле заполняется в виде регулярного выражения PCRE. Например: "^(\+|)7812" будет соответствовать всем источникам, начинающимся на "+7812" или "7812" | ||||||
|
| нет | 'any' | определяет метод анализа источника вызова caller_id:
| ||||||
|
| нет | 'any' | Правило отработает только в случае:
| ||||||
|
| нет | 'any' | Правило отработает лишь при таком статусе добавочного. Принимает одно из значений:
| ||||||
|
| нет | null | Правило отработает при попадании во временной интревал | ||||||
|
| нет | true | Опция позволяет включать/выключать существующие правила | ||||||
|
| нет | true | Не транслировать вызывающему абоненту "early media". Может быть полезно, если происходит серия последовательных переадресаций на разные номера и вызывающий абонент может слышать автоответчик вида "номер не доступен" | ||||||
|
| нет | true | Это правило является последним и последующие обрабатывать не нужно | ||||||
enable_call_screening | boolean | нет | false | Включение функции call_screening для данного правила переадресации. Параметр применим только к правилами типа transfer и cascade. |
Последовательность правил (IncomingRuleOrder)
Anchor | ||||
---|---|---|---|---|
|
Имя | Тип | Обязательное | Значение По Умолчанию | Описание |
---|---|---|---|---|
|
| да | Полный список правил в нужном порядке |
Примеры использования
Настроим правила для добавочного типа "phone"с идентификатором 54. Для начала убедимся, что на данный момент нет никаких настроек
метод | ресурс | данные | ответ |
---|---|---|---|
GET | /extension/54/incom_rule/ |
| [] |
Переадресация
Настроим отправку всех не отвеченных вызовов на номер 00018966 ("type:" "transfer"). Правило должно будет действовать только с 10:00 до 20:00 и распространяться на вызовы с номеров, начинающихся на "+7812" или "000". Номер 00018966 должен звонить 15 секунд.
...
Для начала нужно создать (или выбрать из имеющихся) временной интервал. Пусть это будет интервал с идентификатором 32. Создание правила:
метод | ресурс | данные | ответ |
---|---|---|---|
POST | /extension/54/incom_rule/ | { } | { |
Каскадный вызов
Теперь нужно, чтобы после выполнения правил в предыдущем разделе, если ответа так и не последовало, вызов перешел на добавочный 000*099 и через 5 секунд к нему подключился 00026821 и все правило отрабатывало не более 20 секунд
метод | ресурс | данные | ответ |
---|---|---|---|
POST | /extension/54/incom_rule/ | { "final": false ] | { |
Реорганизация правил
Чтобы поменять предыдущие правила местами достаточно выполнить:
метод | ресурс | данные | ответ |
---|---|---|---|
PUT | /extension/54/incom_rule/order/ | { | { |
Похожие разделы
Related Labels |
---|