esg dashboards

Обзор

Предоставляет информацию с экземпляров роли esg.

Запросы

HTTP verb Endpoint Описание

GET

/rest/v1/master/logicalroles/esg/dashboards

Получение списка доступных дашбордов

GET

/rest/v1/master/logicalroles/esg/dashboards/info

Получение полной информации о ролях esg

GET

/rest/v1/master/logicalroles/esg/dashboards/count

Получение суммарных количественных показателей с ролей esg

GET

/rest/v1/master/logicalroles/esg/dashboards/sites

Получение суммарных количественных показателей с ролей esg по сайтам

Общие скоуп-параметры запросов

Приведенные параметры используются в URL (?param=value) для ограничения скоупа применения запроса (состава экземпляров ролей, к которым применяется запрос). Все они являются опциональными и могут отсутствовать. Имеет смысл указывать не более одного из них, либо не указывать ни одного.

Table 1. Возможные параметры
Имя Тип Описание

site

str

Имя сайта из конфигурации.

Например SITE8.

sites

array<str>

Список имен сайтов, разделенных запятыми.

Например SITE1,SITE3.

server

str

Алиас сервера. Может быть IP адресом, номером или полным именем сервера из конфигурации.

Например 192.168.0.12 или 372.

servers

array<str>

Список алиасов серверов, разделенных запятыми.

Например 192.168.0.12,372,server05.


Получение списка доступных дашбордов

Запрос

Пример запроса
GET /rest/v1/master/logicalroles/esg/dashboards HTTP/1.1

Ответ

Возвращает список дашбордов роли esg и относительных URL для их получения.

Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

[
  {
    "name": "info",
    "_links": {
      "self": {
        "href": "/rest/v1/master/logicalroles/esg/dashboards/info",
        "params": []
      }
    }
  },
  {
    "name": "count",
    "_links": {
      "self": {
        "href": "/rest/v1/master/logicalroles/esg/dashboards/count",
        "params": []
      }
    }
  },
  {
    "name": "sites",
    "_links": {
      "self": {
        "href": "/rest/v1/master/logicalroles/esg/dashboards/sites",
        "params": []
      }
    }
  }
]

Получение полной информации о ролях esg

Предоставляет информацию обо всех экземплярах роли esg, входящих в скоуп запроса, указанный скоуп-параметрами в URL.

Запрос

URL может содержать дополнительные скоуп-параметры.

Table 2. Параметры запроса
Имя Тип Описание

regs

bool

Показывать активные учетные записи провайдеров и их состояния регистрации.

code

str

Код провайдера. Используется совместно с regs. Ограничивает выдачу аккаунтов. Предоставляет информацию только об учетной записи провайдера с указанным кодом.

Пример запроса
GET /rest/v1/master/logicalroles/esg/dashboards/info HTTP/1.1

Ответ

Возвращает объект с информацией о составе сайтов, каждый из которых содержит состав серверов/нод, каждый из которых содержит экземпляр роли esg.

Table 3. Структура объекта результата
Уровень Поле Описание

root

dlgcount

Количество диалогов, обслуживаемых всеми экземлярами ролей esg, входящих в скоуп запроса.

root

callcount

Количество плечей диалогов, обслуживаемых экземлярами ролей esg, входящих в скоуп запроса.

root

sites

Список сайтов, содержащих согласно конфигурации экземпляры ролей esg.

site

site

Название сайта.

site

dlgcount

Количество диалогов, обслуживаемых экземлярами ролей esg, входящих в скоуп запроса на этом сайте.

site

callcount

Количество плечей диалогов, обслуживаемых экземлярами ролей esg, входящих в скоуп запроса на этом сайте.

server

srvidx

Числовой идентификатор этой ноды (roleid из конфигурации).

server

node

Название этой ноды.

server

online

Признак доступности этой ноды с веб-сервера, исполняющего API-запрос.

server

addr

IP-адрес роли esg в этой ноде. Указывается только если нода доступна.

server

dlgcount

Количество диалогов, обслуживаемых экземляром роли esg на этой ноде. Указывается для доступных нод.

