Список методов и используемых параметров¶
Таблица содержит полный список REST методов и используемых параметров.
Серым цветом выделены параметры, для которых описание дано выше или ниже по таблице.
В зависимости от направления вызова и его назначения, могут использоваться разные подмножества параметров для одного и того же вызова. Например в случае вызова ConnectionStatusEvent будут передаваться параметры sipLogin, sipPassword, и т.д. В случае ошибки, это же событие ConnectionStatusEvent будет иметь всего два параметра: status и info при передаче на клиента и status, info, nodeId, sessionId, appKey при передаче на бэкенд сервер.
| connect | Установить соединение с WCS сервером |
| urlServer | Этот параметр будет использован WCS JavaScript API для соединения с сервером |
| appKey | По этому параметру WCS получит REST URL для данного приложения. Для просмотра и добавления приложений воспользуйтесь Интерфейсом Командной Строки (CLI). |
| sipRegisterRequired |
Если этот параметр true, будет произведена регистрация на SIP сервере путем вызова SIP REGISTER. Если параметр false, регистрация на SIP-сервере произведена не будет. В этом случае web-страница не сможет принимать входящие звонки с SIP, но по прежнему сможет осуществлять исходящие вызовы, если SIP сервер позволяет исходящие звонки без SIP-регистрации
|
| sipLogin | SIP имя пользователя |
| sipAuthenticationName |
SIP имя пользователя, которое используется для SIP аутентификации. Может отличаться от sipLogin
|
| sipPassword | SIP пароль. Используется для SIP аутентификации |
| sipVisibleName | SIP имя пользователя, которое будет отображаться абонентам, получающим от этого пользователя входящий звонок |
| sipDomain | SIP домен: FQDN или IP-адрес |
| sipOutboundProxy |
IP прокси сервер: FQDN или IP адрес. Может отличаться от sipDomain
|
| sipPort | SIP порт, который используется на SIP сервере для обработки SIP трафика. |
| sipContactParams |
Строка пользовательских произвольных параметров, которая будет добавлена в SIP Contact заголовок REGISTER запроса
|
| status | |
| mediaProviders |
Массив с доступными типами медиа на WCS JavaScript API: ['WebRTC','Flash']
|
| restClientConfig | JSON - объект, описывающий конфигурацию управления взаимодействием с бэкенд сервером. Если объект не был передан, используются значения по умолчанию. См [restClientConfig](restClientConfig_object_description.ru.md) |
| width | Максимальная ширина видео, в пикселях |
| height | Максимальная высота видео, в пикселях |
| custom | Объект с произвольным содержимым для идентификации клиента на бэкенд сервере |
| ConnectionStatusEvent | Изменение статуса соединения |
| sipRegisterRequired | |
| sipLogin | |
| sipPassword | |
| sipVisibleName | |
| sipDomain | |
| sipOutboundProxy | |
| sipPort | |
| sipContactParams | |
| status |
Статус соединения с WCS сервером: PENDING, ESTABLISHED, FAILED, DISCONNECTED
|
| info |
В это поле может быть добавлена дополнительная информация. Например если status: "FAILED", в info будет передано описание причины
|
| authToken | Ключ использующийся WCS JavaScript API для подключения к активной SIP сессии |
| mediaProviders | |
| nodeId | |
| sessionId | |
| appKey | |
| custom |
Объект с произвольным содержимым для идентификации клиента на бэкенд сервере, переданный в /connect
|
| RegistrationStatusEvent | Изменение статуса SIP регистрации |
| status |
Статусы регистрации: REGISTERED, UNREGISTERED, FAILED
|
| info | |
| sipMessageRaw |
Исходное SIP-сообщение с заголовками. SIP ответ на запрос REGISTER
|
| nodeId | |
| sessionId | |
| appKey | |
| call | Исходящий звонок |
| callId | Уникальный идентификатор звонка |
| callee | Вызываемый абонент в формате SIP URI или телефонный номер |
| caller | Вызывающий абонент в формате SIP URI |
| visibleName | Имя, которое будет отображаться у вызываемого абонента |
| hasVideo |
Если true, то это видео звонок
|
| inviteParameters |
Параметры, которые будут добавлены в запрос SIP INVITE
|
| isMsrp |
Если true, то это не голосовой вызов, а установление MSRP-соединения для передачи данных
|
| status | |
| incoming |
Если true, то это звонок, поступивший с SIP стороны
|
| mediaProvider |
Используемая технология передачи медиа на WCS JavaScript API, возможные значения: WebRTC, Flash
|
| sdp |
SDP, сформированное WCS JavaScript API, присутствует при mediaProvider: "WebRTC"
|
| OnCallEvent | Входящий звонок |
| callId | |
| callee | |
| caller | |
| visibleName | |
| hasVideo | |
| inviteParameters | |
| sipMessageRaw |
SIP INVITE сообщение, на основе которого создвется событие входящего звонка
|
| incoming | |
| status | |
| mediaProvider | |
| sdp | |
| nodeId | |
| sessionId | |
| appKey | |
| CallStatusEvent | Изменение статуса звонка |
| callId | |
| incoming |
Если true, то звонок входящий
|
| status |
Статус звонка: TRYING, RING, SESSION_PROGRESS, BUSY, ESTABLISHED, HOLD, FINISH, FAILED
|
| info | |
| sipMessageRaw |
Исходное сообщение, соответствующее передаваемому событию. Например, в случае TRYING, это будет ответ SIP 100 TRYING, в случае ESTABLISHED будет ответ SIP 200 OK, в случае HOLD будет ответ SIP 200 OK на re-INVITE, и т.д.
|
| sipStatus | Статус, полученный от SIP стороны |
| caller | |
| callee | |
| hasVideo | |
| visibleName | |
| mediaProvider | |
| nodeId | |
| sessionId | |
| appKey | |
| answer | Ответить на входящий звонок |
| callId | |
| incoming | |
| sipStatus | |
| caller | |
| callee | |
| hasVideo | |
| visibleName | |
| mediaProvider | |
| sdp | |
| status | |
| nodeId | |
| sessionId | |
| appKey | |
| hangup | Завершить звонок |
| callId | |
| hasVideo | |
| nodeId | |
| sessionId | |
| appKey | |
| hold | Поставить звонок на удержание |
| callId | |
| hasVideo | |
| nodeId | |
| sessionId | |
| appKey | |
| unhold | Снять звонок с удержания |
| callId | |
| hasVideo | |
| nodeId | |
| sessionId | |
| appKey | |
| transfer | Перевести звонок |
| callId | |
| target | Номер или SIP URI абонента, которому будет переведен звонок |
| nodeId | |
| sessionId | |
| appKey | |
| TransferStatusEvent | Изменение статуса передачи звонка |
| callId | |
| incoming |
Если true, то передача была инициирована другой стороной
|
| status |
Статус передачи звонка: ACCEPTED, TRYING, COMPLETED, FAILED. Если статус не распознан, в событии будет передан статус, полученный от SIP стороны
|
| info | |
| sipMessageRaw | |
| hasVideo | |
| nodeId | |
| sessionId | |
| appKey | |
| sendDTMF | Отправить DTMF сигнал |
| callId | |
| dtmf | Символ в текстовом виде, который передается в DTMF: 0-9, *, # |
| type |
Тип DTMF сигнала: INFO, INFO_RELAY, RFC2833
|
| nodeId | |
| sessionId | |
| appKey | |
| sendMessage | Отправить сообщение |
| id | Уникальный идентификатор сообщения |
| from | Номер или SIP URI отправителя сообщения |
| to | Номер, имя или SIP URI получателя сообщения |
| body | Текст сообщения |
| contentType |
text/plain - сообщение будет отправлено как SIP MESSAGE с заголовком Content-Type : text/plain и с текстом в теле сообщения
message/cpim - сообщение будет отправлено как SIP MESSAGE с заголовком Content-Type:message/cpim и сообщением в формате text/plain в теле CPIM-сообщения
multipart/mixed - сообщение будет отправлено как SIP MESSAGE с заголовком Content-Type:multipart/mixed и CPIM сообщениями в теле, каждое из которых в своем теле имеет text/plain сообщение
|
| isImdnRequired |
Если флаг установлен в true, для типов message/cpim и multipart/mixed в тело CPIM сообщения будет добавлена информация, запрашивающая уведомление о доставке через IMDN
|
| recipients |
Список получателей сообщения, разделенный запятой. Через запятую должны быть перечислены SIP URI, телефоны или SIP логины получателей. Поле используется только в том случае, если задан ContentType multipart/mixed. Это поле будет корректно работать только тогда, когда SIP-сервер поддерживает отправку сообщений нескольким абонентам на основе multipart/mixed. WCS отправит SIP серверу multipart/mixed сообщение с несколькими адресатами. Если ваш SIP-сервер не поддерживает такую отправку, оставьте это поле пустым и попытайтесь отправить несколько отдельных сообщений
|
| nodeId | |
| sessionId | |
| appKey | |
| OnMessageEvent | Входящее сообщение |
| id | |
| from | |
| to | |
| body | |
| contentType | |
| isImdnRequired | Если входящее сообщение имеет такой флаг, то будет высылаться уведомление о доставке IMDN |
| sipMessageRaw |
SIP MESSAGE сообщение, соответствующее событию входящего сообщения OnMessageEvent
|
| status | |
| nodeId | |
| sessionId | |
| appKey | |
| MessageStatusEvent | Изменение статуса сообщения |
| id | |
| from | |
| to | |
| contentType | |
| isImdnRequired | |
| body | |
| status |
Статусы сообщений: RECEIVED, ACCEPTED, FAILED, IMDN_DELIVERED, IMDN_FAILED, IMDN_NOTIFICATION_SENT
|
| info | |
| sipMessageRaw |
SIP сообщение, соответствующее статусу:
- RECEIVED - Получено входящее сообщение в SIP INVITE
- ACCEPTED - SIP 200 OK или 202 ACCEPTED ответ на запрос SIP MESSAGE
- FAILED - SIP 4xx ответ от SIP-сервера
- DELIVERED - Получено входящее уведомление о доставке SIP MESSAGE со статусом Delivered
- DELIVERY_FAILED - Получено уведомление о доставке со статусом Delivery Failed
|
| nodeId | |
| sessionId | |
| appKey | |
| sendIMDN | Отправить уведомление о доставке |
| messageId | |
| nodeId | |
| sessionId | |
| appKey | |
| subscribe | SIP subscribe - подписка на уведомления SIP сервера: RFC3265 |
| event | Тип события: reg |
| expires | Интервал в секундах. В течение этого интервала WCS-сервер будет делать re-SUBSCRIBE. |
| terminate | |
| nodeId | |
| sessionId | |
| appKey | |
| SubscriptionStatusEvent | Изменение статуса SIP-подписки |
| event | |
| expires | |
| terminate | Если true то подписка должна быть деактивирована |
| requestBody | Поле, содержащее пришедший XML с SIP стороны |
| status |
Статус подписки: Active, Terminated
|
| info | |
| sipMessageRaw |
SIP сообщение, изменяющее статус подписки:
- Active - SIP 200 OK ответ на запрос SUBSCRIBE
- Terminated - SIP 200 OK ответ на запрос SUBSCRIBE с expires:0
- Terminated - SIP NOTIFY запрос со статусом terminated внутри тела сообщения NOTIFY
|
| nodeId | |
| sessionId | |
| appKey | |
| sendXcapRequest | Отправка XCAP запроса |
| url | URL для XCAP запроса |
| nodeId | |
| sessionId | |
| appKey | |
| XcapStatusEvent | Получение XCAP ответа |
| url | |
| xcapResponse | Тело XCAP-ответа |
| publishStream | Публикация потока на сервер |
| name | Имя публикуемого потока. Должно быть уникальным. Если поток с таким именем уже опубликован, публикация данного потока будет запрещена. |
| mediaSessionId | Идентификатор медиа сессии |
| published | Если true, то поток является опубликованным |
| hasVideo | Сигнализирует присутствие видео в потоке |
| status | |
| sdp | SDP, полученное от клиента |
| nodeId | |
| sessionId | |
| appKey | |
| record |
Если true, то опубликованный поток записывается
|
| custom | Объект с произвольным содержимым для идентификации клиента на бэкенд сервере |
| unPublishStream | Остановка публикации потока |
| name | |
| mediaSessionId | |
| published | |
| hasVideo | |
| status | |
| sdp | |
| nodeId | |
| sessionId | |
| appKey | |
| record | |
| custom |
Объект с произвольным содержимым для идентификации клиента на бэкенд сервере, переданный в /publishStream
|
| playStream | Воспроизведение потока |
| name | Имя воспроизводимого потока |
| mediaSession | |
| published | |
| hasVideo | |
| status | |
| sdp | |
| nodeId | |
| sessionId | |
| appKey | |
| custom | Объект с произвольным содержимым для идентификации клиента на бэкенд сервере |
| playHLS | Воспроизведение HLS потока с сервера |
| name | |
| mediaSessionId | |
| mediaProvider | |
| nodeId | |
| sessionId | |
| appKey | |
| token | Токен для аутентификации клиента |
| playRTSP | Воспроизведение RTSP потока с сервера |
| name | |
| mediaSessionId | |
| mediaProvider | |
| nodeId | |
| sessionId | |
| appKey | |
| rtspUrl | URL RTSP потока |
| User-Agent | User agent клиента |
| stopStream | Остановка воспроизведения потока |
| name | |
| mediaSessionId | |
| published | |
| hasVideo | |
| status | |
| sdp | |
| nodeId | |
| sessionId | |
| appKey | |
| custom |
Объект с произвольным содержимым для идентификации клиента на бэкенд сервере, переданный в /playStream
|
| StreamStatusEvent | Изменение статуса потока |
| name | |
| status |
Статус потока: PUBLISHING, UNPUBLISHED, PLAYING, STOPPED
|
| mediaSessionId | |
| published | |
| hasVideo | |
| sdp | |
| info | |
| nodeId | |
| sessionId | |
| appKey | |
| record | |
| custom |
Объект с произвольным содержимым для идентификации клиента на бэкенд сервере, переданный в /publishStream или /playStream
|
| StreamKeepAliveEvent | Keep-alive запрос для потока |
| nodeId | |
| appKey | |
| sessionId | |
| mediaSessionId | |
| name | |
| published | |
| hasVideo | |
| status |
Статус потока: PLAYING, PUBLISHING
|
| info | |
| mediaProvider |
Используемая технология передачи медиа на WCS JavaScript API, возможные значения: WebRTC, Flash
|
| record | |
| sendData | Отправка данных |
| operationId | Уникальный идентификатор для отправляемых данных |
| payload | JSON объект с данными |
| nodeId | |
| sessionId | |
| appKey | |
| OnDataEvent | Получение входящих данных |
| operationId | |
| payload | |
| nodeId | |
| sessionId | |
| appKey | |
| DataStatusEvent | Изменение статуса отправленных данных |
| operationId | |
| status |
ACCEPTED, FAILED
|
| info | |
| nodeId | |
| sessionId | |
| appKey | |
| ErrorEvent | Неклассифицированная ошибка |
| info | Дополнительная информация об ошибке |
| sendBugReport | Отправка отчета об ошибке для сохранения на сервере |
| text | Отправка отчета об ошибке для сохранения на сервере |
| type |
Если тип no_media, сервер включит дамп трафика перед созданием этого багрепорта, чтобы убедиться в том, что трафик идет правильно для этого пользователя. Отправка багрепортов такого типа может быть полезна при диагностике проблемы когда звук передается только в одну сторону
|
| nodeId | |
| sessionId | |
| appKey | |
| BugReportStatusEvent | Подтверждение отправки отчета об ошибке с выводом имени сохраненного файла |
| filename | Имя файла на сервере, под которым был сохранен багрепорт |
| nodeId | |
| sessionId | |
| appKey | |
| sendStreamEvent | Событие, сигнализирующее изменение состояния публикуемого потока |
| info | Дополнительная информация |
| type |
Тип события: audioMuted, videoMuted, audioUnmuted, videoUnmuted
|
| mediaSessionId | Идентификатор публикующей медиасессии |
| nodeId | |
| sessionId | |
| appKey | |
| StreamEvent | Событие, сигнализирующее изменение состояния потока для подписчиков |
| info | Дополнительная информация |
| type |
Тип события: audioMuted, videoMuted, audioUnmuted, videoUnmuted
|
| mediaSessionId | Идентификатор медиасессии подписчика |
| nodeId | |
| sessionId | |
| appKey | |
| Context Parameters | Параметры контекста. Используются для всех вызовов от WCS к бэкенд серверу |
| nodeId | Уникальный идентификатор инстанса WCS сервера |
| sessionId | Уникальный идентификатор коннекта клиента на этом инстансе |
| appKey | Идентификатор приложения на WCS сервере, с которым пользователь установил соединение |