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

Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

Версия 1 Текущий »

teleconference_room_list

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

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

domain/<DOMAIN>/teleconference/list

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

POST

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

http://host:port/commands/teleconference_room_list

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

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

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

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <!-- roomType-->
    <xs:complexType name="roomType">
        <xs:attribute name="name" type="xs:string" use="required"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>
    <!-- resultType-->
    <xs:complexType name="resultType">
        <xs:sequence>
            <xs:element name="room" type="roomType" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>
    <!-- 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:choice>
                <xs:element name="result" type="resultType"/>
            </xs:choice>
        </xs:complexType>
    </xs:element>
</xs:schema>


Пример:

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

<in
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="teleconference_room_list.xsd">
<request domain="biysk.local"/>
</in>

Ответ:200

 
<?xml version="1.0"?>
<out
    xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="teleconference_room_list.xsd">
    <result>
        <room name="123" description="for_energo"/>
    </result>
</out>

teleconference_room_declare

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

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

domain/<DOMAIN>/teleconference/declare

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

POST

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

http://host:port/commands/teleconference_room_declare

Код 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="error.xsd"/>
    <!-- roomType-->
    <xs:complexType name="roomType">
        <xs:attribute name="name" type="xs:string" use="required"/>
    </xs:complexType>

    <!-- resultType-->
    <xs:complexType name="resultType">
        <xs:sequence>
            <xs:element name="room" type="roomType"/>
        </xs:sequence>
    </xs:complexType>

    <!-- 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:attribute name="room" type="xs:integer" use="required"/>
                        <xs:attribute name="description" type="xs:string"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
    <!-- out -->
    <xs:element name="out">
        <xs:complexType>
            <xs:choice>
                <xs:element name="result" type="resultType"/>
                <!--Or error-->
                <xs:element name="error" type="errorType"/>
            </xs:choice>
        </xs:complexType>
    </xs:element>
</xs:schema>

Пример 1:

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

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


Ответ: 200

<?xml version="1.0"?>
<out
    xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="teleconference_room_declare.xsd">
    <result>
        <room name="101"/>
    </result>
</out>

Пример 2:

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

<?xml version="1.0" encoding="UTF-8"?>
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="teleconference_room_declare.xsd">
    <request domain="test.ats" room="101" description="test test"/>
</in>

Ответ: 404

<?xml version="1.0" encoding="UTF-8"?>
    <out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="teleconference_room_declare.xsd">
        <error cmd="hc_teleconference_room_declare" reason="badargs" body="{error,already_exists,"101"}"/>
    </out>

teleconference_room_remove

Команда позволяет удалить комнату телеконференции

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

domain/<DOMAIN>/teleconference/remove

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

POST

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

http://host:port/commands/teleconference_room_remove

Код 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="error.xsd"/>
    <!-- roomType-->
    <xs:complexType name="roomType">
        <xs:attribute name="name" type="xs:string" use="required"/>
    </xs:complexType>

    <!-- resultType-->
    <xs:complexType name="resultType">
        <xs:sequence>
            <xs:element name="room" type="roomType"/>
        </xs:sequence>
    </xs:complexType>

    <!-- 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:attribute name="room" type="xs:integer" use="required"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
    <!-- out -->
    <xs:element name="out">
        <xs:complexType>
            <xs:choice>
                <xs:element name="result" type="resultType"/>
                <!--Or error-->
                <xs:element name="error" type="errorType"/>
            </xs:choice>
        </xs:complexType>
    </xs:element>
</xs:schema>

Пример 1:

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

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


Ответ:200

<?xml version="1.0"?>
<out
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="teleconference_room_remove.xsd">
<result>
<room name="101"/>
</result>
</out>

Пример 2:

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

<?xml version="1.0" encoding="UTF-8"?>
<in xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="teleconference_room_remove.xsd">
    <request domain="test.ats" room="101" description="test test"/>
</in>

Код ответа:
404

Ответ:

<?xml version="1.0" encoding="UTF-8"?>
    <out xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="teleconference_room_remove.xsd">
        <error cmd="hc_teleconference_room_remove" reason="badargs" body="{error,bad_room,"101"}"/>
    </out>

teleconference_room_set

Команда позволяет изменить параметры комнаты телеконференции, так же есть возможность изменить состав участников комнаты

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

domain/<DOMAIN>/teleconference/property-set

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

POST

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

http://host:port/commands/teleconference_room_set