server

callcount

Количество плечей диалогов, обслуживаемых экземляром роли esg на этой ноде. Указывается для доступных нод.

server

regs

Список учетных записей, обслуживаемых экземпляром роли esg на этой ноде. Применяется для параметра запроса reg=true. Указывается для доступных нод.

reg

code

Код учетной записи провайдера.

reg

d

Внутренний домен кластера, которому принадлежит эта учетная запись провайдера.

reg

user

Username учетной записи провайдера.

reg

domain

Domain учетной записи провайдера, отправляемый вовне.

reg

port

Порт SIP-сервера, к которому подключается учетная запись провайдера.

reg

proto

Используемый протокол учетной записи провайдера. Возможные значения: "udp", "tcp", “tls”.

reg

addrs

Список адресов SIP-сервера(-ов), к которому(-ым) подключается учетная запись провайдера.

reg

regstate

reg

pingstate

reg

lastresponse

Список заголовков последнего ответа SIP-сервера на отправленный запрос REGISTER.

reg

onlinetrunkcount

Количество активных используемых транков.

Table 4. Состояния регистрации (regstate)
Состояние Описание

disabled

Учетная запись работает без регистрации.

registered

Учетная запись зарегистрирована.

wait_result

Учетная запись в процессе регистрации.

retry

Учетная запись в ожидании следующей попытки регистрации.

detached

Учетная запись в процессе отключения.

Table 5. Состояния подключения (pingstate)
Состояние Описание

disabled

Учетная запись работает без проверки подключения.

ok

Последняя проверка подключения успешно пройдена.

error

Последняя проверка подключения завершилась неудачей.

Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
  "callcount": 0,
  "dlgcount": 0,
  "sites": [
    {
      "site": "SITE1",
      "callcount": 0,
      "dlgcount": 0,
      "servers": [
        {
          "srvidx": 1,
          "node": "site1_h1@192.168.0.12",
          "addr": "192.168.0.12",
          "online": true,
          "callcount": 0,
          "dlgcount": 0,
          "domains": [],
          "regs": [
            {
              "code": "ceceron",
              "d": "test.rootdomain.ru",
              "user": "sip4",
              "domain": "test.ceceron.ru",
              "port": 5060,
              "proto": "udp",
              "addrs": [
                "test.ceceron.ru",
                "192.168.0.84"
              ],
              "regstate": "registered",
              "pingstate": "disabled",
              "last_response": [
                "SIP/2.0 200 OK",
                "Via: SIP/2.0/UDP 192.168.0.12:5080;rport=5080;received=192.168.0.12;branch=z9hG4bK4d9MzT-4TRPTu",
                "From: <sip:sip4@test.ceceron.ru>;tag=4WUgbJ",
                "To: <sip:sip4@test.ceceron.ru>;tag=rB2-00A-TTsq",
                "Call-ID: avLICRwnMr6mjNV7HkWwcKX6RJ0",
                "CSeq: 199253986 REGISTER",
                "Max-Forwards: 70",
                "Content-Length: 0",
                "Contact: <sip:sip4@192.168.0.12:5080>;expires=120",
                "Contact: <sip:sip4@192.168.0.204:5062>;expires=313",
                "Supported: path",
                "Allow: REGISTER,INVITE,ACK,CANCEL,BYE,REFER,NOTIFY,OPTIONS,INFO,SUBSCRIBE,MESSAGE,UPDATE",
                "Date: Tue, 05 Nov 2019 11:41:09 GMT",
                "Path: <sip:r_Q37WFY3@192.168.0.84:5060;transport=tcp;lr>"
              ],
              "onlinetrunkcount": 0
            },
            {
              "code": "rtest",
              "d": "test.rootdomain.ru",
              "user": "sip8",
              "domain": "test.rootdomain.ru",
              "port": 5060,
              "proto": "tcp",
              "addrs": [
                "test.rootdomain.ru",
                "192.168.0.12"
              ],
              "regstate": "registered",
              "pingstate": "ok",
              "last_response": [
                "SIP/2.0 200 OK",
                "Via: SIP/2.0/TCP 192.168.0.12:5080;rport=4005;received=192.168.0.12;branch=z9hG4bK3aut66-2ymB9o",
                "From: <sip:sip8@test.rootdomain.ru>;tag=FtT6WP",
                "To: <sip:sip8@test.rootdomain.ru>;tag=rB2-002-Qj4c",
                "Call-ID: 5DSlqsHIBWDPKaesn2JKzTjhRXA",
                "CSeq: 199349124 REGISTER",
                "Max-Forwards: 70",
                "Content-Length: 0",
                "Contact: <sip:sip8@192.168.0.12:5080;transport=TCP>;expires=34",
                "Supported: path",
                "Allow: REGISTER,INVITE,ACK,CANCEL,BYE,REFER,NOTIFY,OPTIONS,INFO,SUBSCRIBE,MESSAGE,UPDATE",
                "Date: Tue, 05 Nov 2019 11:42:08 GMT",
                "Path: <sip:r_Q1CJaRf@192.168.0.12:5060;transport=tcp;lr>"
                ],
              "onlinetrunkcount": 0
            }
          ]
        },
        {
          "srvidx": 32,
          "node": "site1_h11@192.168.0.12",
          "online": false
        }
      ]
    },
    {
      "site": "SITE2",
      "callcount": 0,
      "dlgcount": 0,
      "servers": [
        {
          "srvidx": 101,
          "node": "site2_h1@192.168.0.12",
          "online": false
        }
      ]
    }
  ]
}

