Тестирование сервисов видеоконференций
Существующие сервисы, такие как Zoom.us, InterCall, Twilio, Vidyo, iMeet и так далее, а также другие программно-аппаратные решения и продукты других производителей — не предоставляют гибких возможностей конвертации конференций, организованной с использованием протокола SIP, в массовую трансляцию в сети Интернет.
Возможные варианты интеграции между двумя серверами потокового видео Adobe Media Server и Wowza Streaming Engine, сервисами Twilio, Zoom.us, Vidyo, Lifesize, Blue Jeans, iMeet, софтфоном CounterPath Bria 4 и платформами Flashphoner Web Call Server 5 в различных сочетаниях представлены ниже.
Содержание
- Критерии тестирования
- Тестирование с Twilio
- Тестирование c Zoom.us
- Тестирование c Vidyo
- Тестирование c Blue Jeans
- Тестирование c Lifesize
- Результаты тестирования
- Дополнительные ресурсы
Критерии тестирования
Решив протестировать различные сервисы и программные продукты на взаимную совместимость и возможность осуществлять массовую трансляцию в сети Интернет, мы отобрали сервисы и продукты по нескольким критериям.К основным требованиям к серверу, осуществляющему интеграцию между другими сервисами и ПО:
- гибкий механизм настроек под различные интегрируемые сервисы и программные продукты;
- наличие подробной документации;
- наличие технической поддержки от производителя;
- простота администрирования.
При выборе сервисов основной критерий состоял в том, чтобы:
а) сервис мог бы предоставить тестовый период для использования программного обеспечения;
б) сервис должен декларировать или подразумевать что существует поддержка подключения участников по протоколу SIP.
Из этого правила нами были допущены ряд исключений с сервисом zoom.us и с Bria, так как с этим софтфоном и его возможностями и особенностями использования мы хорошо знакомы, а сервис zoom.us достаточно новый стартап с декларированными большими возможностями, поэтому-то мы и решили его протестировать (даже не смотря что подключение по протоколу SIP у этого сервиса платное).
Типовая схема взаимодействия между источником (справа) и получателем контента (слева) отображен на схеме ниже:
Надо отметить что при проверке различных вариантов организации взамиодействия через интеграционную платформу мы перестраивали указанную схему в зависимоти от потребностей эксперимента.
Сервера потокового видео, использовавшиеся в эксперименте:
- Wowza Streaming Engine
- Adobe Media Server
Интеграционная платформа:
- Flashphoner Web Call Server 4
- REST консоль (Google Chrome)
Источники трансляции:
- CounterPath Bria 4
- сервис Twilio.com
- сервис Zoom.us
- сервис iMeet
- сервис Vidyo
- сервис Blue Jeans
- сервис Lifesize
Программы для просмотра трансляции (или контента):
- Flash Player
Программы для отправки RTMP потока на сервер:
- Adobe Flash Media Live Encoder 3.2
Необходимым условием проведения эксперимента является наличие корректно установленных и сконфигурированных программных продуктов, описанных выше.
Также на момент тестирования Web Call Server’а с сервисом Twilio необходимо установить, какой публичный IP адрес выделен оператором связи для доступа Web Call Server’а в Интернет и прописать этот адрес в настройках SIP домена. Ту же самую операцию необходимо проделать для публичного IP адреса, который используется для тестировани сервиса Twilio с Bria (установленном на локальном компьютере).
Тестирование с Twilio
С целью проверки возможности интеграции Web Call Server c вируальной IP PBX было протестированно взаимодействие с сервисом Twilio. Схема организации эксперимента отображена на схеме:
Настройка учетной записи Twilio и SIP домена
Для начала использования сервисом Twilio необходимо настроить учетную запись на сервисе и создать домент, к которому будут подключаться софтфоны. Последовательность этих действий отображенна на следующих скриншотах:
Создание домена — в нашем случае flashphoner2
Создание списка доступа и определение прав доступа для домена
Важно включить в этот список как IP адреса абонентских устройств (софтфонов), так и IP адрес Web Call Server
Формирование списка IP адресов, для которых разрешен доступ к домену
Формирование прав доступа
После того, как создан домен в сервисе Twilio, сформированны права доступа и список IP адресов, для которых разрешен доступ — можно приступить к конфигурированию софтфона, в нашем случае — Bria 4.
Настройка Bria и подключение к домену Twilio
В настройках Bria необходимо создать учетную запись (эккаунт) для доступа к Twilio, так, как показанно на скриншотах ниже:
Там же в настройках Bria надо сконфигурировать использование аудиокодеков: G711 aLaw, uLaw а также видеокодека H.264.
После чего можно совершить тестовый звонок через Bria и прослушать через софтфон запись автоответчика, предоставленную Twilio.
Если домен на сервисе скофигурирован правильно (и запись автоответчика слышна в Bria), можно приступать к созданию управляющей команды для Web Call Server’а.
Интеграция с Zoom
С ростом интереса к дистанционному обучению и терреториально распределенному обмену аудио/видео информацией в режиме реального времени — набирают популярность различные сервисы, предоставляющие необходимый функционал. Одним из таких сервисов является zoom.us.
Схема организации тестирования с использованием этого сервиса описана ниже:
Для начала необходимо произвести настройку учетной записи и выполнить шаги по “иницииации” виртуальной учебной аудитории (см. cкриншот).
После инициации на локальном компьютере будет запущено программное обеспечение, предоставленное сервисом, которое захватит голос с микрофона и видео с камеры компьютера.
Каждой встрече присваивается уникальный девятизначный ID, сообщив который вместе с IP адресом сервиса, по которому ведется трансляция, можно пригласить “на встречу” сторонних участников. Последовательность действий показана на следующих скриншотах.
В конечном итоге, имея IP адрес и ID встречи, предоставляемые сервисом zoom.us мы можем настроить Web Call Server 4 и средство просмотра для того, чтобы поучаствовать “во встрече”.
После выполнения запроса со стороны Web Call Server произойдет подключение WebCallServer к организованной zoom.us встрече (при этом Web Call Server будет выступать как один из “слушателей”), одновременно ответ (контент сервиса zoom.us), полученный Web Call Server – будет перенаправлен Web Call Server далее на сервера потокового видео (что мы и видим на скриншотах ниже):
В данном конкретном случае с сервисом zoom.us неодходимо дополнительно подключиться к конкретной “встрече”, передав на сервер zoom.us конкретный идентификатор (предоставленный сервисом) “встречи” (в нашем случае это 311 705 123 ). Одним из способов является тоновый набор DTMF (например на клавиатуре софтфона). Такую же операцию может осуществить Web Call Server .
В результате произойдет подключение конкретного “абонента” к трансляции конкретной “встречи”, как показанно на скриншоте ниже. Как видно на скриншоте, в окне интерфейса zoom.us виден логотип Web Call Server’а, который в данном случае является одним из “слушателей” запущенного “митинга”.
В тоже время в окне Wowza Flash Player мы видим трансляцию, которую через Web Call Server была перенаправлена с zoom.us на сервер Wowza Streaming Engine.
Таким образом посредством двух команд, переданных через REST консоль на Web Call Server нам удалось инициировать участие во встрече (“митинге”) на сервисе zoom.us и перенаправить контент (“картинку” и аудиопоток) на сервер Wowza Streaming Engine для последующего вещания через сеть CDN.
Интеграция с Vidyo
Еще одним сервисом, тестирование с которым мы произвели, является Vidyo.com. Потребность в массовой трансляции связанна с тем что данный сервис имеет ограниченное количество участников каждой трансляции (митинга) и соответственно может возникнуть потребность пользуясь привычным сервисом (Vidyo) провести мероприятие на 50, 100 или больше количество участников.
Как и в случае с другими сервисами — для начала требуется регистрация на сервисе.
После ввода данных произойдет подключение к сервису и появится возможность создать митинг (комнату для проведения вирутальной встречи). На скриншоте видно что каждому зарегистрировавшемуся и подключившемуся к сервису предоставляется уникальный добавочный номер (Extension).
Для подключения других участников к встрече ( к комнате ), потребуется послать приглашение другим участникам, например по электронной почте.
После нажатия на соответствующую иконку в окне программы — будет создан черновик сообщения в программе для обработки электронной почты, где будут видны данные для подключения, которые необходимо сообщить другим потенциальным участникам встречи.
Текст подобного письма приведен ниже:
Let's meet via Vidyo! — To join from your desktop or mobile device: Click join.vidyo.com/flex.html?roomdirect.html&key=1sQAgMIbOVihE3SFKKjl47oryI — To join from your H.323/SIP video conferencing system inside the US: 75.98.89.60 and 1501005148 and PIN (If required) — To join from your H.323/SIP video conferencing system outside the US: 31.186.235.56 and 1501005148 and PIN (If required) — To join from telephone: (800) 916-5971, Conference ID 1501005148, and PIN (If required) NOTE: Any video, audio and/or materials viewed during this conference may be recorded. Need help getting started? Check out the Vidyo Knowledge Center at www.vidyo.com/knowledge-center
После отправки запроса на web-сайте сервиса Vidyo появится новый участник встречи (с ID, который мы указали в команде Web Call Server’у).
А при этом в плеере, через который мы проверяем наличие трансляции с подключаемого сервиса — видно окно с картинкой, которая была передана инциатором митинга, то есть Web Call Server’ом.
Интеграция с сервисом Blue Jeans
Одним из относительно известных сервисов для организации конференций в Интернете является сервис Blue Jeans, интеграцию с которым мы также решили проверить.
Этот сервис также предлагает достаточно простой механизм организации встречи (митинга), для начала необходимо зарегистрироваться и создать свой эккаунт.
После этого шага, как и в предыдущих случаях с аналогичными сервсиами, необходимо проинсталлировать программное обеспечение, предоставляемое сервисом Blue Jeans. После инсталляции программного обеспечения Blue Jeans на ваш компьютер, дальнейшие действия совершаются через это программное обеспечение.
Естественно чтобы подключить кого-то ко встрече, необходимо эту встречу организовать, а для этого в ПО Blue Jeans такую встречу необходимо создать и после создания — отправить потенциальным участникам данные встречи, в данном случае:
- IP адрес (dial IP)
- ID встречи (meeting ID)
- Код верификации (passcode)
Если второй участник, которого вы хотите пригласить, пользуется таким же ПО Blue Jeans, сервис Blue Jeans предлагает ввести код в специальном окне (“pairing code”) и можно “запараллелить” ваше и его программное обеспечение. Впрочем такая функция для целей нашего тестирования не использовалась, мы использовали предоставленные сервисом “meeting ID” и “passcode”.
Необходимо отметить, что данные для Domain мы почерпнули из комьюнити пользователей Blue Jeans, так как непосредственно при создании комнаты предлагается использовать IP адрес (как показанно выше) для дозвона или доменное имя bjn.vc. То что необходимо использовать нотацию sip.bjc.vc для подключения с использованием SIP — расписанно в сообщениях комьюнити.
проверяя возможности интеграции между Blue Jeans и Web Call Server 4 мы с использованием REST консоли отправили на адрес Web Call Server 4: http: //107.179.239.120:9091/RESTCall/call REST запрос, как это было описанно в предыдущей инструкции.
Надо отметить что в запросе в качестве поля callee используется ID митинга, а в качестве sipDomain — данные взятые из комьюнити, то есть sip.bjc.vc
После подключения в окне ПО Blue Jeans можно увидеть что в митинге появились несколько участников (один из них Bria, второй Web Call Server 4), как показанно ниже:
В проигрывателе мы соответственно можем наблюдать “картинку” с локального компьютера (как показанно ниже), то есть мы видим то, что “видит” ПО Blue Jeans на локальном компьютере. Далее ПО Blue Jeans отправляет это видео на сервис, а уже Web Call Server инициирует и получает ответ от сервиса Blue Jeans и перенаправляет ответ сервиса на сервер потокового видео (AMS или WSE, в нашем эксперименте), которое мы и видим в окне Flash Player’а.
По общему впечатлению, за исключением “умолчания” о том что для SIP соединения нужно использовать специфичный домен, общее взаимодействие с сервисом Blue Jeans оказалось простым и относительно беспроблемным.
Интеграция с Lifesize
Еще одним из доступных сервисов, интеграция с которым проверялась является сервис Lifesize.
Примерно также как и все с предыдущеми сервисами воспользоваться сервисом можно после регистрации на сайте, скачивания и установки программного обеспечения, предоставленного сервисом и именно это мы и сделали.
После установки программного обеспечения на локальный компьютер, можно сказать “как обычно”, нужно создать встречу.
Для каждой встречи предоставляется контакты (данные), по которым сторонний участник может осуществить дозвон (обращение) и поучаствовать во встрече.
Предоставленные сервисом Lifesize данные мы использовали для дозвона и приятно были поражены тем, что каждый этап подключения к сервису сопровождается визуальным информированием (и голосовым помощником, что впрочем, является общей функцией для всех аналогичных сервисов).
Web Call Server, как обычно, с помощью команды через REST консоль, установил по предоставленым данным (см. выше) соединение с сервисом. Life-size. Сам сервис показывает в своей программе окно подключившегося участника. И показывает количество участников.
И результаты ответа были транслированны Web Call Server на сервер потокового вещания (AMS или WSE).
По субъективным ощущениям данный сервис более требовательный к качеству канала связи, однако данное наблюдение не является каким-то подтвержденным фактом, и полностью субъективно.
Результаты тестирования
Тесты показали наличие следующих возможностей, которые появляются в результате интеграции Wowza Streaming Engine или Adobe Media Server с Web Call Server:
- возможность иницииации вызова на сервис Zoom.us и управление вызовом;
- возможность трансляции потокового контента в том числе с несколькими подключениями с сервиса Zoom.us;
- возможности Web Call Server’а дозваниваться до сервиса Twilio и абонентов, подключенных к этому сервису;
- способность управлять вызовами у подключенных через IP-PBX OpenSIPS абонентов интеграция с сервисом Vidyo оказалась более простой, чем с сервисом zoom.us, так как инициация и управление соединением в Web Call Server ограничилось одной командой;
- сервис Lifesize субъективно потребовал большей пропускной способности для качественного отображения видео в окне сервиса, в то время как сервис Blue Jeans в использовании оказался простым и позволил практически в несколько элементарных шагов осуществить одновременное подключение к митингу Bria и Web Call Server 5 ;
Результаты тестирования сведены нами в таблицу ниже:
Загрузить Web Call Server 5
Системные требования: Linux x86_64, 1 core CPU, 2 Gb RAM, Java
Установка:
- wget https://flashphoner.com/download-wcs5.2-server.tar.gz
- Распаковать и установить с помощью скрипта 'install.sh'
- Запустить сервер с помощью команды 'service webcallserver start'
- Открыть веб-интерфейс https://host:8444 и активировать вашу лицензию
Если вы используете серверы Amazon EC2, то скачивать ничего не нужно.