Домены

Создать новый домен

Пример запроса через curl
curl -X POST -H 'Content-Type: application/json' -H 'Authorization: b7d03a6947b217efb6f3ec3bd3504582' -d '{"domain_name":"new.webitel.com","customer_id":"1111","parameters":["domain-parameters=value"],
"variables":["default_language=ru"]}' "https://wss.webitel.com:10022/api/v1/domain"

Запрос должен состоять с заголовка:

HEADERS
Content-Type: application/json 
Authorization: b7d03a6947b217efb6f3ec3bd3504582

и тела:

BODY
{
"domain_name": "new.webitel.com",
"customer_id": "1111",
"parameters": ["domain-parameters=value"],
"variables": ["default_language=ru"]
}

Сервер отправляет ответ:

HEADERS
content-type: text/plain
status: 200 OK
BODY
+OK [new.webitel.com] created !

Удалить домен

Пример запроса через curl
curl -X DELETE -H 'Content-Type: application/json' -H 'Authorization: b7d03a6947b217efb6f3ec3bd3504582' "https://wss.webitel.com:10022/api/v1/domain/new.webitel.com"

Запрос с заголовком:

HEADERS
Content-Type: application/json 
Authorization: b7d03a6947b217efb6f3ec3bd3504582

Ответ сервера:

HEADERS
content-type: text/plain
status: 200 OK
BODY
+OK [new.webitel.com] destroy !

Пользователи

Создать нового пользователя

Приклад запиту через curl
curl -X POST -H 'Content-Type: application/json' -H 'Authorization: b7d03a6947b217efb6f3ec3bd3504582' -d '{"login":"100","password":"100","role":"admin","domain":"new.webitel.com"}' "https://wss.webitel.com:10022/api/v1/account"

Запрос с заголовком:

HEADER
Content-Type: application/json 
Authorization: b7d03a6947b217efb6f3ec3bd3504582

Тело запроса:

BODY
{
"login": "100",
"password": "100",
"role": "admin",
"domain": "new.webitel.com",
"parameters": ["vm-enabled=true", "webitel-extensions=100"],
"variables": ["default_language=ru", "my_var=2"]
}

Ответ сервера:

HEADER
content-type: text/plain
status: 200 OK
BODY
+OK admin::[email protected]

Удалить пользователя

curl -X DELETE -H 'Content-Type: application/json' -H 'Authorization: b7d03a6947b217efb6f3ec3bd3504582' "https://wss.webitel.com:10022/api/v1/account/[email protected]"

Запрос с заголовком:

Content-Type: application/json 
Authorization: b7d03a6947b217efb6f3ec3bd3504582

Ответ сервера:

content-type: text/plain
status: 200 OK
+OK [[email protected]] destroy !

 

Reload XML

Повторно вычитать XML конфигурацию сервера Webitel

curl -X GET -H 'Authorization: b7d03a6947b217efb6f3ec3bd3504582' "https://wss.webitel.com:10022/api/v1/reloadxml"

Запрос с заголовком:

Authorization: b7d03a6947b217efb6f3ec3bd3504582

Ответ сервера:

content-type: text/plain
status: 200 OK
+OK

 

Каналы.

Создать канал.

curl -X POST -H 'Content-Type: application/json' -H 'Authorization: b7d03a6947b217efb6f3ec3bd3504582' -d '{"calledId":"100","callerId":"[email protected]", "auto_answer_param": "sip_h_Call-Info=answer-after=0"}' "https://wss.webitel.com:10022/api/v1/channels"

Запрос должен состоять с заголовка:

Content-Type: application/json 
Authorization: b7d03a6947b217efb6f3ec3bd3504582

и тела:

{
	"calledId": "101",
	"callerId": "[email protected]",
	"auto_answer_param": "sip_h_Call-Info=answer-after=0"
}

Сервер отправляет ответ:

content-type: application/json; charset=utf-8
status: 200 OK
{
	"status":"OK",
	"info":"+OK f6f63726-95e7-48a9-afc0-a0eebd60c4b5\n",
	"more info":"https://docs.webitel.com/display/SDKRU/REST+API+v1#RESTAPIv1-Создатьканал."
}

Изменить состояние канала.

curl -X PUT -H 'Content-Type: application/json' -H 'Authorization: b7d03a6947b217efb6f3ec3bd3504582' -d '{"state":"hold"}' "https://wss.webitel.com:10022/api/v1/channels/f6f63726-95e7-48a9-afc0-a0eebd60c4b5"

В URL нужно указать id активного канала.

Запрос должен состоять с заголовка:

Content-Type: application/json 
Authorization: b7d03a6947b217efb6f3ec3bd3504582

и тела:

{
  "state": "hold"
}

State может быть hold или unhold.

Сервер отправляет ответ:

content-type: application/json; charset=utf-8
status: 200 OK
{
	"status": "OK",
	"info": "+OK Success ",
	"more info": "https://docs.webitel.com/display/SDKRU/REST+API+v1#RESTAPIv1-Изменитьсостояниеканала."
}

Завершить.

curl -X DELETE -H 'Content-Type: application/json' -H 'Authorization: b7d03a6947b217efb6f3ec3bd3504582' "https://wss.webitel.com:10022/api/v1/channels/f6f63726-95e7-48a9-afc0-a0eebd60c4b5"

Запрос должен состоять с заголовка:

Content-Type: application/json 
Authorization: b7d03a6947b217efb6f3ec3bd3504582

Сервер отправляет ответ:

content-type: application/json; charset=utf-8
status: 200 OK
{
	"status":"OK",
	"info":"+OK\n",
	"more info":"https://docs.webitel.com/display/SDKRU/REST+API+v1#RESTAPIv1-Завершить."
}

Завершить все каналы.

curl -X DELETE -H 'Content-Type: application/json' -H 'Authorization: b7d03a6947b217efb6f3ec3bd3504582' "https://wss.webitel.com:10022/api/v1/channels"

Запрос должен состоять с заголовка:

Content-Type: application/json 
Authorization: b7d03a6947b217efb6f3ec3bd3504582

Сервер отправляет ответ:

content-type: application/json; charset=utf-8
status: 200 OK
{
	"status":"OK",
	"info":"+OK hangup all channels with cause MANAGER_REQUEST\n",
	"more info":"https://docs.webitel.com/display/SDKRU/REST+API+v1#RESTAPIv1-Завершитьвсеканалы."
}

Завершить все каналы в домене.

curl -X DELETE -H 'Content-Type: application/json' -H 'Authorization: b7d03a6947b217efb6f3ec3bd3504582' "https://wss.webitel.com:10022/api/v1/channels/DOMAIN_NAME"

Запрос должен состоять с заголовка:

Content-Type: application/json 
Authorization: b7d03a6947b217efb6f3ec3bd3504582

Сервер отправляет ответ:

content-type: application/json; charset=utf-8
status: 200 OK
{
	status: "OK"
	data: "Command send."
}