Hc_licence - Управление лицензиями (HTTP-терминал)
Hc_add_licence
Команда добавляет новую лицензию в базу данных ECSS-10.
Аналог команды в CoCon:
cluster/storage/<CLUSTER>/licence/add
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/add_licence
Код HTTP-ответа:
При выполнении команды HTTP-терминал может ответить следующими сообщениями:
- 200 – в случае успеха;
- 404 – в случае ошибки.
XSD-схема XML-файла запроса/ответа:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:include schemaLocation="error.xsd" />
<!-- in-->
<xs:element name="in">
<xs:complexType>
<xs:sequence>
<xs:element name="request">
<xs:complexType>
<xs:attribute name="storage" type="xs:string" use="required"/>
<xs:attribute name="licence" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- out-->
<xs:element name="out">
<xs:complexType>
<xs:choice>
<xs:element name="ok">
<xs:complexType/>
</xs:element>
<xs:element name="cancel">
<xs:complexType/>
</xs:element>
<xs:element name="error" type="errorType" />
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
Примеры:
1. Пример успешного добавления лицензии.
Запрос:
http://192.168.1.21:9999/commands/add_licence
<in
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="add_licence.xsd">
<request storage="ds1" licence="0496c0cf9da7bb3b119f7557324de88c50d5e93276748e4e8717898426700bdb454bdfea280b8b3d2ac880cbfef55e342fa2cc43e1cad53a7e60fbde7536058ae6d327f0bbb9f48dd899e427868f1a7d9313ba739c00a1f64beb0e40166ceeae31deabbba6ec3860ebc99c253397fbadb24d0b25437b34846b4575ad1f6561a8-5ce28b51f87cb09852d0c2c922bdf64f44fe03368480ef99c232f5265560d2142ec9e714c04f9f5e64e713b450b380a6a6e82f3d5ae9a29299a3ed752f3052610cdc66a318d0fb67d3ac77e0bcc07af5aa48b3a270a371a818d8a30ef14d6999db7a2490df4065a647c06951a6c51f11081a27757e28920677b8964428e41289-f5ae26d9fc02611e1ad7f44f0b76303c907844e32ffb24ddea117f9f16126f8442c40d1155db65b429bfb1fe84c76f5b2b9d6ffd3550da890245f0811992300739552f10f8e5e9c745a67646e51ad61174bd3980b28f73ee406e667e70cf937f3c42b6eeebdb4665f33f64506bfe19ce324214cf8ee74f9b45b9ed2e9627077a-e9e6b278b677963cf21f074dc091d05cdaa65888f73034d9d961a77da1fb824bf650c152119570aa1ff4c08181554614164d0d3361505d27dbcb423d5f62523c6dc42a1c77003313606df5004e7664d26be23dd9f407f8a527c1b9f38d5363ffb3233b46444b05da0786c30baa480d847ccbb757685a861d1499724d5108e02a-91500ed1a7da43b16ce8b9595eeda6678830309b64e33e718a594d0b6cd079f38ebcba10dac2bf7e28fed6d6c6fe3df6e1cbd36467163139d5b1e014f2312f0d7619ad9a27a1b2714b3c40164bdb750481c5bfc1399006391e4282d5e8ad9e8c6a334b0a32b5edaefc42bd2a2ccaf1be99c968aa376b11ec48b00292ece8c4ac-062ca6ef60cb14cb31364f5aa15edf9b29f3fd79cfb773c5ed528e104bcc2115b7a9ae70d79240a7f5c26607b61b347b9ee69ce874250f0a796be589da1948c80a709bf0bc68fa5e274dd1689ad2c46b117defb438d86fb71a5844fec124ddd3d3b3cdd83d188243cd7e5f3daa32c023d169fb0e65d7c9ec4bb595904ed3ac1e-a715d496e9d7e895df0b88a24a8ecd747234681d8788165b79091934b4ba009c3c230457fc50f16f533a3d7bda8bee7beb7ede7b08a9ba7dc5c7b59ecfbf1f9c2f43a659f31450d15a6132006e8a23b3fe7bd84ac992eb94e613d9107fb60f60f1a3f3d382e966da31b04b57fd00394f4221fc0d98e21a6c060b097798ca1359-5a23735be4ee3d2779d633b9d0f0d09f5b88fb9fc0ab80424c778d34d2c9dacc9d9577edb2196a56c31961a8f62eca2d7ea92746b0e266d4313a30a2b5f751c7be3feb11fc7601e7103748ecffaa01a09aab364f9182d862dfbbc4b14c79147d06b380cd77f7ab26f130b38553027d03b0acaa89a3e061eeb889d229160b823a-8ab6f5fb350ee901ed127f2591d69e4bb7007673b1e46421321a5355c7b9d8eca8f1ffcfbb09c73cd2ae2a37912159ae58b77d9a006ec5784726b881a5afc45f1ffbdb51fab7bd83fd874d37df8a68032763a078bfee1dbe8588e403b7e0c1f2cc2cabd4ee130977af342614e1b4a0630acead15ec28d191eddf51b4596bb1af-887ea4cabc7ed20f75ed68f2e7fc169d85601365d600c102fddb73436992de4b68d09c687c1ff2ff68809009d3ab6f1b2a4dc652c6eade0fd317dffa42eea0bc65335c4f6459ff4cf55ab9b497cdc9e71e1977287187c0c2c97f7e8ca44be3115c573bafe6814f3f2306a2b7f8fb1b8f059ee49ffceb01cec9cab5b61abd0282"/>
</in>
Код ответа:
200
Ответ:
<?xml version="1.0"?>
<out
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="add_licence.xsd">
<ok/>
</out>
2. Пример неуспешного добавления лицензии.
Запрос: http://192.168.1.21:9999/commands/add_licence
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="add_licence.xsd">
<request storage="ds1" licence="bad-licence-11111111qwertqertqrwtqrterterte111111111"/>
</in>
Код ответа:
404
Ответ:
<?xml version="1.0"?>
<out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="add_licence.xsd">
<error cmd="add_licence" reason="bad_licence"/>
</out>
Hc_current_limits
Команда позволяет просмотреть текущие лицензионные ограничения ECSS-10.
Аналог команды в CoCon:
cluster/storage/<CLUSTER>/licence/current-limits
где
<CLUSTER> - имя кластера хранения долговременных данных (DS).
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/current_limits
Код HTTP-ответа:
При выполнении команды HTTP-терминал может ответить следующими сообщениями:
- 200 – в случае успеха;
- 404 – в случае ошибки.
XSD-схема XML-файла запроса/ответа:
list_licence.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:include schemaLocation="error.xsd" />
<!-- propertyType-->
<xs:complexType name="propertyType">
<xs:attribute name="key" type="xs:string" use="required"/>
<xs:attribute name="value" type="xs:string" use="required"/>
</xs:complexType>
<!-- licenceType-->
<xs:complexType name="licenceType">
<xs:sequence>
<xs:element name="limits">
<xs:complexType>
<xs:sequence>
<xs:element name="property" type="propertyType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="infos">
<xs:complexType>
<xs:sequence>
<xs:element name="property" type="propertyType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="id" type="xs:integer" use="required"/>
<xs:attribute name="active" type="xs:boolean" use="required"/>
<xs:attribute name="hex" type="xs:string" use="required"/>
</xs:complexType>
<!-- in-->
<xs:element name="in">
<xs:complexType>
<xs:sequence>
<xs:element name="request">
<xs:complexType>
<xs:attribute name="storage" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- out-->
<xs:element name="out">
<xs:complexType>
<xs:choice>
<xs:element name="licences">
<xs:complexType>
<xs:sequence>
<xs:element name="licence" type="licenceType" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="error" type="errorType"/>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
Ответ включает в себя "одну лицензию" с ID = "-1" и содержит только текущие лицензионные ограничения.
Пример:
Запрос: http://192.168.1.21:9999/commands/current_limits
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="list_licence.xsd">
<request storage="ds1" />
</in>
Код ответа:
200
Ответ:
<?xml version="1.0"?>
<out
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="list_licence.xsd">
<licences>
<licence id="-1" active="true" hex="">
<limits>
<property key="Channels on dialer outgoing calls" value="10"/>
<property key="IVR script's customization enabled (obsolete)" value="true"/>
<property key="Total count of simultaneous records voice calls" value="200"/>
<property key="The mode of 'TSMN backup trunk' work" value="backup"/>
<property key="Concurrent calls on TSMN system (backup)" value="4"/>
<property key="Concurrent calls on TSMN system (active)" value="5"/>
<property key="Active teleconferences" value="26"/>
<property key="Max members of one teleconference" value="199"/>
<property key="Teleconference channels" value="200"/>
<property key="Call center active supervisors" value="10"/>
<property key="Call center active agents" value="100"/>
<property key="Call center operator's capability for look at calls in queue" value="true"/>
<property key="Call center operator's capability for use Intervension SS" value="true"/>
<property key="CDR generation mode(s)" value="basic"/>
<property key="Sorm enabled" value="true"/>
<property key="Channels on SORM mediator" value="20"/>
<property key="Total count of members of the one Meet Me conference" value="40"/>
<property key="Total count of the Meet Me conferences" value="20"/>
<property key="Total count of members of the one chatroom" value="40"/>
<property key="Total count of chat rooms" value="20"/>
<property key="Total count of members of the one add-on conference" value="30"/>
<property key="Total count of Add-on conferences" value="10"/>
<property key="Virtual subscribers limit" value="infinity"/>
<property key="Subscribers limit" value="2000"/>
<property key="System alive time without LPM token (min)" value="1d"/>
<property key="Cluster md1 (mediator) nodes" value="md1@ecss1,md1@ecss2"/>
<property key="Cluster sip1 (adapter) type" value="sip"/>
<property key="Cluster sip1 (adapter) nodes" value="sip1@ecss1,sip1@ecss2"/>
<property key="Cluster megaco1 (adapter) type" value="megaco"/>
<property key="Cluster megaco1 (adapter) nodes" value="megaco1@ecss1,megaco1@ecss2"/>
<property key="Cluster core1 (core) nodes" value="core1@ecss1,core1@ecss2"/>
<property key="Cluster core1 (core) redundancy" value="true"/>
<property key="Cluster core1 (core) max call attempts" value="2000"/>
<property key="Cluster core1 (core) max conversation time, sec" value="86400"/>
<property key="Cluster ds1 (storage) nodes" value="ds1@ecss1,ds1@ecss2"/>
<property key="Cluster bus1 (bus) nodes" value="mycelium1@ecss1,mycelium1@ecss2"/>
</limits>
<infos/>
</licence>
</licences>
</out>
Hc_list_licence
Команда позволяет просмотреть список существующих лицензий в базе данных ECSS-10.
Аналог команды в CoCon:
cluster/storage/<CLUSTER>/licence/list-licence
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/list_licence
Код HTTP-ответа:
При выполнении команды HTTP-терминал может ответить следующими сообщениями:
- 200 – в случае успеха;
- 404 – в случае ошибки.
XSD-схема XML-файла запроса/ответа:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:include schemaLocation="error.xsd" />
<!-- propertyType-->
<xs:complexType name="propertyType">
<xs:attribute name="key" type="xs:string" use="required"/>
<xs:attribute name="value" type="xs:string" use="required"/>
</xs:complexType>
<!-- licenceType-->
<xs:complexType name="licenceType">
<xs:sequence>
<xs:element name="limits">
<xs:complexType>
<xs:sequence>
<xs:element name="property" type="propertyType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="infos">
<xs:complexType>
<xs:sequence>
<xs:element name="property" type="propertyType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="id" type="xs:integer" use="required"/>
<xs:attribute name="active" type="xs:boolean" use="required"/>
<xs:attribute name="hex" type="xs:string" use="required"/>
</xs:complexType>
<!-- in-->
<xs:element name="in">
<xs:complexType>
<xs:sequence>
<xs:element name="request">
<xs:complexType>
<xs:attribute name="storage" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- out-->
<xs:element name="out">
<xs:complexType>
<xs:choice>
<xs:element name="licences">
<xs:complexType>
<xs:sequence>
<xs:element name="licence" type="licenceType" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="error" type="errorType"/>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
Каждая лицензия включает в себя ограничения (limits) и информацию об администраторе,
который сгенерировал лицензию.
Возможны следующие ограничения:
Таблица 1. Описание общих параметров лицензии
| Параметр | Описание |
|---|---|
| SSW ID | Идентификатор программного коммутатора SSW |
| Description | Описание владельца лицензии |
| Creation date | Дата создания лицензии |
| Expiration date (UTC) | Дата окончания срока действия лицензии |
| Upper version | Верхняя версия релиза (по умолчанию = infinity) |
| Author | Автор лицензии |
| Author IP | Сетевое имя системы автора лицензии |
| Сетевые адреса системы автора лицензии | |
| Encoder user | Логин, используемый для генерации лицензии |
| Encoder host | Сетевое имя системы для генерации лицензии |
| Encoder IP | Сетевые адреса системы для генерации лицензии |
| Active | Активность лицензии |
| Cluster bus | Описание кластера Bus |
| name | Имя кластера Bus |
| nodes | Список нод кластера Bus |
| Cluster storage | Описание кластера Storage |
| name | Имя кластера Storage |
| nodes | Список нод кластера Storage |
| Cluster core | Описание кластера Core |
| name | Имя кластера Core |
| nodes | Список нод кластера Core |
| redundancy | Поддержка резервирования |
| max call attempts | Максимальное количество одновременных соединений |
| max conversation time, sec | Максимальная длительность вызова |
| Cluster adapter | Описание кластера адаптера |
| name | Имя кластера адаптера |
| type | Тип кластера адаптера |
| nodes | Список нод кластера адаптера |
| Cluster mediator | Описание кластера Mediator |
| name | Имя кластера Mediator |
| nodes | Список нод кластера Mediator |
| Cluster virtual | Описание виртуального кластера Bridge |
| name | Имя виртуального кластера |
| Cluster virtual | Описание виртуального кластера |
| name | Имя виртуального кластера |
Таблица 2. Описание лицензионных ограничений
| Параметр | Описание |
|---|---|
| TSMN system concurrent calls (active) | Количество одновременных вызовов, отправляющих запрос на сервис TSMN по основному направлению.Каждый вызов, который должен пройти через подсистему TSMN, прежде чем сделать запрос на TSMN занимает одну лицензию tsmn\concurrent_calls и держит её до конца разговора. Если свободных лицензий нет - система не делает запрос на TSMN и сразу делает исходящий вызов. |
| TSMN system concurrent calls (backup) | Количество одновременных вызовов, отправляющих запрос на сервис TSMN по резервному направлению.Каждый вызов, который должен пройти через подсистему TSMN, прежде чем сделать запрос на TSMN занимает одну лицензию tsmn\concurrent_calls и держит её до конца разговора. Если свободных лицензий нет - система не делает запрос на TSMN и сразу делает исходящий вызов. |
| TSMN system backup mode | Режим резервирования TSMN транка. Возможные значения: backup — вызовы на второй транк идут только тогда, когда недоступен первый; load_share — вызовы на оба транка идут одновременно; none — резервирование транка выключено |
| Teleconference active count | Максимальное количество активных конференций селекторной связи. Каждое активное селекторное совещание расходует одну лицензию. |
| Teleconference channels | Количество участников всех конференциях селекторной связи.Каждый участник активного селекторного совещания расходует одну лицензию из общего пула участников селекторных совещаний. При достижении предела по количеству участников во всех селекторных совещаниях новые абоненты к активным селекторным совещаниям подключиться не смогут. |
| Teleconference max members of one teleconference | Данным параметром ограничивается количество участников в рамках одной активной телеконференции. Если достигнуто максимальное количество участников, то система не позволяет добавлять новых участников в телеконференцию. |
| SORM channels on SORM mediator | Количество подключений СОРМ-посредников к доменам ECSS-10. Каждое подключение одного СОРМ-посредника к одному домену использует одну лицензию sorm\channels. При этом, если один СОРМ-посредник подключен двум хостам ecss (в случае кластера) то используется так же 1 лицензия на 1 домен |
| Sorm extractor | Поддерживаемые значения: mfi / norsi / rtknt / techa / none |
| MeetMe total count | Максимальное количество одновременных MeetMe-конференций в системе. Каждая активная MeetMe конференция расходует одну лицензию |
| MeetMe members of the one Meet Me conference | Данным параметром ограничивается количество участников в рамках одной активной MeetMe конференции. Если достигнуто максимальное количество участников, то система не позволяет добавлять новых участников в MeetMe конференцию. |
| IVR script's customization enabled (obsolete) | Возможность ограничивать количество блоков в одном IVR-скрипте, а также список блоков для домена. (По умолчанию в домене не ограничено количество блоков в IVR-скрипте; все блоки доступны) |
| Add-on conferences total count | Максимальное количество одновременных конференций add-on в системе. Каждая активная AddOn конференция расходует одну лицензию. |
| Add-on conferences members of the one add-on conference | Данным параметром ограничивается количество участников в рамках одной активной AddOn конференции. Если достигнуто максимальное количество участников, то система не позволяет добавлять новых участников в AddOn конференцию. |
| Chat rooms total count | Максимальное количество одновременных конференц-комнат. Каждая активная конференц-комната расходует одну лицензию. |
| Chat rooms members of the one chatroom | Данным параметром ограничивается количество участников в рамках одной активной конференц-комнаты. Если достигнуто максимальное количество участников, то система не позволяет добавлять новых участников в конференц-комнату. |
| Call center active agents | Количество операторов Call-центра. Вход в АРМ оператора тратит лицензию на одного оператора. Если один оператор одновременно зашел через несколько Web-вкладок/браузеров под одним пользователем более одного раза, в этом случае все равно расходуется только одна лицензия. |
| Call center active supervisors | Количество супервизоров (старших операторов) Call-центра. Вход в АРМ супервизора тратит лицензию на одного супервизора. Если один супервизор одновременно зашел через несколько Web-вкладок/браузеров под одним пользователем более одного раза, в этом случае все равно расходуется только одна лицензия. Примечание: если один пользователь вошел на одной вкладке как супервизор, на другой как оператор под одним и тем же пользователем - то будет использоваться 1 лицензия оператора, 1 супервизора. |
| Call center operator's capability for look at calls in queue | Функция Call-центра не включена в базовую лицензию и активируются в качестве дополнительных опций. Просмотр вызова в очереди в АРМ оператора (не путать с вызовами в очереди в АРМ супервизора, функционал которого доступен в базовой лицензии). Добавление параметра в лицензию даёт возможность использования данным функционалом операторами Call-центра. Однако есть возможность управлять этим разрешением, давая или не давая возможность использовать их конкретным операторам или доменам целиком. |
| Call center operator's capability for use Intervension SS | Функция Call-центра не включена в базовую лицензию и активируются в качестве дополнительных опций. Поддержка ДВО "Вмешательство" на операторе Call-центра. Добавление параметра в лицензию даёт возможность использования данным функционалом операторами Call-центра. Однако есть возможность управлять этим разрешением, давая или не давая возможность использовать их конкретным операторам или доменам целиком. |
| CDR generation mode(s) | Режим генерации CDR |
| Virtual subscribers limit | Данным параметром ограничивается количество активных виртуальных алиасов во всей системе (всех доменах). Если в системе достигнуто количество активных виртуальных абонентов, то система не позволяет создать новых активных виртуальных абонентов. Для того чтобы создать нового виртуального абонента необходимо одного из текущих виртуальных абонентов сделать неактивным, или удалить. |
| Subscribers limit | Данным параметром ограничивается количество активных алиасов (кроме виртуальных) во всей системе (всех доменах). Если в системе достигнуто количество активных абонентов, то система не позволяет создать новых активных абонентов. При этом можно создать неактивного абонента, и затем (когда появятся свободные лицензии), сделать его активным |
| Total count of simultaneous records voice call | Каждый участник вызова, на котором активирована услуга "запись разговора" и разговор которого записывается - использует одну лицензию "одновременных записей разговора". Лицензия начинает использоваться перед тем, как запустить запись разговора. Если все лицензии заняты, разговор записываться не будет. Замечание: если разговор А - Б, и у обоих участников (А, Б) активирована запись разговора - то на такой вызов будут использоваться 2 лицензии на запись разговора. |
| Channels on dialer outgoing calls | Подсистема автообзвонщика на каждый исходящих вызов использует одну лицензию dialer\channels. Если в системе нет свободных лицензий dialer\channels, то dialer ждет когда они появятся, чтобы совершить новый вызов |
| Support antifraud system | Поддерживаемые значения: custom / none |
| System alive time without LPM token (min) | Время, в течение которого ECSS-10 будет работать при отсутствии LPM-токена |
Набор параметров может различаться.
Пример:
Запрос:
http://192.168.1.21:9999/commands/list_licence
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="list_licence.xsd">
<request storage="ds1" />
</in>
Код ответа:
200
Ответ:
<?xml version="1.0"?>
<out
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="list_licence.xsd">
<licences>
<licence id="0" active="true" hex="0d7ec7c2a3fdcd9135193913e404fb5dd2034112b64c3c6f3f059c9efc0d33ce0010e7c08be32967fd9fdd9512176a2857a4d5111ee06e888ebee697224f329130fe7103c2193ecc42ebb3bee8a63b90513d58b7bae589e38e35152775b29ab9ebc36d74968ad1a32e1368228388e6851f61129dc1ee864b331825a35eee4583-7653e6ea1a26a120f976de575af99fa31f1a5038e40e8e788468282a87051cfc9db6610b181badd3f98107f4b1ffaf2474efac41021236c719f50a28de960c1656c292b4714a7cd7125686776ae4ab928b40411a23d1a191eb89eb7fa3e3206f6c7bac7fe45a3c2d6b00d109f58f1b034d4e3694c662410811fbe994538b4542-75162f4204c2fedb8b1038c6ceaa3ace605f30fa0bda1d4e75d079213bbdd29659affa8859e314ee1e407740aa51abc6612094b65d8cc5c7df0bbbe1f82db4b8d7564ff7f1d35d159ac07631516cbee52960197d0f962e7aeceb8bd045fb9aecec2ab122981bf7b2f2507318491f8788a9ad7c31853ba1774f6f3cd29611980f-52d8ac5d8f21b3baaa13d85fb05e0d77573bb0b18e2c8186f40b0c0687c88dbe65b1faec7c1f686d8e975c83908cbbfae09afabf37bed1c1fc0e0a6e182de0bd2e239fd8006a9d7cbaa8a9f9e5deefacc4ffdc174d838e76a641d2154ff30bbff36341aec218f87e756098e20576486ee354e54f06cce8639a2d8d948e3a032a-4e699967683c396ba2d34276e83818c749fe386199d0e2d3fbf52467e3c4cfbea85edf4006ae50fab0a1bc5127f8df75b123595c597d509dce22f43773ff2957e85bb773b0aa375ee07f27e036f73328d703c94f76721b6a3be9f3babd20246960abf0aad4a5d0a4dba71437bfe4dc4c0ad5237a2caa8dac6e1efd2ddc31595d-9f9c5e6dff47095eaa14feff59ab2a11f7b376c70474f064d5f1d9269938401883831132554f47e5a063ffdefac0bc23e6420b4f82c3ab78fbc01e41b0c84b6df4452a23e32c33ce56be1d13b79300baf4aec2ba7ec1e90f5d17301eb550b632db3455d46e0f126ac550e6d9448c221cd5d0855e49ff8501f3dc08e4866fa404">
<limits>
<property key="Channels on dialer outgoing calls" value="2"/>
<property key="IVR script's customization enabled (obsolete)" value="false"/>
<property key="Total count of simultaneous records voice calls" value="0"/>
<property key="The mode of 'TSMN backup trunk' work" value="none"/>
<property key="Concurrent calls on TSMN system (backup)" value="0"/>
<property key="Concurrent calls on TSMN system (active)" value="0"/>
<property key="Active teleconferences" value="0"/>
<property key="Max members of one teleconference" value="0"/>
<property key="Teleconference channels" value="3"/>
<property key="Call center active supervisors" value="0"/>
<property key="Call center active agents" value="0"/>
<property key="CDR generation mode(s)" value="basic"/>
<property key="Sorm enabled" value="false"/>
<property key="Total count of members of the one Meet Me conference" value="0"/>
<property key="Total count of the Meet Me conferences" value="0"/>
<property key="Total count of members of the one chatroom" value="16"/>
<property key="Total count of chat rooms" value="30"/>
<property key="Total count of members of the one add-on conference" value="16"/>
<property key="Total count of Add-on conferences" value="30"/>
<property key="Virtual subscribers limit" value="infinity"/>
<property key="Subscribers limit" value="10"/>
<property key="System alive time without LPM token (min)" value="1d"/>
<property key="Cluster md1 (mediator) nodes" value="md1@ecss1"/>
<property key="Cluster sip1 (adapter) type" value="sip"/>
<property key="Cluster sip1 (adapter) nodes" value="sip1@ecss1"/>
<property key="Cluster megaco1 (adapter) type" value="megaco"/>
<property key="Cluster megaco1 (adapter) nodes" value="megaco1@ecss1"/>
<property key="Cluster core1 (core) nodes" value="core1@ecss1"/>
<property key="Cluster core1 (core) redundancy" value="false"/>
<property key="Cluster core1 (core) max call attempts" value="5"/>
<property key="Cluster core1 (core) max conversation time, sec" value="60"/>
<property key="Cluster ds1 (storage) nodes" value="ds1@ecss1"/>
<property key="Cluster bus1 (bus) nodes" value="bus1@ecss1"/>
</limits>
<infos>
<property key="Expiration date (UTC)" value="no limit"/>
<property key="Description" value="Default licence"/>
</infos>
</licence>
<licence id="2" active="true" hex="0496c0cf9da7bb3b119f7557324de88c50d5e93276748e4e8717898426700bdb454bdfea280b8b3d2ac880cbfef55e342fa2cc43e1cad53a7e60fbde7536058ae6d327f0bbb9f48dd899e427868f1a7d9313ba739c00a1f64beb0e40166ceeae31deabbba6ec3860ebc99c253397fbadb24d0b25437b34846b4575ad1f6561a8-5ce28b51f87cb09852d0c2c922bdf64f44fe03368480ef99c232f5265560d2142ec9e714c04f9f5e64e713b450b380a6a6e82f3d5ae9a29299a3ed752f3052610cdc66a318d0fb67d3ac77e0bcc07af5aa48b3a270a371a818d8a30ef14d6999db7a2490df4065a647c06951a6c51f11081a27757e28920677b8964428e41289-f5ae26d9fc02611e1ad7f44f0b76303c907844e32ffb24ddea117f9f16126f8442c40d1155db65b429bfb1fe84c76f5b2b9d6ffd3550da890245f0811992300739552f10f8e5e9c745a67646e51ad61174bd3980b28f73ee406e667e70cf937f3c42b6eeebdb4665f33f64506bfe19ce324214cf8ee74f9b45b9ed2e9627077a-e9e6b278b677963cf21f074dc091d05cdaa65888f73034d9d961a77da1fb824bf650c152119570aa1ff4c08181554614164d0d3361505d27dbcb423d5f62523c6dc42a1c77003313606df5004e7664d26be23dd9f407f8a527c1b9f38d5363ffb3233b46444b05da0786c30baa480d847ccbb757685a861d1499724d5108e02a-91500ed1a7da43b16ce8b9595eeda6678830309b64e33e718a594d0b6cd079f38ebcba10dac2bf7e28fed6d6c6fe3df6e1cbd36467163139d5b1e014f2312f0d7619ad9a27a1b2714b3c40164bdb750481c5bfc1399006391e4282d5e8ad9e8c6a334b0a32b5edaefc42bd2a2ccaf1be99c968aa376b11ec48b00292ece8c4ac-062ca6ef60cb14cb31364f5aa15edf9b29f3fd79cfb773c5ed528e104bcc2115b7a9ae70d79240a7f5c26607b61b347b9ee69ce874250f0a796be589da1948c80a709bf0bc68fa5e274dd1689ad2c46b117defb438d86fb71a5844fec124ddd3d3b3cdd83d188243cd7e5f3daa32c023d169fb0e65d7c9ec4bb595904ed3ac1e-a715d496e9d7e895df0b88a24a8ecd747234681d8788165b79091934b4ba009c3c230457fc50f16f533a3d7bda8bee7beb7ede7b08a9ba7dc5c7b59ecfbf1f9c2f43a659f31450d15a6132006e8a23b3fe7bd84ac992eb94e613d9107fb60f60f1a3f3d382e966da31b04b57fd00394f4221fc0d98e21a6c060b097798ca1359-5a23735be4ee3d2779d633b9d0f0d09f5b88fb9fc0ab80424c778d34d2c9dacc9d9577edb2196a56c31961a8f62eca2d7ea92746b0e266d4313a30a2b5f751c7be3feb11fc7601e7103748ecffaa01a09aab364f9182d862dfbbc4b14c79147d06b380cd77f7ab26f130b38553027d03b0acaa89a3e061eeb889d229160b823a-8ab6f5fb350ee901ed127f2591d69e4bb7007673b1e46421321a5355c7b9d8eca8f1ffcfbb09c73cd2ae2a37912159ae58b77d9a006ec5784726b881a5afc45f1ffbdb51fab7bd83fd874d37df8a68032763a078bfee1dbe8588e403b7e0c1f2cc2cabd4ee130977af342614e1b4a0630acead15ec28d191eddf51b4596bb1af-887ea4cabc7ed20f75ed68f2e7fc169d85601365d600c102fddb73436992de4b68d09c687c1ff2ff68809009d3ab6f1b2a4dc652c6eade0fd317dffa42eea0bc65335c4f6459ff4cf55ab9b497cdc9e71e1977287187c0c2c97f7e8ca44be3115c573bafe6814f3f2306a2b7f8fb1b8f059ee49ffceb01cec9cab5b61abd0282">
<limits>
<property key="Cluster bus1 (bus) nodes" value="mycelium1@ecss1,mycelium1@ecss2"/>
<property key="Cluster ds1 (storage) nodes" value="ds1@ecss1,ds1@ecss2"/>
<property key="Cluster core1 (core) nodes" value="core1@ecss1,core1@ecss2"/>
<property key="Cluster core1 (core) redundancy" value="true"/>
<property key="Cluster core1 (core) max call attempts" value="2000"/>
<property key="Cluster core1 (core) max conversation time, sec" value="86400"/>
<property key="Cluster sip1 (adapter) type" value="sip"/>
<property key="Cluster sip1 (adapter) nodes" value="sip1@ecss1,sip1@ecss2"/>
<property key="Cluster md1 (mediator) nodes" value="md1@ecss1,md1@ecss2"/>
<property key="Subscribers limit" value="2000"/>
<property key="Total count of Add-on conferences" value="10"/>
<property key="Total count of members of the one add-on conference" value="30"/>
<property key="Total count of chat rooms" value="20"/>
<property key="Total count of members of the one chatroom" value="40"/>
<property key="Sorm enabled" value="true"/>
<property key="Channels on SORM mediator" value="20"/>
<property key="Call center operator's capability for look at calls in queue" value="true"/>
<property key="Call center operator's capability for use Intervension SS" value="true"/>
<property key="Call center active agents" value="100"/>
<property key="Call center active supervisors" value="10"/>
<property key="Teleconference channels" value="200"/>
<property key="Max members of one teleconference" value="199"/>
<property key="Active teleconferences" value="26"/>
<property key="Concurrent calls on TSMN system (active)" value="5"/>
<property key="Concurrent calls on TSMN system (backup)" value="4"/>
<property key="The mode of 'TSMN backup trunk' work" value="backup"/>
<property key="Total count of simultaneous records voice calls" value="200"/>
<property key="IVR script's customization enabled (obsolete)" value="true"/>
<property key="Channels on dialer outgoing calls" value="10"/>
</limits>
<infos>
<property key="Encoder IP" value="172.16.0.51, 127.0.0.1"/>
<property key="Encoder host" value="droid"/>
<property key="Encoder user" value="ssw"/>
<property key="Author IP" value="172.16.0.51, 127.0.0.1"/>
<property key="Author" value="ssw"/>
<property key="Expiration date (UTC)" value="31.12.2019 23:59:59"/>
<property key="Creation date" value="02.04.2019 15:45:00"/>
<property key="Description" value="Biysk Test"/>
<property key="SSW ID" value="ECSS 010079"/>
</infos>
</licence>
<licence id="3" active="true" hex="09e595f120c9d375eb45f27ebb33a3fbb6ea8702118e93b1818edb725fe70208caa668e931082f9aca0dc212e7a2187f44fac22d0082f0eaf7d8db01dd69b51ba3864ed9db942d4dee8f3de17e298386fc1d2e4046fd57d0b6c27753c3a5f680d1b3fb62388b0c88de3c69d103b3a0c359b85537b363cbfd53a135f6a08b0792-25cd49bd8c5657e7702c770975e2e6f46e7b1484012d5e50fce39fc36c452ee222551b684474d503c673edd78a50c796d68cd0d06f1ad3ef2f93528fe0e5f473a22082ea6d6bf9ea8cfc570c69ce164cb2fcb233f25ece3119fc4d093e37d34bf3e6ec80a356ef34ecb0f6d408d72d031f29d2e97b06511879862573f94dd65f-1ef6ec6fc0b7fc996a694f70267b2e43cd6d6acd2d1d7b8a9201d54fda4903279d56aa00169d5422bdde8cd74b5621fc8021475f32dbaca65d1184f3c0803eb14b9ee15563ca076e78c0548ca9c72f324e2626ea53648cc4017ca113ea522cc7523c125b9c07ca99196f40f107a806b4e82ce122fa773e53379894722458355e-f025b36b83a71fd327da3642b95a70cc0e42fac469ab3a610e2b0a567df2f2140b7a88ed9d9280cb142374c350f461207f785e73869bd9377d62a3080f832c0da4aad5c653d6e5f8653176779245a6957ab15698f4606f0d8b1622e7032e6db8e9c326bc2c86740cd4e28b5850995782d584fc26fe0cdaca81cd80dd2d1d289f-98ab44b7fcc60b5acffe13cde7f1364a91bb263959581c1de6be29856dccff2217be7f700c66a25d454f7f8ca170298877cec520d08856ba15d09124162034d9d9951da63bc1e9c9f636bd72f88e7cb74e319639d2962262b912bab53691edb83e7d9121881a776ab580d57c99af0339ff70140b09e3f2ed3d23fee08ff0f114-15d16c980b7422e1b14168cda76186108ca3ed8983befe38d3674f32d0eaefce896fb05186107c2334e114ece629530bac377fe5dfd37347113c4b0de7caa84cdd16b29aae4e627fcf0b54c38502dabed553500da70d5a777b9d891f059a96cd4fda388bea1df94bc3187a6355e718ac88549b3bc6d2438f4c8a20dbb0c9e190-2620129bf693bb3831ef74ac382d14428d195efde44b3980d5852a3ad34daef7e76b8cd10d9fec46755bc412fc959bef4954267c23b3d6fea117c77389e558ff08f6b0a82d0b412a26bf681f2ae3a888169ca7492fe99761b4494d7ffecd4e46c95fa64f69a29a6e972032f50c49428b2494c778bd3e976b9dd455543dde7278-449ac65fe58f26949e5d5888e9400a40a2a951f5c67082dd4e8de616c1f6f1980a0bbabf6572063eceb60b7df28c9829d996d2fe3de760f364d9c454ea60d6724452e4066a6dae9c9452160e773ab3fb2b06963d525e064bf6a4d6fdaca6e5cc8d0f1209cc7625d6366efbe160f6323edfd2b62bf4a79265caf1e9cb3e7a307c-640298e0834b2572fe0cc1b6358565150f8a45b96c034aab66e5a4269b0ee9f4b3713d75d4556d3446877952e3b9457108b24b967f35fbd5afd9aeafb583d901743ae97c39c121187297d5fa50a51a56d4820b896a48fc9a063cec9d1ad57dd77db170d49374e682c105d24f11c5f868bf690a5eada939c4e5cb39ccafa7b05a-005f2326df40e72da954748f73e36c1223bf744e5310579256fce54ae3df88accf9f61d5960ded55cb5b8075c10265bcd0fba2186308a2a1c37dc233a16d398416819f073515e831bfcf308359d870e0969f81e8dcb4739ae5023aedb1bd0c21b4ecf5e90961ca482420e18203d7edb52ce10bdc9fe3da268085bc47433d00bf">
<limits>
<property key="Cluster bus1 (bus) nodes" value="mycelium1@ecss1,mycelium1@ecss2"/>
<property key="Cluster ds1 (storage) nodes" value="ds1@ecss1,ds1@ecss2"/>
<property key="Cluster core1 (core) nodes" value="core1@ecss1,core1@ecss2"/>
<property key="Cluster core1 (core) redundancy" value="true"/>
<property key="Cluster core1 (core) max call attempts" value="2000"/>
<property key="Cluster core1 (core) max conversation time, sec" value="86400"/>
<property key="Cluster sip1 (adapter) type" value="sip"/>
<property key="Cluster sip1 (adapter) nodes" value="sip1@ecss1,sip1@ecss2"/>
<property key="Cluster megaco1 (adapter) type" value="megaco"/>
<property key="Cluster megaco1 (adapter) nodes" value="megaco1@ecss1,megaco1@ecss2"/>
<property key="Cluster md1 (mediator) nodes" value="md1@ecss1,md1@ecss2"/>
<property key="Subscribers limit" value="2000"/>
<property key="Total count of Add-on conferences" value="10"/>
<property key="Total count of members of the one add-on conference" value="30"/>
<property key="Total count of chat rooms" value="20"/>
<property key="Total count of members of the one chatroom" value="40"/>
<property key="Total count of the Meet Me conferences" value="20"/>
<property key="Total count of members of the one Meet Me conference" value="40"/>
<property key="Sorm enabled" value="true"/>
<property key="Channels on SORM mediator" value="20"/>
<property key="Call center operator's capability for look at calls in queue" value="true"/>
<property key="Call center operator's capability for use Intervension SS" value="true"/>
<property key="Call center active agents" value="100"/>
<property key="Call center active supervisors" value="10"/>
<property key="Teleconference channels" value="200"/>
<property key="Max members of one teleconference" value="199"/>
<property key="Active teleconferences" value="26"/>
<property key="Concurrent calls on TSMN system (active)" value="5"/>
<property key="Concurrent calls on TSMN system (backup)" value="4"/>
<property key="The mode of 'TSMN backup trunk' work" value="backup"/>
<property key="Total count of simultaneous records voice calls" value="200"/>
<property key="IVR script's customization enabled (obsolete)" value="true"/>
<property key="Channels on dialer outgoing calls" value="10"/>
</limits>
<infos>
<property key="Encoder IP" value="172.16.0.51, 127.0.0.1"/>
<property key="Encoder host" value="droid"/>
<property key="Encoder user" value="ssw"/>
<property key="Author IP" value="172.16.0.51, 127.0.0.1"/>
<property key="Author" value="ssw"/>
<property key="Expiration date (UTC)" value="31.12.2020 23:59:59"/>
<property key="Creation date" value="20.09.2019 06:51:00"/>
<property key="Description" value="Biysk Test"/>
<property key="SSW ID" value="ECSS 010079"/>
</infos>
</licence>
</licences>
</out>
Hc_delete_licence
Команда удаляет лицензию из базы данных ECSS-10.
Аналог команды в CoCon:
cluster/storage/<CLUSTER>/licence/delete
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/delete_licence
Код HTTP-ответа:
При выполнении команды HTTP-терминал может ответить следующими сообщениями:
- 200 – в случае успеха;
- 404 – в случае ошибки.
XSD-схема XML-файла запроса/ответа:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<!-- in-->
<xs:element name="in">
<xs:complexType>
<xs:sequence>
<xs:element name="request">
<xs:complexType>
<xs:attribute name="storage" type="xs:string" use="required"/>
<xs:attribute name="licence_id" type="xs:integer" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- out-->
<xs:element name="out">
<xs:complexType>
<xs:choice>
<xs:element name="ok">
<xs:complexType/>
</xs:element>
<xs:element name="default_licence">
<xs:complexType/>
</xs:element>
<xs:element name="not_found">
<xs:complexType/>
</xs:element>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema
Пример:
1. Пример успешного удаления лицензии.
Запрос: http://192.168.1.21:9999/commands/delete_licence
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="hc_list_of_clusters.xsd">
<request storage="ds1" licence_id="2"/>
</in>
Код ответа:
200
Ответ:
<?xml version="1.0"?>
<out
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="delete_licence.xsd">
<ok/>
</out>
2. Пример неуспешного удаления лицензии.
Запрос: http://192.168.1.21:9999/commands/delete_licence
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="hc_list_of_clusters.xsd">
<request storage="ds1" licence_id="0"/>
</in>
Код ответа:
404
Ответ:
<?xml version="1.0"?>
<out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="delete_licence.xsd">
<default_licence />
</out>
Hc_set_passport
Команда установки паспорта ECSS-10.
Аналог команды в CoCon:
/cluster/storage/<CLUSTER>/licence/set-passport
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/set_passport
Код HTTP-ответа:
- 200 – в случае успеха;
- 404 – в случае ошибки.
XSD-схема XML-файла запроса/ответа:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:include schemaLocation="error.xsd" />
<!-- in-->
<xs:element name="in">
<xs:complexType>
<xs:sequence>
<xs:element name="request">
<xs:complexType>
<xs:attribute name="storage" type="xs:string" use="required"/>
<xs:attribute name="passport" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- out-->
<xs:element name="out">
<xs:complexType>
<xs:choice>
<xs:element name="ok">
<xs:complexType/>
</xs:element>
<xs:element name="error" type="errorType" />
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema
Пример 1:
Успешное добавление паспорта.
Запрос:
http://192.168.1.21:9999/commands/set_passport
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="set_passport.xsd">
<request storage="ds1" passport="ddf96ecce552efcee2cdc365f4e6a4bd8a53ec9e971acf07c934f8a26dd9eafe8f2ba4dd651a493d5c9a863ec5ae46cc62ad27db98cc47a0b29f33b958c8f5ed8dde34eb4c4febb9a58e1e0ec5d9f687a754daa0959a0a09855a575fea14e5b87b7c090ed6ab1b415e0f1167996c07f0b7ed7d4508bcabca79e382a7bad37088-8a8a870e066bf835f9ce91ff674b981fd474b1cc5c58cff78dc4ebbf0edba72a4d2e760cab93719cfd1426df8e6fec9c0573f9474b50a3d22ac13869cc16c98744d57ad845f34fb708ed81e7b4bc76a969905280d336679819bb191898eebeb1b99945aa74a17dbed1c239f62c3d543e650f9b48379af8bc3a1ea821a5267a63-3d3011f1296f43413fd0e5dfcdd01dd7968211db6bfdb19cd899e06463fa298d564a7f0a4f6dc61c83f191c117e5d1ab7696e81600ea03ee5a455506ca8cba3190029600b19830d81a5fba30ad42ef21c90f27b1912fb8e3ca5699a0cefc107000a15b5d37ada58ce78192368c9d03ea9845ef24e23ff07bf7e450fc566b8486-7c7ba7df1e45701e86d79532adcb7e282e4177055550e82924ffd7ebc9df2e90c591d5282b22b71ed3b8b8156bf9c36fe537031734437c2c24577ab7405dfa825c8557e13f03fc400d08de239477b2cbbe4bdb5c01de358cf4c26f9e29f32b22ea2f4d5b3e6e8d882358a8e300805982762e04d356c27f787949234fcf110660"/>
</in>
Код ответа:
200
Ответ:
<?xml version="1.0"?>
<out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="set_passport.xsd">
<ok/>
</out>
Пример 2:
Неуспешное добавление паспорта.
Запрос: http://192.168.1.21:9999/commands/set_passport
<in
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="set_passport.xsd">
<request storage="ds1" passport="bad-passport-fffffffffff23423251235127486353ffff"/>
</in>
Код ответа:
404
Ответ:
<?xml version="1.0" encoding="UTF-8"?>
<out
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="set_passport.xsd">
<error cmd="set_passport" reason="bad_token_info"/>
</out>
Hc_show_passport
Команда позволяет просмотреть паспорт системы ECSS-10.
Аналог команды в CoCon:
/cluster/storage/<CLUSTER>/licence/show-passport
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/show_passport
Код HTTP-ответа:
- 200 – в случае успеха;
- 404 – в случае ошибки.
XSD-схема XML-файла запроса/ответа:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
<!-- propertyType-->
<xs:complexType name="propertyType">
<xs:attribute name="key" type="xs:string" use="required"/>
<xs:attribute name="value" type="xs:string" use="required"/>
</xs:complexType>
<!-- passportType-->
<xs:complexType name="passportType">
<xs:sequence>
<xs:element name="property" type="propertyType" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="ssw_id" type="xs:string" use="optional"/>
<xs:attribute name="description" type="xs:string" use="optional"/>
<xs:attribute name="create_date" type="xs:string" use="optional"/>
<xs:attribute name="author" type="xs:string" use="optional"/>
<xs:attribute name="author_host" type="xs:string" use="optional"/>
<xs:attribute name="author_ip" type="xs:string" use="optional"/>
<xs:attribute name="hex" type="xs:string" use="required"/>
</xs:complexType>
<!-- in-->
<xs:element name="in">
<xs:complexType>
<xs:sequence>
<xs:element name="request">
<xs:complexType>
<xs:attribute name="storage" type="xs:string" use="required"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<!-- out-->
<xs:element name="out">
<xs:complexType>
<xs:sequence>
<xs:element name="passport" type="passportType" minOccurs="0" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
В паспорте доступна следующая информации:
- SSW ID - уникальный идентификатор версии системы ECSS-10;
- Description - описание лицензии;
- Creation date - дата создания лицензии;
- Author - автор лицензии;
- Author host - имя хоста, на котором была сгенерирована лицензия;
- Author IP - список IP-адресов (через запятую) машины, на которой была сгенерирована лицензия;
- Hex - паспорт ECSS-10 в HEX-кодировке.
Каждый из вышеописанных параметров кроме «Hex» может как присутствовать, так и отсутствовать.
Пример:
Запрос:
http://192.168.1.21:9999/commands/show_passport
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="show_passport.xsd">
<request storage="ds1" />
</in>
Код ответа:
200
Ответ:
<?xml version="1.0"?>
<out
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="show_passport.xsd">
<passport author_ip="172.16.0.51, 127.0.0.1" author="ssw" create_date="03.10.2014" description="Biysk Test" ssw_id="ECSS 010079" hex="ddf96ecce552efcee2cdc365f4e6a4bd8a53ec9e971acf07c934f8a26dd9eafe8f2ba4dd651a493d5c9a863ec5ae46cc62ad27db98cc47a0b29f33b958c8f5ed8dde34eb4c4febb9a58e1e0ec5d9f687a754daa0959a0a09855a575fea14e5b87b7c090ed6ab1b415e0f1167996c07f0b7ed7d4508bcabca79e382a7bad37088-8a8a870e066bf835f9ce91ff674b981fd474b1cc5c58cff78dc4ebbf0edba72a4d2e760cab93719cfd1426df8e6fec9c0573f9474b50a3d22ac13869cc16c98744d57ad845f34fb708ed81e7b4bc76a969905280d336679819bb191898eebeb1b99945aa74a17dbed1c239f62c3d543e650f9b48379af8bc3a1ea821a5267a63-3d3011f1296f43413fd0e5dfcdd01dd7968211db6bfdb19cd899e06463fa298d564a7f0a4f6dc61c83f191c117e5d1ab7696e81600ea03ee5a455506ca8cba3190029600b19830d81a5fba30ad42ef21c90f27b1912fb8e3ca5699a0cefc107000a15b5d37ada58ce78192368c9d03ea9845ef24e23ff07bf7e450fc566b8486-7c7ba7df1e45701e86d79532adcb7e282e4177055550e82924ffd7ebc9df2e90c591d5282b22b71ed3b8b8156bf9c36fe537031734437c2c24577ab7405dfa825c8557e13f03fc400d08de239477b2cbbe4bdb5c01de358cf4c26f9e29f32b22ea2f4d5b3e6e8d882358a8e300805982762e04d356c27f787949234fcf11066f">
<property key="encoder_create_date" value="{{2014,10,3},{6,2,55}}"/>
<property key="encoder_ip" value="[{172,16,0,51},{127,0,0,1}]"/>
<property key="encoder_hostname" value=""droid""/>
<property key="encoder_user" value=""ssw""/>
</passport>
</out>