Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

Hc_cluster_info

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

Аналог команды в CoCon:

/cluster/storage/<CLUSTER>/cluster/<CLUSTER_TYPE>/<CLUSTER_NAME>/info

Метод HTTP-запроса:

POST

Шаблон HTTP-запроса:

http://host:port/commands/cluster_info

Код HTTP-ответа:

При выполнение команды HTTP-терминал может ответить следующими сообщениями:

  • 200 – в случае успеха;
  • 404 – в случае ошибки.

XSD-схема XML-файла c ответом:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:include schemaLocation="common.xsd"/>
    <!-- nodeType-->
    <xs:complexType name="nodeType">
        <xs:attribute name="name" type="xs:string" use="required"/>
    </xs:complexType>
    <!-- propertyType-->
    <xs:complexType name="propertyType">
        <xs:attribute name="name" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string" use="required"/>
    </xs:complexType>
    <!-- clusterType -->
    <xs:complexType name="clusterType">
        <xs:all>
            <xs:element name="nodes">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="node" type="nodeType" minOccurs="0" maxOccurs="unbounded"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
            <xs:element name="properties">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="property" type="propertyType" minOccurs="0" maxOccurs="unbounded"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:all>
        <xs:attribute name="name" type="xs:string" use="required"/>
        <xs:attribute name="role" type="roleType" use="required"/>
        <xs:attribute name="active" type="xs:boolean" use="required"/>
    </xs:complexType>
    <!-- in -->
    <xs:element name="in">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="cluster">
                    <xs:complexType>
                        <xs:attribute name="storage" type="xs:string" use="required"/>
                        <xs:attribute name="role" type="roleType" use="required"/>
                        <xs:attribute name="name" type="xs:string" use="required"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
    <!-- out -->
    <xs:element name="out">
        <xs:complexType>
            <xs:all>
                <xs:element name="cluster" type="clusterType" minOccurs="1" maxOccurs="1"/>
            </xs:all>
        </xs:complexType>
    </xs:element>
</xs:schema>

common.xsd:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
    <!-- dateTimeType -->
    <xs:simpleType name="dateTimeType">
        <xs:restriction base="xs:string">
            <xs:pattern value="\d{4}/\d{2}/\d{2} \d{2}:\d{2}:\d{2}(\.\d{0,3})?"/>
        </xs:restriction>
    </xs:simpleType>
    <!-- roleType -->
    <xs:simpleType name="roleType">
        <xs:restriction base="xs:string">
            <xs:enumeration value="core"/>
            <xs:enumeration value="adapter"/>
            <xs:enumeration value="storage"/>
            <xs:enumeration value="mediator"/>
            <xs:enumeration value="tts"/>
            <xs:enumeration value="bus"/>
            <xs:enumeration value="all"/>
        </xs:restriction>
    </xs:simpleType>
</xs:schema>

Пример:

Запрос: http://192.168.1.21:9999/commands/cluster_info

<?xml version="1.0" encoding="UTF-8"?>
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cluster_info.xsd">
    <cluster name="sip1" role="adapter" storage="ds1" />
</in>

Ответ:

<?xml version="1.0"?>
<out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="../priv/xsd/cluster_info.xsd">
    <cluster name="ds" role="storage" active="true">
        <nodes>
            <node name="ds@naomi"/>
            <node name="ds2@naomi"/>
            <node name="ds4@ryabkov"/>
        </nodes>
        <properties>
            <property name="prop1" value="value1"/>
            <property name="prop2" value="value3"/>
            <property name="prop3" value="[v,v1,v2]"/>
            <property name="asdf" value="asdf"/>
        </properties>
    </cluster>
</out>

Hc_list_of_adapter_clusters

Команда позволяет вывести список кластеров, определенных в системе с ролью adapter определенного типа (SIP, Megaco).

Аналог команды в CoCon:

/cluster/storage/<CLUSTER>/cluster/list adapter

Прямого аналога команды в CoCon нет. Для просмотра можно ввести путь cluster/adapter/ и нажать Tab.