Получение суммарных количественных показателей с ролей esg

Предоставляет информацию о суммарном количестве диалогов и плечей диалогов со всех экземплярах роли esg, входящих в скоуп запроса, указанный скоуп-параметрами в URL.

Возвращает ограниченный набор данных из запроса Получение полной информации о ролях esg.

Запрос

URL может содержать дополнительные скоуп-параметры.

Пример запроса
GET /rest/v1/master/master/logicalroles/esg/dashboards/count HTTP/1.1

Ответ

Table 6. Структура объекта результата
Поле Описание

dlgcount

Количество диалогов, обслуживаемых всеми экземлярами ролей esg, входящих в скоуп запроса.

callcount

Количество плечей диалогов, обслуживаемых экземлярами ролей esg, входящих в скоуп запроса.

Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
  "callcount": 24,
  "dlgcount": 12
}

Получение суммарных количественных показателей с ролей esg по сайтам

Предоставляет информацию о суммарном количестве диалогов и плечей диалогов со всех экземплярах роли esg, входящих в скоуп запроса, указанный скоуп-параметрами в URL. Возвращает данные в разрезе по сайтам и общие суммы.

Возвращает ограниченный набор данных из запроса Получение полной информации о ролях esg.

Запрос

URL может содержать дополнительные скоуп-параметры.

Запрос

Пример запроса
GET /rest/v1/master/logicalroles/esg/dashboards/sites HTTP/1.1

Ответ

Table 7. Структура объекта результата
Уровень Поле Описание

root

dlgcount

Количество диалогов, обслуживаемых всеми экземлярами ролей esg, входящих в скоуп запроса.

root

callcount

Количество плечей диалогов, обслуживаемых экземлярами ролей esg, входящих в скоуп запроса.

root

sites

Список сайтов, содержащих согласно конфигурации экземпляры ролей esg.

site

site

Название сайта.

site

dlgcount

Количество диалогов, обслуживаемых экземлярами ролей esg, входящих в скоуп запроса на этом сайте.

site

callcount

Количество плечей диалогов, обслуживаемых экземлярами ролей esg, входящих в скоуп запроса на этом сайте.

Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
  "dlgcount": 24,
  "callcount": 12,
  "sites": [
    {
      "site": "SITE3",
      "callcount": 2,
      "dlgcount": 1
    },
    {
      "site": "SITE2",
      "callcount": 6,
      "dlgcount": 3
    },
    {
      "site": "SITE1",
      "callcount": 16,
      "dlgcount": 8
    }
  ]
}

См. также