Вопросы и ответы

Что такое REMB?

REMB расшифровывается как расчетный максимальный битрейт получателя (Receiver Estimated Maximum Bitrate).

Что такое WebRTC NACK?

WebRTC NACK – это отрицание подтверждения. Один из механизмов корректировки ошибок доставки в WebRTC.

iPhone Safari WebRTC

Поддерживает ли iPhone Safari браузер технологию WebRTC?

Как пользоваться багрепортами в WCS

Багрепорты предназначены для снятия детализированных логов, которые могут значительно ускорить время техподдержки в случае, если что-то не работает или работает не так как хотелось бы.
Настоятельно рекомендуем предоставить возможность отправить сообщение об ошибке для ваших пользователей. Для этого есть специальная Javascript функция и это не займет много времени.

Есть несколько настроек, с помощью которых конфигурируется багрепортинг:

1. flashphoner.xml

<push_log>true</push_log>

Эта настройка говорит веб-клиенту отправлять логи клиента на сервер и сохранять их там.
Все логи браузера, которые попадают в debug консоль будут буферизованы и отправлены на WCS сервер по RTMFP или Websocket протоколу. Таким образом, при использовании SSL Websockets, эта операция будет безопасной и отправляемые логи не могут быть перехвачены, т.к. используется шифрование.

2. Серверные логи структурированы в следующем виде:
— client_logs
— server_logs
— bug_reports

При создании багрепорта, файл багрепорта будет размещен в каталоге bug_reports.
В начале этого файла будет указан путь к папке, которая содержит полный набор логов для клиента, который инициировал этот багрепорт.

Другая возможность отладки — это использование tcpdump. WCS может использовать tcpdump для сохранения трафика конкретного пользователя для SIP, RTP и SRTP и ICE (WebRTC traffic).
Для этого нужно будет установить соответствующую настройку.

flashphoner.properties

client_dump_level=0

0 — сохранять только логи сервера и не сохранять трафик
1 — сохранять логи сервера и SIP трафик
2 — сохранять логи сервера, SIP и остальной трафик. Остальной трафик будет включать в себя RTP, SRTP, ICE, DTLS, STUN, RTCP трафик, который обрабатывается на тех же портах.

Таким образом, опция client_dump_level=2 вызовет наиболее детальную запись логов и трафика. Рекомендуется иметь быстрые и вместительные SSD диски объемом около 100 гигабайт чтобы уверенно использовать такой режим отладки на боевом сервере.

client_log_level=info

Есть три уровня детализации логов сервера:

info — INFO log4j.properties
debug — DEBUG log4j.properties
trace — TRACE log4j.properties

Каждый пользователь имеет свой контекст логов на стороне сервера.
Когда пользователей отправляет багрепорт, его контекст логгирования переключается в уровень детализации, указанный в этой настройке.

И наконец, функция Flashphoner client side API sendBugReport();
Эта функция как раз отвечает за отправку багрепорта. Дайте вашим пользователям написать простой багрепорт, например «нет звука» и нажать кнопку «отправить» для того чтобы ускорить решение возможных проблем.

Краткое резюме, как включить режим багрепортинга с полной отладкой:

Client flashphoner.xml: 

<push_log>true</push_log>

Server flashphoner.properties
client_dump_level=2
client_log_level=trace

Как определить доступны ли порты используемые Web Call Server?

Для нормального использования Web Call Server должны быть открыты как минимум несколько портов:

Как настроить две разные Click2Call кнопки чтобы они регистрировались на разных серверах и звонили на разные номера?

В этом случае вместо account.xml и вместо callee.xml
у вас должны использоваться динамческие скрипты, например account.php и callee.php
эти скрипты должны быть прописаны в конфиге flashphoner.properties
соответственно они должны отдавать нужные xml чтобы схема работала.

На клиенте Click2Call.js используется Javascript функция loginByToken("token") для логина, и callByToken("token") для звонка.
Например вы можете в JS сделать чтобы для первой кнопки вызывалась функция loginByToken("button1") и callByToken("callee1")
и для второй loginByToken("button2") и callByToken("callee2").

Пример:

Логин кнопки
1. loginByToken("button1")
2. WCS сервер отправляет запрос вашему PHP скрипту: account.php?token=button1
3. Ваш скрипт отдает XML для первого сервера(похожий на account.xml).

Звонок кнопки
1. callByToken("callee1")
2. WCS сервер отправляет запрос вашему PHP скрипту: callee.php?token=callee1
3. Ваш скрипт отдает XML для первого сервера(похожий на callee.xml).

Аналогично для других кнопок.
Дополнительная информация доступна здесь:

http://docs.flashphoner.com/display/WCS/Click2call
http://docs.flashphoner.com/display/WCS/Click2call+Quick+Start

Должна ли клиентская часть Web Call Server быть развернута на Linux или можно развернуть ее под Windows?

Клиентская часть может быть развернута под Linux, Windows или другой OS потому что клиент содержит только веб-скрипты и файлы типа Javascript, CSS, images, Flash, HTML, и т.д — то что выполняется на стороне веб-браузера. Таким образом клиент может быть расположен под Linux apache или nginx сервером или на Windows сервере с использованием веб-сервера от Microsoft или того же apache.


 

 

 

Try Web Call Server

This is 30-days trial version. Please fill out the form to get license.


Processing...