Hc_ alias_profile_list

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

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

domain/<DOMAIN>/alias/profiles/list

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

POST

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

http://host:port/commands/alias_profile_list

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

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

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

Описание, общих для профилей алиасов, типов (alias_profile_common.xsd):

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
    <!-- propertyType-->
    <xs:complexType name="propertyType">
        <xs:attribute name="name" type="xs:string" use="required"/>
        <!-- attribute type used only to backward compatability with alias info.
             It's always equals with "profile"-->
        <xs:attribute name="type" type="xs:string" use="required"/>
        <xs:attribute name="value" type="xs:string" use="required"/>
    </xs:complexType>
    <!-- propertyNameType-->
    <xs:complexType name="propertyNameType">
        <xs:attribute name="name" type="xs:string" use="required"/>
    </xs:complexType>
    <!-- aliasProfileType-->
    <xs:complexType name="aliasProfileType">
        <xs:sequence>
            <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:sequence>
        <xs:attribute name="domain" type="xs:string" use="required"/>
        <xs:attribute name="name" type="xs:string" use="required"/>
        <xs:attribute name="description" type="xs:string" use="optional"/>
    </xs:complexType>
</xs:schema>
CODE

alias_profile_list.xsd :

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:include schemaLocation="alias_profile_common.xsd"/>
    <!-- in-->
    <xs:element name="in">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="request">
                    <xs:complexType>
                        <xs:attribute name="domain" 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="profiles">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="profile" type="aliasProfileType" minOccurs="0" maxOccurs="unbounded"/>
                        </xs:sequence>
                    </xs:complexType>
                </xs:element>
            </xs:all>
        </xs:complexType>
    </xs:element>
</xs:schema>
CODE

Пример :

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

<?xml version="1.0" encoding="UTF-8"?>
<in
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="alias_profile_list.xsd">
    <request domain="biysk.local"/>
</in>
CODE

Ответ:

200

<?xml version="1.0"?>
<out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="alias_profile_list.xsd">
    <profiles>
        <profile domain="biysk.local" name="user_default" description="Default user profile">
            <properties/>
        </profile>
    </profiles>
</out>
CODE

Hc_ alias_profile_declare

Команда создает новый профиль алиаса. Если не получается создать профиль, возвращает ошибку.

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

domain/<DOMAIN>/alias/profiles/declare

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

POST

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

http://host:port/commands/alias_profile_declare

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

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

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

alias_profile_common.xsd: Hc_alias_profile_list.

alias_profile_declare.xsd:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:include schemaLocation="alias_profile_common.xsd"/>
    <!-- in-->
    <xs:element name="in">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="request">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="profile" type="aliasProfileType" minOccurs="1" maxOccurs="1"/>
                        </xs:sequence>
                        <xs:attribute name="storage" type="xs:string" use="optional"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>
CODE

Пример 1:

http://192.168.1.21:9999/commands/alias_profile_declare

Запрос:

<?xml version="1.0" encoding="UTF-8"?>
<in
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="alias_profile_declare.xsd">
    <request storage="ds1">
        <profile name="front-office" description="for managers" domain="biysk.local">
            <properties/>
        </profile>
    </request>
</in>
XML

Ответ:
201

Ответ 2 (ошибка):404