Код 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="error.xsd"/>
    <!-- valueType-->
    <xs:complexType name="valueType">
        <xs:attribute name="key" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
    </xs:complexType>

    <!-- memberType-->
    <xs:complexType name="memberType">
        <xs:sequence minOccurs="0">
            <xs:element name="property" type="valueType" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:attribute name="number" type="xs:string" use="required"/>
    </xs:complexType>

    <!-- memberPropertyType-->
    <xs:complexType name="memberPropertyType">
        <xs:sequence minOccurs="0">
            <xs:element name="member" type="memberType" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>

    <!-- groupType-->
    <xs:complexType name="groupType">
        <xs:attribute name="name" type="xs:string" use="required"/>
    </xs:complexType>

    <!-- groupPropertyType-->
    <xs:complexType name="groupPropertyType">
        <xs:sequence minOccurs="0">
            <xs:element name="group" type="groupType" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>

    <!-- roomType-->
    <xs:complexType name="roomType">
        <xs:attribute name="name" type="xs:string" use="required"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>

    <!-- roomPropertyType-->
    <xs:complexType name="roomPropertyType">
        <xs:attribute name="answer_to_initiator_when_success_outgoing_call" type="xs:boolean"/>
        <xs:attribute name="auto_collect" type="xs:boolean"/>
        <xs:attribute name="caller_id_source" type="xs:string"/>
        <xs:attribute name="destroy_by_no_initiator" type="xs:boolean"/>
        <xs:attribute name="destroy_when_only_one_member_left" type="xs:boolean"/>
        <xs:attribute name="display_name" type="xs:string"/>
        <xs:attribute name="display_name_prefix" type="xs:string"/>
        <xs:attribute name="farewell" type="xs:string"/>
        <xs:attribute name="greeting_of_incoming_call" type="xs:string"/>
        <xs:attribute name="greeting_of_outgoing_call" type="xs:string"/>
        <xs:attribute name="greeting_of_outgoing_call_by_auto_collect" type="xs:string"/>
        <xs:attribute name="max_members" type="xs:integer"/>
        <xs:attribute name="no_answer_timeout" type="xs:integer"/>
        <xs:attribute name="notification_of_join_subscriber" type="xs:string"/>
        <xs:attribute name="notification_of_leave_subscriber" type="xs:string"/>
        <xs:attribute name="private" type="xs:boolean"/>
    </xs:complexType>

    <!-- resultType-->
    <xs:complexType name="resultType">
        <xs:sequence>
            <xs:element name="room" type="roomType"/>
        </xs:sequence>
    </xs:complexType>

    <!-- in-->
    <xs:element name="in">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="request">
                    <xs:complexType>
                        <xs:all>
                            <xs:element name="properties" type="roomPropertyType"/>
                            <xs:element name="groups" type="groupPropertyType" minOccurs="0"/>
                            <xs:element name="members" type="memberPropertyType" minOccurs="0"/>
                        </xs:all>
                        <xs:attribute name="domain" type="xs:string" use="required"/>
                        <xs:attribute name="room" type="xs:string" use="required"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
    <!-- out -->
    <xs:element name="out">
        <xs:complexType>
            <xs:choice>
                <xs:element name="result" type="resultType"/>
                <!--Or error-->
                <xs:element name="error" type="errorType"/>
            </xs:choice>
        </xs:complexType>
    </xs:element>
</xs:schema>

Пример 1:

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

<?xml version="1.0"?>
<in xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="teleconference_room_info.xsd">
    <request domain="biysk.local" room="101">
        <properties auto_collect="false" caller_id_source="conference" destroy_by_no_initiator="true" display_name_prefix="123" farewell="system://sounds/ai_conference_destroyed.wav" greeting_of_incoming_call="system://sounds/ai_conference_prompt.wav" greeting_of_outgoing_call="system://sounds/ai_conference_prompt.wav" greeting_of_outgoing_call_by_auto_collect="system://sounds/ai_conference_prompt.wav" max_members="16" no_answer_timeout="5"  private="false"/>
        <groups/>
        <members/>
    </request>
</in>


Ответ:200

<?xml version="1.0" encoding="UTF-8"?>
<out
    xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="teleconference_room_set.xsd">
    <error cmd="hc_teleconference_room_set" reason="badargs" body="{bad_property,"caller_id_source"}"/>
</out>

teleconference_room_info

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

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

domain/<DOMAIN>/teleconference/info

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

POST

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

http://host:port/commands/teleconference_room_info

