Versions Compared

Key

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

Добавочный является основной единицей АТС, выполняющая определенный перечень функций в соответствии с заданным типом. Ресурс служит для управления наиболее абстрактрыми свойствами добавочного, для специфичных параметров  добавочных в зависимости от типа есть отдельные разделы (например /phone/ для добавочных типа "телефонный терминал")

...

Есть возможность объединения несколько экстеншенов в группу добавочных номеров.

Table of Contents

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

Добавочный (ExtensionItem)
Anchor
ExtensionItem
ExtensionItem

Имя
Тип
Обязательное

Значение По

Умолчанию

Описание
statusstringнет"blocked"

Статус добавочного:

  • 'active' - активен
  • 'blocked' - заблокирован
namestringда 

префикс_клиента*имя_добавочного или просто имя_добавочного(в этом случчае префикс будет дописан автоматически) Разрядность номера в пределах клиента одинакова и определяется его свойствами

labelstringнетnullDisplay Name добавочного. Отображается на вызываемом терминале при исходящих вызовах (если поддерживается)
client_idintegerда Идентификатор клиента, которому принадлежит добавочный
extension_group_idintegerнетnullИдентификатор группы, которой принадлежит добавочный
type
Anchor
ExtensionItem.type
ExtensionItem.type
stringда 

Тип добавочного. Параметры настройки, зависящие от типа, находятся в соотвествующих разделах:

idintegerда уникальный идентификатор добавочного

Пример

Создание добавчного типа 'phone'

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

{
"status": "active",
"type": "phone",
"name": "100",
"label": "Иванов Петр"
}

{
"status": "active",
"name": "000*100",
"label": "Иванов Петр",
"client_id": 12,
"extension_group_id": null,
"type": "phone",
"id": 190
}

Ресурсы

Клиент

POST /client/{client_id}/extension/

Добавить extension

Параметры URL

Имя

Тип

client_id

string

Параметры JSON

Имя

Тип

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

status

string

нет

label

string

нет

type

string

да

name

string

да

extension_group_id

integer

нет

Поля ответа

Имя

Тип

Имя

Тип

status

string

name

string

label

string

client_id

integer

extension_group_id

integer

type

string

id

integer

GET /client/{client_id}/extension/

Получить extension list

Параметры URL

Имя

Тип

client_id

string

Параметры запроса

Имя

Тип

status

array [string]

name

array [string]

extension_group_id

array [string]

type

array [string]

id

array [string]

Поля ответа

Имя

Тип

status

string

name

string

label

string

client_id

integer

extension_group_id

integer

type

string

id

integer

PUT /client/{client_id}/extension/{extension_id}

Обновить extension

Параметры URL

Имя

Тип

extension_id

integer

client_id

string

Параметры JSON

Имя

Тип

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

status

string

нет

password

string

нет

label

string

нет

Поля ответа

Имя

Тип

status

string

name

string

label

string

client_id

integer

extension_group_id

integer

type

string

id

integer

GET /client/{client_id}/extension/{extension_id}

Получить extension

Параметры URL

Имя

Тип

extension_id

integer

client_id

string

Поля ответа

Имя

Тип

Имя

Тип

status

string

name

string

label

string

client_id

integer

extension_group_id

integer

type

string

id

integer

DELETE /client/{client_id}/extension/{extension_id}

Удалить extension

Параметры URL

Имя

Тип

extension_id

integer

client_id

string

Поля ответа

Имя

Тип

status

string

name

string

label

string

client_id

integer

extension_group_id

integer

type

string

id

integer

 

Группа добавочных

GET /extension_group/{ext_group_id}/extension/

Получить extension list

Параметры URL

Имя

Тип

ext_group_id

string

Параметры запроса

Имя

Тип

status

array [string]

type

array [string]

id

array [string]

name

array [string]

Поля ответа

Имя

Тип

status

string

name

string

label

string

client_id

integer

extension_group_id

integer

type

string

id

integer

...

PUT /extension_group/{ext_group_id}/extension/{extension_id}

Обновить extension

Параметры URL

Имя

Тип

ext_group_id

string

extension_id

integer

Параметры JSON

Имя

Тип

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

status

string

нет

password

string

нет

label

string

нет

Поля ответа

Имя

Тип

Имя

Тип

status

string

name

string

label

string

client_id

integer

extension_group_id

integer

type

string

id

integer

GET /extension_group/{ext_group_id}/extension/{extension_id}

Получить extension

Параметры URL

Имя

Тип

ext_group_id

string

extension_id

integer

Поля ответа

Имя

Тип

status

string

name

string

label

string

client_id

integer

extension_group_id

integer

type

string

id

integer

Добавочный

GET /extension/{extension_id}/extension/

Получить extension

Параметры URL

Имя

Тип

extension_id

string

Поля ответа

Имя

Тип

status

string

name

string

label

string

client_id

integer

extension_group_id

integer

type

string

id

integer