Hc_cocon_add_user
Команда добавляет нового пользователя в систему, позволяет добавить его в группы пользователей/администраторов системы ECSS-10, определенных виртуальных АТС (доменов).
Аналог команды в CoCon:
cocon/add-user
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/cocon_add_user
Код 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"> <!-- errorType--> <xs:complexType name="resultType"> <xs:attribute name="correct" type="xs:boolean" use="required"/> </xs:complexType> <!-- in--> <xs:element name="in"> <xs:complexType> <xs:all> <xs:element name="user"> <xs:complexType> <xs:attribute name="name" type="xs:string" use="required"/> <xs:attribute name="password" type="xs:string" use="required"/> </xs:complexType> </xs:element> </xs:all> </xs:complexType> </xs:element> <!-- out--> <xs:element name="out"> <xs:complexType> <xs:all> <xs:element name="result" type="resultType" minOccurs="1" maxOccurs="1"/> </xs:all> </xs:complexType> </xs:element> </xs:schema>
Пример:
Запрос: http://192.168.1.21:9999/commands/cocon_add_user
<?xml version="1.0" encoding="UTF-8"?> <in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_add_user.xsd"> <user is_user="true" password="test123" is_admin="false" name="test_user"> <udomains> <domain name="biysk.local"/> <domain name="ct.office"/> </udomains> <adomains> <domain name="ct.office"/> </adomains> </user> </in>
Ответ:
<?xml version="1.0"?><out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cocon_add_user.xsd"><ok name="test_user"/></out>
Если пользователь с таким именем уже существует - выдается ошибка 404
Hc_cocon_del_user
Команда позволяет удалить пользователя из системы.
Аналог команды в CoCon:
cocon/del-user
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/cocon_del_user
Код HTTP-ответа:
При выполнении команды HTTP-терминал может ответить следующими сообщениями:
- 204 – в случае успеха;
- 404 – в случае ошибки.
XSD-схема XML-файла запроса/ответа:
<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> <!-- errorType--> <xs:complexType name="errorType"> <xs:attribute name="name" type="xs:string" use="required"/> <xs:attribute name="reason" type="xs:string" use="required"/> </xs:complexType> <!-- in--> <xs:element name="in"> <xs:complexType> <xs:all> <xs:element name="user"> <xs:complexType> <xs:attribute name="name" type="xs:string" use="required"/> </xs:complexType> </xs:element> </xs:all> </xs:complexType> </xs:element> <!-- out--> <xs:element name="out"> <xs:complexType> <xs:choice> <!-- error --> <xs:element name="error" type="errorType" minOccurs="0"/> </xs:choice> </xs:complexType> </xs:element> </xs:schema>
Пример:
Запрос: http://192.168.1.21:9999/commands/cocon_add_user
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_del_user.xsd"> <user name="test2"/> </in>
Ответ:
204 код
Hc_cocon_add_user_to_group
Команда добавляет пользователя в указанную группу доступа.
Аналог команды в CoCon:
cocon/add-user-to-group
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/cocon_add_user_to_group
Код 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"> <!-- okType--> <xs:complexType name="okType"> <xs:attribute name="user" type="xs:string" use="required"/> <xs:attribute name="group" type="xs:string" use="required"/> </xs:complexType> <!-- errorType--> <xs:complexType name="errorType"> <xs:attribute name="user" type="xs:string" use="required"/> <xs:attribute name="group" type="xs:string" use="required"/> <xs:attribute name="reason" type="xs:string" use="required"/> </xs:complexType> <!-- groupType--> <xs:complexType name="groupType"> <xs:attribute name="name" type="xs:string" use="required"/> </xs:complexType> <!-- groupsType--> <xs:complexType name="groupsType"> <xs:sequence> <xs:element name="group" type="groupType" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <!-- userType--> <xs:complexType name="userType"> <xs:all> <xs:element name="groups" type="groupsType"/> </xs:all> <xs:attribute name="name" type="xs:string" use="required"/> </xs:complexType> <!-- resultType--> <xs:complexType name="resultType"> <xs:sequence> <!-- ok --> <xs:element name="ok" type="okType" minOccurs="0" maxOccurs="unbounded"/> <!-- error --> <xs:element name="error" type="errorType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <!-- in--> <xs:element name="in"> <xs:complexType> <xs:sequence> <xs:element name="user" type="userType" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> <!-- out--> <xs:element name="out"> <xs:complexType> <xs:all> <xs:element name="result" type="resultType" minOccurs="1" maxOccurs="1"/> </xs:all> </xs:complexType> </xs:element> </xs:schema>
Пример:
Запрос: http://192.168.1.21:9999/commands/cocon_add_user_to_group
<?xml version="1.0" encoding="UTF-8"?> <in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_add_user_to_group.xsd"> <user name="test_user"> <groups> <group name="ecss-admin"/> <group name="ecss-user"/> </groups> </user> <user name="test2"> <groups> <group name="ecss-biysk.local-domain-user"/> <group name="ecss-user"/> <group name="ecss-biysk.local-domain-admin"/> </groups> </user> </in>
Ответ:
<?xml version="1.0"?> <out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cocon_add_user_to_group.xsd"> <result> <ok user="test_user" group="ecss-admin"/> <ok user="test_user" group="ecss-user"/> <ok user="test2" group="ecss-biysk.local-domain-user"/> <ok user="test2" group="ecss-user"/> <ok user="test2" group="ecss-biysk.local-domain-admin"/> </result> </out>
Hc_cocon_del_user_from_group
Команда позволяет удалить пользователя из указанной группы доступа.
Аналог команды в CoCon:
cocon/del-user-from-group
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/cocon_del_user_from_group
Код 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"> <!-- okType--> <xs:complexType name="okType"> <xs:attribute name="user" type="xs:string" use="required"/> <xs:attribute name="group" type="xs:string" use="required"/> </xs:complexType> <!-- errorType--> <xs:complexType name="errorType"> <xs:attribute name="user" type="xs:string" use="required"/> <xs:attribute name="group" type="xs:string" use="required"/> <xs:attribute name="reason" type="xs:string" use="required"/> </xs:complexType> <!-- groupType--> <xs:complexType name="groupType"> <xs:attribute name="name" type="xs:string" use="required"/> </xs:complexType> <!-- groupsType--> <xs:complexType name="groupsType"> <xs:sequence> <xs:element name="group" type="groupType" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <!-- userType--> <xs:complexType name="userType"> <xs:all> <xs:element name="groups" type="groupsType"/> </xs:all> <xs:attribute name="name" type="xs:string" use="required"/> </xs:complexType> <!-- resultType--> <xs:complexType name="resultType"> <xs:sequence> <!-- ok --> <xs:element name="ok" type="okType" minOccurs="0" maxOccurs="unbounded"/> <!-- error --> <xs:element name="error" type="errorType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <!-- in--> <xs:element name="in"> <xs:complexType> <xs:sequence> <xs:element name="user" type="userType" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> <!-- out--> <xs:element name="out"> <xs:complexType> <xs:all> <xs:element name="result" type="resultType" minOccurs="1" maxOccurs="1"/> </xs:all> </xs:complexType> </xs:element> </xs:schema>
Пример:
Запрос: http://192.168.1.21:9999/commands/cocon_del_user_from_group
<?xml version="1.0" encoding="UTF-8"?> <in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_del_user_to_group.xsd"> <user name="test_user"> <groups> <group name="ecss-admin"/> </groups> </user> <user name="test2"> <groups> <group name="ecss-biysk.local-domain-admin"/> <group name="ecss-user"/> <group name="ecss-admin"/> </groups> </user> </in>
Ответ:
<?xml version="1.0"?> <out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cocon_del_user_to_group.xsd"> <result> <ok user="test_user" group="ecss-admin"/> <ok user="test2" group="ecss-biysk.local-domain-admin"/> <ok user="test2" group="ecss-user"/> <ok user="test2" group="ecss-admin"/> </result> </out>
Hc_my_groups
Команда позволяет вывести список групп доступа, разрешенных для текущего пользователя.
Аналог команды в CoCon:
cocon/my-groups
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/my_groups
Код HTTP-ответа:
При выполнении команды HTTP-терминал может ответить следующими сообщениями:
- 200 – в случае успеха;
- 404 – в случае ошибки.
XSD-схема XML-файла запроса/ответа:
<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <!-- groupType --> <xs:complexType name="groupType"> <xs:attribute name="name" type="xs:string" use="required"/> </xs:complexType> <!-- in --> <xs:element name="in"> <xs:complexType> <xs:sequence> <xs:element name="request"> <xs:complexType/> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <!-- out --> <xs:element name="out"> <xs:complexType> <xs:sequence> <xs:element name="groups"> <xs:complexType> <xs:sequence> <xs:element name="group" type="groupType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
Пример:
Запрос: http://192.168.1.21:9999/commands/my_groups
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_my_groups.xsd"> <request/> </in>
Ответ:
<?xml version="1.0"?> <out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cocon_my_groups.xsd"> <groups> <group name="ecss-admin"/> <group name="ecss-biysk.local-domain-admin"/> <group name="ecss-biysk.local-domain-user"/> <group name="ecss-user"/> </groups> </out>
Hc_cocon_passwd
Команда позволяет сменить пароль для текущего пользователя CoCon.
Аналог команды в CoCon:
cocon/passwd
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/cocon_passwd
Код HTTP-ответа:
При выполнении команды HTTP-терминал может ответить следующими сообщениями:
- 201 – в случае успеха;
- 200 – в случае ошибки, с описанием ошибки.
XSD-схема XML-файла запроса/ответа:
<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> <!-- errorType--> <xs:complexType name="errorType"> <xs:attribute name="name" type="xs:string" use="required"/> <xs:attribute name="reason" type="xs:string" use="required"/> </xs:complexType> <!-- in--> <xs:element name="in"> <xs:complexType> <xs:all> <xs:element name="user"> <xs:complexType> <xs:attribute name="name" type="xs:string" use="required"/> <xs:attribute name="password" type="xs:string" use="required"/> </xs:complexType> </xs:element> </xs:all> </xs:complexType> </xs:element> <!-- out--> <xs:element name="out"> <xs:complexType> <xs:all> <!-- error --> <xs:element name="error" type="errorType" minOccurs="1" maxOccurs="1"/> </xs:all> </xs:complexType> </xs:element> </xs:schema>
Пример:
Запрос: http://192.168.1.21:9999/commands/cocon_passwd
<?xml version="1.0" encoding="UTF-8"?> <in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_passwd.xsd"> <user password="test_user" name="test123"/> </in>
Ответ:
- в случае успеха: 201;
в случае ошибки:
<?xml version="1.0"?> <out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cocon_passwd.xsd"> <error name="testSSW" reason="No such object"/> </out>
Hc_cocon_check_passwd
Команда позволяет проверить пароль для определенного пользователя CoCon.
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/cocon_check_passwd
Код HTTP-ответа:
При выполнении команды HTTP-терминал может ответить следующими сообщениями:
- 200 – в случае успеха. Если пароль неверный, возвращается 200 сообщение с result correct="false";
- 404 – в случае ошибки.
XSD-схема XML-файла запроса/ответа:
<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> <!-- errorType--> <xs:complexType name="resultType"> <xs:attribute name="correct" type="xs:boolean" use="required"/> </xs:complexType> <!-- in--> <xs:element name="in"> <xs:complexType> <xs:all> <xs:element name="user"> <xs:complexType> <xs:attribute name="name" type="xs:string" use="required"/> <xs:attribute name="password" type="xs:string" use="required"/> </xs:complexType> </xs:element> </xs:all> </xs:complexType> </xs:element> <!-- out--> <xs:element name="out"> <xs:complexType> <xs:all> <xs:element name="result" type="resultType" minOccurs="1" maxOccurs="1"/> </xs:all> </xs:complexType> </xs:element> </xs:schema>
Пример:
Запрос: http://192.168.23.34:9999/commands/cocon_check_passwd
<?xml version="1.0" encoding="UTF-8"?> <in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_check_passwd.xsd"> <user password="ssw123" name="test"/> </in>
Ответ: 200
<?xml version="1.0"?> <out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cocon_check_passwd.xsd"> <result correct="true"/> </out>
Hc_cocon_users_list
Команда возвращает список пользователей подсистемы управления CoCon с указанием групп доступа, в которые каждый пользователь входит.
Аналог команды в CoCon:
cocon/list users
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/cocon_users_list
Код HTTP-ответа:
При выполнении команды HTTP-терминал может ответить следующими сообщениями:
- 200 – в случае успеха;
- 404 – в случае ошибки.
XSD-схема XML-файла запроса/ответа:
<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <!-- groupType --> <xs:complexType name="groupType"> <xs:attribute name="name" type="xs:string" use="required"/> </xs:complexType> <!-- groupsType --> <xs:complexType name="groupsType"> <xs:sequence> <xs:element name="group" type="groupType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <!-- userType --> <xs:complexType name="userType"> <xs:sequence> <xs:element name="groups" type="groupsType" minOccurs="1" maxOccurs="1"/> </xs:sequence> <xs:attribute name="name" type="xs:string" use="required"/> <xs:attribute name="role" type="xs:string" use="optional"/> </xs:complexType> <!-- in --> <xs:element name="in"> <xs:complexType> <xs:sequence> <xs:element name="request"> <xs:complexType/> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <!-- out --> <xs:element name="out"> <xs:complexType> <xs:sequence> <xs:element name="users"> <xs:complexType> <xs:sequence> <xs:element name="user" type="userType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
Пример:
Запрос: http://192.168.1.21:9999/commands/cocon_users_list
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_users_list.xsd"> <request/> </in>
Ответ:
<?xml version="1.0"?> <out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cocon_users_list.xsd"> <users> <user name="admin"> <groups> <group name="ecss-admin"/> <group name="ecss-biysk.local-domain-admin"/> <group name="ecss-biysk.local-domain-user"/> <group name="ecss-user"/> </groups> </user> <user name="bsk"> <groups> <group name="ecss-biysk.local-domain-admin"/> <group name="ecss-biysk.local-domain-user"/> </groups> </user> <user name="support"> <groups> <group name="ecss-admin"/> <group name="ecss-user"/> </groups> </user> <user name="test2"> <groups> <group name="ecss-biysk.local-domain-user"/> </groups> </user> <user name="test_user"> <groups> <group name="ecss-ct.office-domain-admin"/> <group name="ecss-ct.office-domain-user"/> <group name="ecss-user"/> </groups> </user> </users> </out>
Hc_cocon_groups_list
Команда возвращает список групп доступа подсистемы CoCon с указанием пользователей, которые входят в данные группы.
Аналог команды в CoCon:
cocon/list groups
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/cocon_groups_list
Код HTTP-ответа:
При выполнении команды HTTP-терминал может ответить следующими сообщениями:
- 200 – в случае успеха;
- 404 – в случае ошибки.
XSD-схема XML-файла запроса/ответа:
<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <!-- groupType --> <xs:complexType name="userType"> <xs:attribute name="name" type="xs:string" use="required"/> </xs:complexType> <!-- groupsType --> <xs:complexType name="usersType"> <xs:sequence> <xs:element name="user" type="userType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <!-- userType --> <xs:complexType name="groupType"> <xs:sequence> <xs:element name="users" type="usersType" minOccurs="1" maxOccurs="1"/> </xs:sequence> <xs:attribute name="name" type="xs:string" use="required"/> </xs:complexType> <!-- in --> <xs:element name="in"> <xs:complexType> <xs:sequence> <xs:element name="request"> <xs:complexType/> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <!-- out --> <xs:element name="out"> <xs:complexType> <xs:sequence> <xs:element name="groups"> <xs:complexType> <xs:sequence> <xs:element name="group" type="groupType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
Пример:
Запрос: http://192.168.1.21:9999/commands/cocon_groups_list
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_groups_list.xsd"> <request /> </in>
Ответ:
<?xml version="1.0"?> <out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cocon_groups_list.xsd"> <groups> <group name="ecss-admin"> <users> <user name="admin"/> <user name="support"/> </users> </group> <group name="ecss-biysk.local-domain-admin"> <users> <user name="admin"/> <user name="bsk"/> </users> </group> <group name="ecss-biysk.local-domain-user"> <users> <user name="admin"/> <user name="bsk"/> <user name="test2"/> </users> </group> <group name="ecss-ct.office-domain-admin"> <users> <user name="test_user"/> </users> </group> <group name="ecss-ct.office-domain-user"> <users> <user name="test_user"/> </users> </group> <group name="ecss-user"> <users> <user name="admin"/> <user name="support"/> <user name="test_user"/> </users> </group> <group name="{ECSS-ROOT}"> <users/> </group> </groups> </out>
Hc_cocon_roles_list
Команда возвращает список ролей подсистемы управления CoCon с указанием групп доступа, а также доменов, в которых данная роль видна.
Замечание: если роль входит во все домены, то в ответе присутствует ровно одна запись с доменом, имя которого равно "*".
Аналог команды в CoCon:
cocon/list roles
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/cocon_roles_list
Код HTTP-ответа:
- 200 – в случае успеха;
- 404 – в случае ошибки.
XSD-схема XML-файла запроса/ответа:
<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <!-- groupType --> <xs:complexType name="groupType"> <xs:attribute name="name" type="xs:string" use="required"/> </xs:complexType> <!-- domainType --> <xs:complexType name="domainType"> <xs:attribute name="name" type="xs:string" use="required"/> </xs:complexType> <!-- groupsType --> <xs:complexType name="groupsType"> <xs:sequence> <xs:element name="group" type="groupType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <!-- userType --> <xs:complexType name="domainsType"> <xs:sequence> <xs:element name="groups" type="domainType" minOccurs="1" maxOccurs="1"/> </xs:sequence> </xs:complexType> <!-- in --> <xs:element name="in"> <xs:complexType> <xs:sequence> <xs:element name="request"> <xs:complexType/> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <!-- out --> <xs:element name="out"> <xs:complexType> <xs:sequence> <xs:element name="roles"> <xs:complexType> <xs:sequence> <xs:element name="groups" type="groupsType" minOccurs="0" maxOccurs="unbounded"/> <xs:element name="domains" type="domainsType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
Пример
Запрос: http://192.168.1.22:9999/commands/cocon_roles_list
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_roles_list.xsd"> <request/> </in>
Ответ:
<?xml version="1.0"?> <out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cocon_roles_list.xsd"> <roles> <role name="cc-admin"> <groups/> <domains> <domain name="*"/> </domains> </role> <role name="office"> <groups> <group name="ecss-ct.office-domain-admin"/> <group name="ecss-ct.office-domain-user"/> </groups> <domains/> </role> <role name="pbx-10X-admin"> <groups/> <domains> <domain name="*"/> </domains> </role> </roles> </out>
Hc_cocon_user_property_clean
Команда позволяет удалять произвольные свойства CoCon пользователей.
Аналог команды в CoCon:
cocon/.properties/clean
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/cocon_user_property_clean
Код HTTP-ответа:
- 201 – в случае успеха;
- 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"> <!--requestType--> <xs:complexType name="requestType"> <xs:sequence> <xs:element name="property" type="propertyType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <!--propertyType--> <xs:complexType name="propertyType"> <xs:attribute name="key" type="xs:string" use="required"/> </xs:complexType> <!--in--> <xs:element name = "in"> <xs:complexType> <xs:sequence> <xs:element name="request" type="requestType"/> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
Пример 1
Запрос:
http://192.168.1.21:9999/commands/cocon_user_property_clean
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_user_property_clean.xsd"> <request> <property key="test1"/> <property key="test2"/> </request> </in>
Код ответа:
204
Пример 2
Запрос:
http://192.168.1.21:9999/commands/cocon_user_property_clean
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_user_property_clean.xsd"> <request> <property key="shell_history_size"/> <property key="test2"/> </request> </in>
Код ответа:
200
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cocon_user_property_clean.xsd"> <error cmd="hc_cocon_user_property_clean" reason="restricted_property" body="shell_history_size"/> </out>
Hc_cocon_user_property_info
Команда позволяет просматривать свойства CoCon пользователей.
Аналог команды в CoCon:
cocon/.properties/info
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/cocon_user_property_info
Код 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"> <!--requestType--> <xs:complexType name="requestType"> <xs:all/> <xs:attribute name="property" type="xs:string" use="optional"/> </xs:complexType> <!--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> <!--responseType--> <xs:complexType name="responseType"> <xs:sequence> <xs:element name="property" type="propertyType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <!--in--> <xs:element name = "in"> <xs:complexType> <xs:sequence> <xs:element name="request" type="requestType"/> </xs:sequence> </xs:complexType> </xs:element> <!--out--> <xs:element name = "out"> <xs:complexType> <xs:sequence> <xs:element name="response" type="responseType"/> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
Пример 1
Запрос:
http://192.168.1.21:9999/commands/cocon_user_property_info
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_user_property_info.xsd"> <request property="test_prop"/> </in>
Код ответа:
200
Ответ:
<?xml version="1.0"?> <out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cocon_user_property_info.xsd"> <response> <property key="test_prop" value="112"/> </response> </out>
Пример 2
Запрос:
http://192.168.1.21:9999/commands/cocon_user_property_info
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_user_property_info.xsd"> <request/> </in>
Код ответа:
200
Ответ:
<?xml version="1.0"?> <out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cocon_user_property_info.xsd"> <response> <property key="shell_history" value="cocon/.properties/info cocon/.properties/set test_prop2 superadmin cocon/.properties/info cocon/.properties/set test_prop 112 cocon/.properties/set shell_history_size 500 cocon/.properties/info cocon/role/add-group office ecss-ct.office-domain-user cocon/role/add-group office ecss-ct.office-domain-admin cocon/role/declare office cocon/role/add-group office.rl cocon/role/add-group office.rl ecss-ct.office-domain-admin cocon/role/add-group office.roles ecss-ct.office-domain-admin cocon/role/add-group office.roles cocon/list users domain/biysk.local/sip/user/registered domain/biysk.local/sip/user/check loc.gr 240462@biysk.local cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss2 ip = 192.168.2.62 cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss1 ip = 192.168.2.61 cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss1 ip = 192.168.2.98 cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss2 ip = 192.168.2.99 domain/biysk.local/sip/user/check loc.gr 240462@biysk.local cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss1 ip = 192.168.2.61 cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss2 ip = 192.168.2.62 cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss2 ip = 192.168.2.99 cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss1 ip = 192.168.2.98 domain/biysk.local/sip/user/check loc.gr 240462@biysk.local cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss1 ip = 192.168.2.61 cluster/adapter/sip1/sip/network/info cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss2 ip = 192.168.2.62 cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss1 ip = 192.168.2.61 domain/biysk.local/sip/user/check loc.gr 240462@biysk.local cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss2 ip = 192.168.2.98 cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss2 ip = 192.168.2.99 cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss1 ip = 192.168.2.99 cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss1 domain/biysk.local/sip/user/check loc.gr 240462@biysk.local cluster/adapter/sip1/sip/network/info cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss1 ip = 192.168.2.61 cluster/adapter/sip1/sip/network/info cluster/adapter/sip1/sip/network/set ip_set ipset1 listen-ports list = [5060,5061,5062,5063,5064,5071,5072,5073,5074] cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss2 ip = 192.168.2.62 cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss1 ip = 192.168.2.61 cluster/adapter/sip1/sip/network/info cluster/adapter/sip1/sip/network/clean domain/biysk.local/sip/user/check loc.gr 240462@biysk.local cluster/adapter/sip1/sip/network/set ip_set ipset1 listen-ports list = [5060,5061,5062,5063,5064,5071,5072,5073,5074] cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss2 ip = 192.168.2.62 cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss1 ip = 192.168.2.61 cluster/adapter/sip1/sip/network/info cluster/adapter/sip1/sip/network/clean ip_set ipset1 cluster/adapter/sip1/sip/network/info domain/biysk.local/sip/user/check loc.gr 240003@biysk.local domain/biysk.local/sip/user/check loc.gr 240002@biysk.local domain/biysk.local/sip/user/check loc.gr 240462@biysk.local node/uptime domain/biysk.local/ss/voicemail/mailbox/show 240464 cluster/mediator/md1/alarms/clear all system-status domain/biysk.local/sip/user/check loc.gr 240469@biysk.local domain/biysk.local/sip/user/check loc.gr 240462@biysk.local domain/biysk.local/sip/user/check loc.gr 240* domain/biysk.local/sip/user/check loc.gr 240462@biysk.local cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss1 ip = 192.168.2.61 cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss2 ip = 192.168.2.62 cluster/adapter/sip1/sip/network/info cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss2 192.168.2.62 cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss1 192.168.2.61 cluster/adapter/sip1/sip/network/info cluster/adapter/sip1/sip/network/set ip_set ipset1 listen-ports list = [5060,5061,5062,5063,5064,5071,5072,5073,5074] cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss2 cluster/adapter/sip1/sip/network/set ip_set ipset1 node-ip node = sip1@ecss1 cluster/adapter/sip1/sip/network/set ip_set ipset1 listen-ports list = [5060,5061,5062,5063,5064,5071,5072,5073,5074] domain/biysk.local/sip/user/check loc.gr 240462@biysk.local cluster/adapter/sip1/sip/network/clean ip_set ipset1 domain/biysk.local/sip/user/check loc.gr 240462@biysk.local domain/biysk.local/sip/user/registered cluster/adapter/sip1/sip/network/set ip_set ipset1 listen-ports list = [5060,5061,5062,5063,5064,5071,5072,5073,5074] cluster/adapter/sip1/sip/network/set ip_set ipset1 listen-ports list = [5061,5062,5063,5064,5071,5072,5073,5074] cluster/adapter/sip1/sip/network/info cocon/add-user test2 cocon/list users domain/declare ct.office node/mycelium1@ecss1/process-info node/mycelium1@ecss1/service node/check-services system-status system/ivr/script/restrictions/apply play-dial biysk.local system/ivr/script/restrictions/set play-dial available_blocks add play, play-out, dial system/ivr/script/restrictions/declare play-dial system/ivr/script/restrictions/apply 2x2.prof biysk.local system/ivr/script/restrictions/info --long ivr_gr1 system/ivr/script/restrictions/apply ivr_gr1 biysk.local system/ivr/script/restrictions/apply 2x2.prof biysk.local system/ivr/script/restrictions/apply 2x2.prof 4 system/ivr/script/restrictions/apply 2x2.prof system/ivr/script/restrictions/apply 3-block system/ivr/script/restrictions/apply ivr_gr1 system/ivr/script/restrictions/info --long ivr_gr1 system/ivr/script/restrictions/info system/ivr/script/restrictions/apply ivr_gr1 domain/biysk.local/ivr/script/restrictions/set max_blocks_per_script 50 "/> <property key="shell_history_size" value="100"/> <property key="test_prop" value="112"/> <property key="test_prop2" value="superadmin"/> </response> </out>
Hc_cocon_user_property_set
Команда позволяет выставлять/изменять произвольные свойства CoCon пользователей.
Аналог команды в CoCon:
cocon/.properties/set
Метод HTTP-запроса:
POST
Шаблон HTTP-запроса:
http://host:port/commands/cocon_user_property_set
Код HTTP-ответа:
- 201 – в случае успеха;
- 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"> <!--requestType--> <xs:complexType name="requestType"> <xs:sequence> <xs:element name="property" type="propertyType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> <!--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> <!--in--> <xs:element name = "in"> <xs:complexType> <xs:sequence> <xs:element name="request" type="requestType"/> </xs:sequence> </xs:complexType> </xs:element> </xs:schema>
Пример 1
Запрос:
http://192.168.1.21:9999/commands/cocon_user_property_set
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_user_property_set.xsd"> <request> <property key="test1" value="value1"/> <property key="test2" value="value2"/> <property key="test3" value="value31 value32"/> </request> </in>
Код ответа:
201
Пример 2
Запрос:
http://192.168.1.21:9999/commands/cocon_user_property_set
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_user_property_set.xsd"> <request> <property key="shell_history_size" value="300"/> </request> </in>
Код ответа:
200
Ответ:
<?xml version="1.0" encoding="UTF-8"?> <out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cocon_user_property_set.xsd"> <error cmd="hc_cocon_user_property_set" reason="restricted_property" body="shell_history_size"/> </out>