Код 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="error.xsd"/>
    <!-- valueType-->
    <xs:complexType name="valueType">
        <xs:attribute name="key" type="xs:string"/>
        <xs:attribute name="value" type="xs:string"/>
    </xs:complexType>

    <!-- memberType-->
    <xs:complexType name="memberType">
        <xs:sequence minOccurs="0">
            <xs:element name="property" type="valueType" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:attribute name="number" type="xs:string" use="required"/>
    </xs:complexType>

    <!-- memberPropertyType-->
    <xs:complexType name="memberPropertyType">
        <xs:sequence minOccurs="0">
            <xs:element name="member" type="memberType" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>

    <!-- groupType-->
    <xs:complexType name="groupType">
        <xs:attribute name="name" type="xs:string" use="required"/>
    </xs:complexType>

    <!-- groupResultType-->
    <xs:complexType name="groupResultType">
        <xs:sequence>
            <xs:element name="group" type="groupType" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>

    <!-- roomType-->
    <xs:complexType name="roomType">
        <xs:attribute name="name" type="xs:string" use="required"/>
        <xs:attribute name="description" type="xs:string"/>
    </xs:complexType>

    <!-- roomPropertyType-->
    <xs:complexType name="roomPropertyType">
        <xs:attribute name="answer_to_initiator_when_success_outgoing_call" type="xs:boolean"/>
        <xs:attribute name="auto_collect" type="xs:boolean"/>
        <xs:attribute name="caller_id_source" type="xs:string"/>
        <xs:attribute name="destroy_by_no_initiator" type="xs:boolean"/>
        <xs:attribute name="destroy_when_only_one_member_left" type="xs:boolean"/>
        <xs:attribute name="display_name" type="xs:string"/>
        <xs:attribute name="display_name_prefix" type="xs:string"/>
        <xs:attribute name="farewell" type="xs:string"/>
        <xs:attribute name="greeting_of_incoming_call" type="xs:string"/>
        <xs:attribute name="greeting_of_outgoing_call" type="xs:string"/>
        <xs:attribute name="greeting_of_outgoing_call_by_auto_collect" type="xs:string"/>
        <xs:attribute name="max_members" type="xs:integer"/>
        <xs:attribute name="no_answer_timeout" type="xs:integer"/>
        <xs:attribute name="notification_of_join_subscriber" type="xs:string"/>
        <xs:attribute name="notification_of_leave_subscriber" type="xs:string"/>
        <xs:attribute name="private" type="xs:boolean"/>
    </xs:complexType>

    <!-- resultType-->
    <xs:complexType name="resultType">
        <xs:all>
            <xs:element name="room" type="roomType"/>
            <xs:element name="properties" type="roomPropertyType"/>
            <xs:element name="groups" type="groupResultType" minOccurs="0"/>
            <xs:element name="members" type="memberPropertyType" minOccurs="0"/>
        </xs:all>
    </xs:complexType>

    <!-- 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:attribute name="room" type="xs:string" use="required"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
    <!-- out -->
    <xs:element name="out">
        <xs:complexType>
            <xs:choice>
                <xs:element name="result" type="resultType"/>
                <!--Or error-->
                <xs:element name="error" type="errorType"/>
            </xs:choice>
        </xs:complexType>
    </xs:element>
</xs:schema>

Пример 1:

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

<in
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="teleconference_room_info.xsd">
    <request domain="biysk.local" room="101"/>
</in>

Код ответа:
200

Ответ:

<?xml version="1.0"?>
<out
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="teleconference_room_info.xsd">
<result>
<room name="101" description="test test"/>
<properties private="false" notification_of_leave_subscriber="tone://?f1=390&f2=0&on_msec=200&off_msec=100&duration=300" notification_of_join_subscriber="tone://?f1=490&f2=0&on_msec=200&off_msec=100&duration=300" no_answer_timeout="undefined" max_members="16" greeting_of_outgoing_call_by_auto_collect="system://sounds/ai_conference_prompt.wav" greeting_of_outgoing_call="system://sounds/ai_conference_prompt.wav" greeting_of_incoming_call="system://sounds/ai_conference_prompt.wav" farewell="system://sounds/ai_conference_destroyed.wav" display_name_prefix="Teleconference " destroy_when_only_one_member_left="false" destroy_by_no_initiator="true" auto_collect="false" answer_to_initiator_when_success_outgoing_call="false"/>
</result>
</out>

Пример 2:

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

<in
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="teleconference_room_info.xsd">
    <request domain="biysk.local" room="121"/>
</in>

Ответ: 434

<?xml version="1.0" encoding="UTF-8"?>
<out
    xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="teleconference_room_info.xsd">
    <error cmd="teleconference_room_info" reason="nocommand" body="Command not found by path /domain/t1.local/teleconference/info"/>
</out>
  • Нет меток