Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 16 Next »

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

Добавочный может быть адресован номерами разного типа:

  • абсолютный. Имеет вид префикс_домена*префикс_клиента*имя_добавочного или  префикс_клиента*имя_добавочного@имя_домена (например, 00500*0003*100 или 0003*100@somehost.com). Префиксы клиента и домена можно получить из /client/
  • относительный. В пределах одного домена префикс_клиента*имя_добавочного  (например 0003*100) и просто имя_добавочного в пределах одного клиента (например 100)

Вариант префикс_клиента*имя_добавочного является основным используемым при выдаче результатов и приеме параметров.

Будучи созданым, добавочный не может быть переименован: возможно удаление с последующим созданием под другим именем.

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

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

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

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

Значение По

Умолчанию

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

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

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

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

labelstringнетnullDisplay Name добавочного. Отображается на вызываемом терминале при исходящих вызовах (если поддерживается)
client_idintegerда Идентификатор клиента, которому принадлежит добавочный
extension_group_idintegerнетnullИдентификатор группы, которой принадлежит добавочный
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

  • No labels