Метод HTTP-запроса:

POST

Шаблон HTTP-запроса:

http://host:port/commands/list_of_adapter_clusters

Код 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">
    <!-- adapterType -->
    <xs:simpleType name="adapterType">
            <xs:restriction base="xs:string">
                    <xs:enumeration value="sip"/>
                    <xs:enumeration value="megaco"/>
                    <xs:enumeration value="all"/>
            </xs:restriction>
    </xs:simpleType>
    <xs:element name="in">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="request">
                    <xs:complexType>
                        <xs:attribute name="type" type="adapterType" use="optional"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
    <xs:element name="out">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="adapters">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="adapter" minOccurs="0" maxOccurs="unbounded">
                                <xs:complexType>
                                    <xs:attribute name="name" type="xs:string" use="required"/>
                                    <xs:attribute name="type" type="adapterType" use="required"/>
                                    <xs:attribute name="active" type="xs:boolean" use="required"/>
                                </xs:complexType>
                            </xs:element>
                        </xs:sequence>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

Пример:

Запрос: http://192.168.1.21:9999/commands/list_of_adapter_clusters

<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="hc_list_of_adapter_clusters.xsd">
    <request type="sip" />
</in>

Ответ:

<?xml version="1.0"?>
<out
    xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="hc_list_of_adapter_clusters.xsd">
    <adapters>
        <adapter name="sip1" type="sip" active="true"/>
    </adapters>
</out>

Hc_get_cluster_properties

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

Аналог команды в CoCon:

/cluster/storage/<CLUSTER>/cluster/<CLUSTER_TYPE>/<CLUSTER_NAME>/info

Метод HTTP-запроса:

POST

Шаблон HTTP-запроса/ответа:

http://host:port/commands/get_cluster_properties

Код HTTP-ответа:

При выполнение команды HTTP-терминал может ответить следующими сообщениями:

  • 200 – в случае успеха;
  • 404 – в случае ошибки.

XSD-схема XML-файла запроса/ответа:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:include schemaLocation="common.xsd"/>
    <!-- nodeType-->
    <xs:complexType name="nodeType">
        <xs:attribute name="name" type="xs:string" use="required"/>
    </xs:complexType>
    <!-- propertyType-->
    <xs:complexType name="propertyType">
        <xs:attribute name="name" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string" use="required"/>
    </xs:complexType>
    <!-- clusterType -->
    <xs:complexType name="clusterType">
        <xs:all>
            <xs:element name="properties">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="property" type="propertyType" minOccurs="0" maxOccurs="unbounded"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:all>
        <xs:attribute name="name" type="xs:string" use="required"/>
        <xs:attribute name="role" type="roleType" use="required"/>
    </xs:complexType>
    <!-- in -->
    <xs:element name="in">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="cluster">
                    <xs:complexType>
                        <xs:attribute name="storage" type="xs:string" use="required"/>
                        <xs:attribute name="role" type="roleType" use="required"/>
                        <xs:attribute name="name" type="xs:string" use="required"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
    <!-- out -->
    <xs:element name="out">
        <xs:complexType>
            <xs:all>
                <xs:element name="cluster" type="clusterType" minOccurs="1" maxOccurs="1"/>
            </xs:all>
        </xs:complexType>
    </xs:element>
</xs:schema>

Пример:

Запрос: http://192.168.1.21:9999/commands/get_cluster_properties

<?xml version="1.0" encoding="UTF-8"?>
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cluster_properties.xsd">
    <cluster name="ds1" role="storage" storage="ds1" />
</in>

Ответ:

<?xml version="1.0"?>
<out
    xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cluster_properties.xsd">
    <cluster name="ds1" role="storage">
        <properties>
            <property name="nodes" value="[ds1@ecss1,ds1@ecss2]"/>
            <property name="isActive" value="true"/>
        </properties>
    </cluster>
</out>

Hc_cluster_set

Команда используется для задания свойств кластера.

Аналог команды в CoCon:

/cluster/storage/<CLUSTER>/cluster/<CLUSTER_TYPE>/<CLUSTER_NAME>/set