<?xml version="1.0" encoding="UTF-8"?>
<out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="common_error.xsd">
    <error cmd="alias_profile_declare" reason="error" body="{error,"Declare profile error: {already_exists,{\"biysk.local\",\"front-office\"}}"}"/>
</out>
CODE

Hc_ alias_profile_remove

Команда удаляет профили алиасов из определенного домена.

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

domain/<DOMAIN>/alias/profiles/remove

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

POST

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

http://host:port/commands/alias_profile_remove

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

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

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

alias_profile_common.xsd: Hc_alias_profile_list.

alias_profile_remove.xsd:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:include schemaLocation="alias_profile_common.xsd"/>
    <!-- in-->
    <xs:element name="in">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="request">
                    <xs:complexType>
                        <xs:all>
                            <xs:element name="profiles">
                                <xs:complexType>
                                    <xs:sequence>
                                        <xs:element name="profile" type="aliasProfileType" minOccurs="1" maxOccurs="unbounded"/>
                                    </xs:sequence>
                                </xs:complexType>
                            </xs:element>
                        </xs:all>
                        <xs:attribute name="storage" type="xs:string" use="optional"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>
CODE

Пример:

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

<?xml version="1.0" encoding="UTF-8"?>
<in
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="alias_profile_remove.xsd">
    <request storage="ds1">
        <profiles>
            <profile name="front-office" domain="biysk.local">
                <properties/>
            </profile>
        </profiles>
    </request>
</in>
CODE

Ответ:

204

Hc_ alias_profile_info

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

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

domain/<DOMAIN>/alias/profiles/info

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

POST

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

http://host:port/commands/alias_profile_info

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

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

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

alias_profile_common.xsd: Hc_alias_profile_list.

alias_profile_info.xsd:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:include schemaLocation="alias_profile_common.xsd"/>
    <!-- in-->
    <xs:element name="in">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="request">
                    <xs:complexType>
                        <xs:attribute name="storage" type="xs:string" use="optional"/>
                        <xs:attribute name="domain" type="xs:string" use="required"/>
                        <xs:attribute name="profile_name" type="xs:string" use="required"/>
                        <xs:attribute name="property_name" type="xs:string" use="optional"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
    <!-- out-->
    <xs:element name="out">
        <xs:complexType>
            <xs:all>
                <xs:element name="profiles">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="profile" type="aliasProfileType" minOccurs="0" maxOccurs="unbounded"/>
                        </xs:sequence>
                    </xs:complexType>
                </xs:element>
            </xs:all>
        </xs:complexType>
    </xs:element>
</xs:schema>
CODE

Пример 1:

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

<in
    xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="alias_profile_info.xsd">
    <request domain="biysk.local" profile_name="front-office"/>
</in>
CODE

Ответ:

200

<?xml version="1.0"?>
<out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="alias_profile_info.xsd">
    <profiles>
        <profile domain="biysk.local" name="front-office" description="for managers">
            <properties/>
        </profile>
    </profiles>
</out>
CODE

Пример 2:

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

<in
    xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="alias_profile_info.xsd">
    <request domain="biysk.local" profile_name="user_default" property_name="category"/>
</in>
CODE

Ответ:

200

<?xml version="1.0"?>
<out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="alias_profile_info.xsd">
    <profiles>
        <profile domain="biysk.local" name="user_default" description="">
            <properties>
                <property name="category" type="profile" value="10"/>
            </properties>
        </profile>
    </profiles>
</out>
CODE

Hc_alias_profile_set

Команда изменяет имеющиеся/добавляет новые свойства профиля алиаса.

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

domain/<DOMAIN>/alias/profiles/set

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

POST

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

http://host:port/commands/alias_profile_set

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

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

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

alias_profile_common.xsd: Hc_alias_profile_list.

alias_profile_set.xsd:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:include schemaLocation="alias_profile_common.xsd"/>
    <!-- in-->
    <xs:element name="in">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="request">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="properties" minOccurs="1" maxOccurs="1">
                                <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="storage" type="xs:string" use="optional"/>
                        <xs:attribute name="domain" type="xs:string" use="required"/>
                        <xs:attribute name="profile_name" type="xs:string" use="required"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>
CODE

Пример:

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

<?xml version="1.0" encoding="UTF-8"?>
<in
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="alias_profile_set.xsd">
    <request domain="biysk.local" profile_name="front-office">
        <properties>
            <property name="category" type="profile" value="testCall"/>
            <property name="provider" type="profile" value="6"/>
        </properties>
    </request>
</in>
CODE

Ответ:

201

Hc_alias_profile_clean

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

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

domain/<DOMAIN>/alias/profiles/clean

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

POST

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

http://host:port/commands/alias_profile_clean

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

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

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

alias_profile_common.xsd: Hc_alias_profile_list.

alias_profile_clean.xsd:

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:include schemaLocation="alias_profile_common.xsd"/>
    <!-- in-->
    <xs:element name="in">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="request">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="properties" minOccurs="1" maxOccurs="1">
                                <xs:complexType>
                                    <xs:sequence>
                                        <xs:element name="property" type="propertyNameType" minOccurs="0" maxOccurs="unbounded"/>
                                    </xs:sequence>
                                </xs:complexType>
                            </xs:element>
                        </xs:sequence>
                        <xs:attribute name="storage" type="xs:string" use="optional"/>
                        <xs:attribute name="domain" type="xs:string" use="required"/>
                        <xs:attribute name="profile_name" type="xs:string" use="required"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>
CODE

Пример 1:

Запрос на удаление свойств provider, category из профиля front-office в домене biysk.local.

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

<?xml version="1.0" encoding="UTF-8"?>
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="alias_profile_clean.xsd">
    <request domain="biysk.local" profile_name="front-office">
        <properties>
            <property name="provider"/>
            <property name="category"/>
        </properties>
    </request>
</in>
XML

Ответ:

204

Пример 2:

Запрос на удаление всех свойств из профиля front-office в домене biysk.local.

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

<?xml version="1.0" encoding="UTF-8"?>
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="alias_profile_clean.xsd">
    <request domain="biysk.local" profile_name="front-office">
        <properties/>
    </request>
</in>
CODE

Ответ:

204