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"> <!-- okType--> <xs:complexType name="okType"> <xs:attribute name="name" type="xs:string" use="required"/> </xs:complexType> <!-- warningType--> <xs:complexType name="warningType"> <xs:all> <xs:element name="error_groups"> <xs:complexType> <xs:sequence> <xs:element name="group" type="warningGroupType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> </xs:all> <xs:attribute name="name" type="xs:string" use="required"/> </xs:complexType> <!-- weakPasswordType--> <xs:complexType name="weakPasswordType"> <xs:all> <xs:element name="failed_restrictions" minOccurs="1" maxOccurs="1"> <xs:complexType> <xs:sequence> <xs:element name="restriction" type="restrictionType" minOccurs="1" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> </xs:all> </xs:complexType> <!-- domainType--> <xs:complexType name="domainType"> <xs:attribute name="name" type="xs:string" use="required"/> </xs:complexType> <!-- warningGroupType--> <xs:complexType name="warningGroupType"> <xs:attribute name="name" type="xs:string" use="required"/> <xs:attribute name="cause" type="xs:string" use="required"/> </xs:complexType> <!-- restrictionType--> <xs:complexType name="restrictionType"> <xs:attribute name="name" type="xs:string" use="required"/> <xs:attribute name="args" type="xs:string" use="required"/> <xs:attribute name="msg" type="xs:string" use="required"/> </xs:complexType> <!-- in--> <xs:element name="in"> <xs:complexType> <xs:all> <xs:element name="user"> <xs:complexType> <xs:all> <xs:element name="udomains"> <xs:complexType> <xs:sequence> <xs:element name="domain" type="domainType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="adomains"> <xs:complexType> <xs:sequence> <xs:element name="domain" type="domainType" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> </xs:all> <xs:attribute name="name" type="xs:string" use="required"/> <xs:attribute name="password" type="xs:string" use="required"/> <xs:attribute name="is_user" type="xs:boolean" default="false"/> <xs:attribute name="is_admin" type="xs:boolean" default="false"/> <xs:attribute name="is_password_expired" type="xs:boolean" default="false"/> </xs:complexType> </xs:element> </xs:all> </xs:complexType> </xs:element> <!-- out--> <xs:element name="out"> <xs:complexType> <xs:choice> <!-- ok --> <xs:element name="ok" type="okType" minOccurs="0"/> <!-- already_exists --> <xs:element name="already_exists" type="okType" minOccurs="0"/> <!-- weak_password --> <xs:element name="weak_password" type="weakPasswordType" minOccurs="0"/> <!-- warning --> <xs:element name="warning" type="warningType" minOccurs="0"/> </xs:choice> </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>
Ответ:
200. Если пользователь с таким именем уже существует - выдается ошибка 404
<?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>
Если пароль не соответсвует требоваеиям безопасности:
<?xml version="1.0"?> <out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cocon_add_user.xsd"> <weak_password> <failed_restrictions> <restriction name="min_length" args="8" msg="Passwords must be at least 8 characters in length"/> </failed_restrictions> </weak_password> </out>
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_del_user
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_del_user.xsd"> <user name="test_sveta"/> </in>
Ответ:
204
Запрос на удаление несуществующего пользователя
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="cocon_del_user.xsd"> <user name="test-sveta"/> </in>
Ответ:
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="cocon_del_user" reason="error" body="<?xml version="1.0"?><out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="cocon_del_user.xsd"><error name="undefined" reason="Error: {undefined_state,exists}"/></out>"/> </out>
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>
Ответ:
200
<?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>
Запрос на добавление пользователя в несуществующую группу:
<?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="txtuser"> <groups> <group name="ecss-ssw"/> <group name="ecss-user"/> </groups> </user> </in>
Ответ:
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="cocon_add_user_to_group" reason="error" body="{error,"Bad result: {undefined_state,noSuchObject}"}"/> </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>
Ответ:
200
<?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-ct.office-domain-admin"/> <group name="ecss-ct.office-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:attribute name="body" type="xs:string" use="optional"/> </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="qwe123" name="test_user"/> </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>
Ответ:
200
<?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-ct.office-domain-admin"/> <group name="ecss-ct.office-domain-user"/> <group name="ecss-user"/> </groups> </user> <user name="support"> <groups> <group name="ecss-admin"/> <group name="ecss-user"/> </groups> </user> <user name="test"> <groups> <group name="ecss-biysk.local-domain-admin"/> <group name="ecss-biysk.local-domain-user"/> </groups> </user> <user name="test2"> <groups> <group name="ecss-biysk.local-domain-user"/> <group name="ecss-ct.office-domain-admin"/> <group name="ecss-ct.office-domain-user"/> </groups> </user> <user name="test3"> <groups/> </user> <user name="test_user"> <groups> <group name="ecss-biysk.local-domain-admin"/> <group name="ecss-biysk.local-domain-user"/> <group name="ecss-user"/> </groups> </user> <user name="tst3"> <groups/> </user> <user name="txtuser"> <groups> <group name="ecss-admin"/> <group name="ecss-biysk.local-domain-admin"/> <group name="ecss-biysk.local-domain-user"/> <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>
Ответ:
200
<?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"/> <user name="test_user"/> <user name="txtuser"/> </users> </group> <group name="ecss-biysk.local-domain-admin"> <users> <user name="admin"/> <user name="test2"/> <user name="txtuser"/> </users> </group> <group name="ecss-biysk.local-domain-user"> <users> <user name="admin"/> <user name="test2"/> <user name="test_user"/> <user name="txtuser"/> </users> </group> <group name="ecss-ct.office-domain-admin"> <users> <user name="admin"/> <user name="test_user"/> </users> </group> <group name="ecss-ct.office-domain-user"> <users> <user name="admin"/> <user name="test_user"/> </users> </group> <group name="ecss-user"> <users> <user name="admin"/> <user name="support"/> <user name="test2"/> <user name="test_user"/> <user name="txtuser"/> </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>
Ответ:
200
<?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="ecss-security"> <groups/> <domains> <domain name="*"/> </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="test1"/> </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="test1" value="value1"/> </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="prompt_prop" value="\l@\n \p"/> <property key="shell_history" value="system/zmq/status system/media/resource/list system/zmq/status domain/biysk.local/trace/show ls -la cocon/.properties/set shell_history_size 300 ls -la cocon/.properties/ ls -la cocon ls -la cocon/.properties/set cocon/.properties/info cocon/list users cocon/list domain/biysk.local/trace/show cluster/mediator/md1/alarms/list all domain/biysk.local/trace/show domain/biysk.local/trace/list domain/biysk.local/sorm/info sorm/info system/media/resource/list cluster/adapter/sip1/pcap-trace/stop all domain/biysk.local/restfs/list sounds records/2019_05_20/ domain/biysk.local/trace/show --Te 7aef338b domain/biysk.local/trace/list cluster/adapter/sip1/pcap-trace/start all any domain/biysk.local/restfs/list sounds records/2019_05_20/ domain/biysk.local/restfs/list sounds records/ cluster/core/core1/ai/info system-status cocon/my-groups domain/biysk.local/trace/list domain/biysk.local/cfc/info domain/biysk.local/cfc/clean domain/biysk.local/cfc/info restfs/list domain/biysk.local/trace/list cluster/mediator/md1/alarms/list all domain/biysk.local/ss/dialer/list domain/biysk.local/ss/dialer/remove 1 domain/biysk.local/ss/dialer/list system-status cocon/passwd test_user domain/biysk.local/cdr/make_finalize_cdr bsk3 domain/biysk.local/tts/properties/set sign_cdr_enabled true system-status cluster/mediator/md1/alarms/list all cluster/mediator/md1/alarms/clear all cluster/mediator/md1/alarms/list all system-status domain/biysk.local/ss/dialer/info 4 --show-options --active true domain/biysk.local/ss/dialer/info 4 --show-options cluster/core/core1/dialer/db/info domain/biysk.local/ss/dialer/info 4 --show-options domain/biysk.local/ss/dialer/info 4 domain/biysk.local/ss/dialer/declare test3 debt_tmpl_2 manual --group debt_rating_3 --calls_limit 2 --lines_limit 2 --recall_timeout 20 domain/biysk.local/ss/dialer/list domain/biysk.local/ss/dialer/info 3 --active true domain/biysk.local/trace/list system-status domain/biysk.local/ss/dialer/start 3 now domain/biysk.local/calls/list domain/biysk.local/ss/dialer/declare test2 debt_tmpl_2 manual --group debt_rating_3 --calls_limit 2 domain/biysk.local/ss/dialer/template/set debt_tmpl_2 --time_interval 07 00-23 00 domain/biysk.local/ss/dialer/template/list domain/biysk.local/ss/dialer/list system/media/resource/list all cluster/mediator/md1/alarms/clear all system-status system/media/resource/list all system/calls/domains учше system/media/resource/list all cocon/passwd test_user system-status node/core1@ecss1/log/config/rule-off ecss_zmq_transport_bin node/core1@ecss1/log/config/rule-on ecss_zmq_transport_bin node/core1@ecss1/log/config/show-rule system-status system/media/resource/list all system/media/resource/list system-status cocon/list users domain/biysk.local/ss/dialer/list domain/biysk.local/lists/declare debt_rating_3 default debt-3 240501 240502 416977 240464 240101 domain/biysk.local/ss/dialer/info 1 --active true domain/biysk.local/ss/dialer/start 1 now domain/biysk.local/ss/dialer/start 1 domain/biysk.local/ss/dialer/info 1 domain/biysk.local/ss/dialer/list system-status domain/biysk.local/trace/show --short-payload domain/biysk.local/trace/list domain/biysk.local/properties/restrictions/set dialer\channels 2 domain/biysk.local/properties/restrictions/info cocon/list users domain/biysk.local/tts/properties/info domain/biysk.local/tts/properties/info manual_cdr_columns cocon/list users node/core1@ecss1/log/config/show-rule domain/biysk.local/ss/dialer/info 2 --active true domain/biysk.local/trace/list "/> <property key="shell_history_size" value="100"/> <property key="test1" value="value1"/> <property key="test2" value="value2"/> <property key="test3" value="value31 value32"/> </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>
0 Комментариев