Метод HTTP-запроса:

POST

Шаблон HTTP-запроса:

http://host:port/commands/cluster_set

Код HTTP-ответа:

При выполнение команды HTTP-терминал может ответить следующими двумя сообщениями:

  • 201 – в случае успеха;
  • 404 – в случае ошибки.

XSD-схема XML-файла c запросом:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:include schemaLocation="common.xsd"/>
    <!-- propertyType-->
    <xs:complexType name="propertyType">
        <xs:attribute name="name" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string" use="required"/>
    </xs:complexType>
    <!-- in -->
    <xs:element name="in">
        <xs:complexType>
            <xs:all>
                <xs:element name="cluster" minOccurs="1">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="property" type="propertyType" minOccurs="0" maxOccurs="unbounded" />
                        </xs:sequence>
                        <xs:attribute name="storage" type="xs:string" use="required"/>
                        <xs:attribute name="role" type="roleType" use="required"/>
                        <xs:attribute name="name" type="xs:string" use="required"/>
                    </xs:complexType>
                </xs:element>
            </xs:all>
        </xs:complexType>
    </xs:element>
</xs:schema>

Пример:

Запрос: http://192.168.1.21:9999/commands/cluster_set

Параметры:

<?xml version="1.0" encoding="UTF-8"?>
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="hc_cluster_set.xsd">
    <cluster role="storage" storage="ds1" name="ds1">
        <property name="key1" value="value1"/>
        <property name="ilist" value="[1,2,3]"/>
        <property name="clist" value="[1,2,3, [a, b], test]"/>
    </cluster>
</in>

Ответ 403 - команда доступна с правами root:

<?xml version="1.0" encoding="UTF-8"?>
<out
    xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="common_error.xsd">
    <error cmd="cluster_set" reason="no_rights" body="{not_authorized,no_rights}"/>
</out>

Hc_cluster_clear

Команда позволяет удалить свойство кластера (одного или все).

Аналог команды в CoCon:

/cluster/storage/<CLUSTER>/cluster/<CLUSTER_TYPE>/<CLUSTER_NAME>/clean

Метод HTTP-запроса:

POST

Шаблон HTTP-запроса:

http://host:port/commands/cluster_clear

Код HTTP-ответа:

При выполнение команды HTTP-терминал может ответить следующими сообщениями:

  • 204 – в случае успеха;
  • 403,404 – в случае ошибки.

XSD-схема XML-файла c запросом:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
    <xs:include schemaLocation="common.xsd"/>
    <!-- in-->
    <xs:element name="in">
        <xs:complexType>
            <xs:all>
                <xs:element name="cluster">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="property" minOccurs="0" maxOccurs="unbounded">
                                <xs:complexType>
                                    <xs:attribute name="name" type="xs:string" use="required"/>
                                </xs:complexType>
                            </xs:element>
                        </xs:sequence>
                        <xs:attribute name="storage" type="xs:string" use="required"/>
                        <xs:attribute name="name" type="xs:string" use="required"/>
                        <xs:attribute name="role" type="roleType" use="required"/>
                    </xs:complexType>
                </xs:element>
            </xs:all>
        </xs:complexType>
    </xs:element>
</xs:schema>
Если не одно имя свойства не задано, то будут удалены все свойства данного кластера.

Пример:

Запрос: http://192.168.1.21:9999/commands/cluster_clear

<?xml version="1.0" encoding="UTF-8"?>
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="hc_cluster_clear.xsd">
    <cluster role="core" storage="ds1" name="core1">
        <property name="a"/>
        <property name="b"/>
    </cluster>
</in>

Ответ: 403 (только с root-правами)

<?xml version="1.0" encoding="UTF-8"?>
<out
    xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="common_error.xsd">
    <error cmd="cluster_clear" reason="no_rights" body="{not_authorized,no_rights}"/>
</out>

Hc_clusters_list

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

Аналог команды в CoCon:

/cluster/storage/<CLUSTER>/cluster/list

Метод http запроса:

POST

Шаблон http запроса:

http://host:port/commands/list_of_clusters

Код 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="common.xsd"/>
    <xs:element name="in">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="request">
                    <xs:complexType>
                        <xs:attribute name="role" type="roleType" use="optional"/>
                        <xs:attribute name="storage" type="xs:string" use="required"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
    <xs:element name="out">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="clusters">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="cluster" minOccurs="0" maxOccurs="unbounded">
                                <xs:complexType>
                                    <xs:attribute name="name" type="xs:string" use="required"/>
                                    <xs:attribute name="role" type="roleType" use="required"/>
                                    <xs:attribute name="active" type="xs:boolean" use="required"/>
                                </xs:complexType>
                            </xs:element>
                        </xs:sequence>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

Пример:

Запрос: http://192.168.1.21:9999/commands/list_of_clusters

<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="hc_list_of_clusters.xsd">
    <request storage="ds1"/>
</in>

Ответ:

<?xml version="1.0"?>
<out
    xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="hc_list_of_clusters.xsd">
    <clusters>
        <cluster name="ds1" role="storage" active="true"/>
        <cluster name="core1" role="core" active="true"/>
        <cluster name="md1" role="mediator" active="true"/>
        <cluster name="sip1" role="adapter" active="true"/>
        <cluster name=".system_bridge" role="adapter" active="true"/>
        <cluster name=".virtual" role="adapter" active="true"/>
        <cluster name="megaco1" role="adapter" active="false"/>
    </clusters>
</out>

Hc_cluster_properties

Команда возвращает свойства кластера. Hc_cluster_properties возвращает ту же информацию, что и команда Hc_cluster_info, только в другом формате.

Аналог команды в CoCon:

/cluster/storage/<CLUSTER>/cluster/<CLUSTER_TYPE>/<CLUSTER_NAME>/info

Метод http запроса:

POST

Шаблон http запроса/ответа:

http://host:port/commands/get_cluster_properties

Код http ответа:

200 – в случае успеха;
404 – в случае ошибки.

Xsd схема xml файла с запросом/ответом:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:include schemaLocation="common.xsd"/>
    <!-- nodeType-->
    <xs:complexType name="nodeType">
        <xs:attribute name="name" type="xs:string" use="required"/>
    </xs:complexType>
    <!-- propertyType-->
    <xs:complexType name="propertyType">
        <xs:attribute name="name" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string" use="required"/>
    </xs:complexType>
    <!-- clusterType -->
    <xs:complexType name="clusterType">
        <xs:all>
            <xs:element name="properties">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="property" type="propertyType" minOccurs="0" maxOccurs="unbounded"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:all>
        <xs:attribute name="name" type="xs:string" use="required"/>
        <xs:attribute name="role" type="roleType" use="required"/>
    </xs:complexType>
    <!-- in -->
    <xs:element name="in">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="cluster">
                    <xs:complexType>
                        <xs:attribute name="storage" type="xs:string" use="required"/>
                        <xs:attribute name="role" type="roleType" use="required"/>
                        <xs:attribute name="name" type="xs:string" use="required"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
    <!-- out -->
    <xs:element name="out">
        <xs:complexType>
            <xs:all>
                <xs:element name="cluster" type="clusterType" minOccurs="1" maxOccurs="1"/>
            </xs:all>
        </xs:complexType>
    </xs:element>
</xs:schema>

common.xsd: 

См. страницу Hc_cluster_info.

Пример:

Запрос: http://192.168.1.21:9999/commands/get_cluster_properties

<?xml version="1.0" encoding="UTF-8"?>
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cluster_properties.xsd">
    <cluster name="sip1" role="adapter" storage="ds1" />
</in>

Ответ:

<?xml version="1.0"?>
<out
    xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cluster_properties.xsd">
    <cluster name="sip1" role="adapter">
        <properties>
            <property name="nodes" value="[sip1@ecss1,sip1@ecss2]"/>
            <property name="isActive" value="true"/>
        </properties>
    </cluster>
</out>
  • Нет меток