На сегодняшний день видеоконференцсвязью (ВКС) никого не удивишь. Бесплатные видеозвонки доступны практически всем. Даже сервисы для обмена текстовыми сообщениями постепенно получили функционал сначала звонка, а затем и видеочата. Существуют также бесплатные приложения с базовым функционалом для объединения нескольких участников в видеоконференцию. Но есть ряд минусов подобного общения: качество связи иногда оставляет желать лучшего, сервис находится в облаке и, следовательно, конфиденциальность и бесперебойность переговоров не гарантирована, функционал минимален и не позволяет решить большинство поставленных задач.
Для того, чтобы обеспечить качественную коммуникацию и решение бизнес-процессов, организации используют профессиональные решения ВКС. На сегодняшний день на рынке представлены несколько крупных зарубежных производителей аппаратных решений видеоконференцсвязи: Polycom, Cisco (в свое время приобрела компанию Tandberg и теперь продолжает развивать ВКС под своим брендом), LifeSize, Huawei и другие. Всё это производители аппаратных решений, а именно, декодированием/обработкой/кодированием видео и звука занимаются специализированные серверы, оборудованные DSP (Digital Signal Processor). А для оснащения переговорных комнат используются кодеки, включающие сами кодирующие устройства с DSP, а также камеры и спикерфоны.
За последние годы эти бренды сформировали общий стандарт качества и функциональных возможностей ВКС. Сюда относится: HD-качество видеотрансляции, одновременное проведение на одном сервере нескольких независимых конференций, планирование мероприятий и создание виртуальных переговорных комнат. Сюда также можно отнести гибкую настройку раскладки окон участников и активацию по голосу — т.е. в основном окне отображается говорящий в настоящий момент.
В начале развития отрасли ВКС с этими задачами могли справиться только специализированные серверы с дорогостоящими медиа-платами. Но за последние годы производительность х86-процессоров достигла такого уровня, что на рынке стали появляться программные решения ВКС под стандартную серверную архитектуру.
Компания STSS — отечественный производитель серверного оборудования совместно с компанией Mind — ведущим отечественным разработчиком программного обеспечения ВКС, разработали готовое решение STSS Flagman MIND для видеоконференцсвязи и проведения вебинаров.
Решение не только соответствует всем стандартам отрасли ВКС, но и имеет ряд преимуществ по сравнению с аппаратными реализациями вышеперечисленных производителей.


Стоимость решения


Рекомендованная цена сервера Polycom на 10 HD (720p) абонентов составляет около $76К. Аналогичная конфигурация сервера STSS Flagman MIND стоит около $14К, включая лицензии Mind Server, что в 5 раз меньше стоимости сервера Polycom.
Рассмотрим стоимость оборудования для переговорных комнат: кодек, поворотная камера с 4-кратным оптическим увеличением и внешний микрофон фирмы Polycom стоит около $6,8К. Аналогичный набор оборудования на базе STSS MIND стоит не более $2,5K. При этом, роль кодека может выполнять любой ПК средней производительности.

Универсальность и совместимость


Одним из главных преимуществ решения на базе Mind является поддержка основных технологий и протоколов таких как:
— Стэк H.323 необходимый для интеграции с аппаратными решениями ведущих производителей профессионального ВКС-оборудования.
— SIP для интеграцией с IP-телефонией
— WebRTC для участия в конференциях и вебинарах через браузер из любой части планеты

Сроки поставки


Этот критерий играет не маловажную роль в реализации проектов. Срок поставки оборудования ВКС от Polycom, Cisco или Huawei составляет несколько месяцев. А срок поставки решения ВКС STSS MIND не превышает 10 дней.

Масштабируемость


Задача расширения портовой ёмкости сервера, на примере того же Polycom, решается приобретением дополнительных лицензий на подключение и медиаплат для увеличения производительности. Для примера, подобный апгрейд на 5 HD-портов обойдется в $29K, и это не считая стоимости медиаплаты, которая стоит $41K.
Решение STSS MIND построено на базе стандартной серверной архитектуры и специализированного ПО на базе Linux. При необходимости повышения производительности сервер можно модернизировать, установив второй или заменив процессоры на более производительные. Гибкий и удобный конфигуратор STSS MIND позволит подобрать оптимальную конфигурацию сервера под существующие задачи или рассчитать вариант решения с запасом производительности для будущего роста потребностей. Расширение лицензии Mind обойдётся в шесть раз дешевле Polycom, и не превысит $4,5К.

Процесс обработки медиапотоков


В самых общих чертах процесс обработки медиапотока выглядит следующим образом:
— клиентский компьютер докладчика кодирует сигнал с видеокамеры и пересылает его серверу Mind (в системе Mind данный процесс называется публикацией или вещанием).
— сервер обрабатывает медиапоток и пересылает его всем участникам мероприятия
— компьютеры участников декодируют медиапоток и выводят его на экраны мониторов

Нагрузка на клиентов, сервер и сеть зависит от качества видео и от количества медиапотоков:
— В случае вебинара с одним докладчиком каждый участник получает и декодирует только один медиапоток.
— В случае конференции, где правом транслировать видео обладает множество участников, браузер каждого клиента получает и декодирует столько потоков, сколько участников включили свои видеокамеры (узкая полоса пропускания и слабые клиентские компьютеры, в такой ситуации, могут сделать проведение конференции невозможным

Для оптимизации использования полосы пропускания сервер Mind имеет два режима трансляции:
Потоковый режим (streams) – все видеопотоки передаются всем участникам мероприятия. Объем трафика между сервером и клиентом растет с увеличением числа участников, публикующих своё видео.
Режим микширования (mosaic) – видеопотоки всех участников объединяются в один поток заданного качества. Объем исходящего от сервера и входящего к клиентам трафика не зависит от числа вещающих участников.

Для удобства управления в системе Mind созданы несколько медиа-профилей (профилей производительности), каждый из которых задает качество видео и режим трансляции.
В момент старта мероприятия каждому участнику назначается профиль производительности по умолчанию, заданный в настройках домена. Как только, в процессе конференции, количество вещающих участников превышает некоторое пороговое значение, система автоматически переключает участников на другой медиа-профиль — например, профиль с режимом трансляции мозаика и более низким качеством вещания.
Автоматическое переключение профилей производительности позволяет снизить нагрузку на все компоненты системы и не прерывать идущее мероприятия.

Состав решения STSS MIND


Конфигуратор решения позволяет быстро и точно оценить бюджет проекта ВКС и сформировать спецификацию в несколько кликов.

В состав решения входит:

1. Одна из пяти моделей сервера STSS Flagman MIND, оптимизированная для работы с определённым количеством участников.

STSS Flagman MIND110.4-002LF — самая младшая модель, поддерживающая одновременное подключение до 15 WebRTC-клиентов или до 4 SIP/H323-устройств. В режиме вебинара сервер обеспечит участие до 75 участников в режиме WebRTC и до 375 — в режиме Flash.

STSS Flagman MIND116.4-004LH — переходная модель. Этот сервер всего на 30% мощней предыдущего, но имеет поддержку двойного блока питания и дисков с возможностью горячей замены. Модель ограничена 20 подключениями WebRTC или 5 SIP/H323-устройствами.

STSS Flagman MIND216.4-004LH — компактный производительный сервер высотой 1U с отказоустойчивым блоком питания и дисками с возможностью горячей замены. Обеспечивает одновременное подключение: ВКС: до 50 портов WebRTC (браузер) или до 13 портов SIP/H323 (кодек) / Вебинар: до 250 участников WebRTC или до 1250 участников Flash.

STSS Flagman MIND226.4-008LH и STSS Flagman MIND240.4-008LH имеют необходимую производительность для обеспечения работы до 150 WebRTC-соединений. При работе через SIP или H323 — сервер способен объединить в конференцию почти 4 десятка устройств. С помощью этого сервера можно проводить вебинары HD-качества на тысячи участников. Дисковая подсистема серверов позволит длительное время хранить архив записей всех мероприятий.

2. Программное обеспечение Mind Server с необходимым набором лицензий ВКС или Вебинар.

Лицензии ВКС делятся по сроку действия (бессрочные и на 1 год) и по типу устройств (порт и мультипорт).

Лицензии ВКС на 1 год включают техническую поддержку сроком на 1 год. Бессрочные лицензии ВКС также обеспечены техподдержкой сроком на 1 год.
Лицензия «порт» — позволяет объединять в конференцию только WebRTC-пользователей. Лицензия «мультипорт» вместе с WebRTC поддерживает также и SIP/H323-устройства.
Возможно приобретение как порт- так и мультипорт-лицензий для одного сервера, но срочные и бессрочные лицензии смешивать невозможно.

Лицензии Вебинар различаются по такому же принципу. В дополнение ко всему есть ещё отличие по количеству докладчиков: до 2 или до 4 докладчиков вебинара.

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

3. В конфигураторе решения STSS MIND представлен выбор специализированного оборудования для комплектации персональных рабочих мест, переговорных комнат и конференц-залов.

Для оснащения персональных рабочих мест рекомендуется:

Практичная FullHD-камера Logitech HD Pro Webcam C920.

В качестве аудио-гарнитуры предложено несколько моделей Jabra:
Jabra Evolve 40 UC Stereo — проводная стерео-гарнитура с блоком управления и пассивным шумоподавлением.
Jabra Pro 930 — беспроводная DECT моно-гарнитура с базовой USB-станцией.
Jabra Motion UC — беспроводная Bluetooth моно-гарнитура способная подключаться одновременно к ПК и мобильному телефону.

Для оснащения малых переговорных комнат рекомендуется:

Камера для видеоконференцсвязи Prestel HD-PTZ6 — USB 2.0 камера с разрешением 1920х1080 пикселей, оснащенная электроприводами панорамирования: ±180°, наклона: от -30° до +90° и интерфейсами управления RS-232 и RS-485.

В качестве аудио-системы предложена модель Jabra Speak 510+. Этот спикерфон имеет подключение по USB и Bluetooth. Поддерживает до 15 часов работы от аккумулятора в режиме разговора на одной зарядке.

Для оснащения средних переговорных комнат рекомендуется:

Камера для видеоконференцсвязи Prestel HD-PTZ2W — поворотная Full HD камера с широкоугольным объективом (обзор до 105°), интерфейсами USB 3.0 и DVI-I (HDMI), обеспечивающая передачу видео в формате 1080р30. 3-кратное оптическое и 3-кратное цифровое увеличение совместно с широким углом обзора обеспечивают полный охват переговорной комнаты с возможностью детального отображения участников видеоконференции.

В качестве аудио-системы предложена модель Jabra Speak 810 UC — этот USB-спикерфон оснащён микрофонами ZoomTalk. Благодаря цифровой обработке сигнала он обеспечивает кристально чистый звук без эха и искажений, в том числе на максимальном уровне громкости.

Для оборудования конференц-залов рекомендуется:

Камера для видеоконференцсвязи Prestel HD-PTZ8IP — сетевая 1080p60 камера с поддержкой интерфейсов: RJ-45, HDMI, CVBS, а также USB 3.0 с обратной совместимостью с USB 2.0, оснащенная объективом с 20х оптическим увеличением. Высокая чувствительность матрицы (0.5 лк), высокое отношение сигнал/шум (> 55 дБ), а также встроенные алгоритмы 2D и 3D шумопонижения обеспечивают чистое и яркое изображение, даже в условиях недостаточного освещения в переговорной комнате. 20-ти кратный оптический зум дает возможность детально рассмотреть участников видеоконференции, находящихся в самых дальних углах обширных конференц-залов.
Я уже знакомил Вас с этой камерой в статье Видеонаблюдение и аналитика Macroscop в деталях, где она показала прекрасные способности в увеличении и детализации удалённых объектов.



Так как конференц-залы имеют большую площадь и способны вмещать десятки докладчиков, для качественной передачи звука используют конгресс-системы. В нашем случае используется решение AVCiT с центральным модулем AVCiT C3101, способным коммутировать до 128 пультов.
AVCiT D3103 — пульт делегата со сменным микрофоном позволяет участникам выступать, подавать заявки на выступление и слушать выступающего. Микрофон оснащен гибкой ножкой. Пульт также имеет выход для подключения наушников, обеспечивающих хорошую слышимость даже при сильном фоновом шуме. Чтобы предотвратить акустическую обратную связь, встроенный динамик приглушается при включении микрофона.
AVCiT D3102 — пульт председателя со сменным микрофоном, помимо функций пульта делегата, позволяет отключать микрофоны докладчиков.

Используя конфигуратор решений STSS MIND можно рассчитать стоимость готового решения ВКС под свои задачи.

Рабочее пространство сервиса ВКС Mind и доступный функционал в режиме пользователя





Для того, чтобы создать мероприятие необходимо выбрать тип мероприятия из всплывающего списка на закладке «Начать сейчас».
Произойдёт автоматический вход в созданное мероприятие.
В меню мероприятия доступно несколько закладок.



Закладка «О мероприятии» отражает подробную информацию, включая прямые ссылки на мероприятие для гостей и докладчиков, которые позволяют посетить мероприятие откуда угодно где есть выход в интернет.



В разделе «Документы» можно разместить любые файлы, которые будут доступны для скачивания участникам мероприятия.



Режим «Доска» позволяет не только воспользоваться виртуальным флипчартом, но и загрузить в качестве подложки любой текстовый или графический документ, и производить записи и зарисовки прямо на нём.



Функционал «Опрос» особенно актуален для проведения вебинара, когда необходимо получить обратную связь от участников после проведённого мероприятия.



«Демонстрация рабочего стола» требует установку расширения Mind Screen Sharing для браузера. Этот функционал позволяет транслировать как рабочий стол целиком, так и определённое окно.



Настройки мероприятия включают полезный функционал, включая функцию «Прямая трансляция» и создание пригласительных билетов.



Пригласительные билеты могут быть рассчитаны на ограниченное количество пользователей. Это может пригодиться, когда Вы планируете пригласить определенное кол-во человек от одной организации. Таким образом ссылкой сможет воспользоваться любой из приглашённых, но при условии если выделенный лимит не превышен.



Помимо генерации пригласительных ссылок, участников можно приглашать лично.
Для этого вводится адрес электронной почты или SIP-устройства. Приглашаемый участник получает письмо вне зависимости от того зарегистрирован он в сервисе или нет. SIP-участник может получить входящий вызов, а пользователь мобильного приложения Mind Meeting, помимо письма в почту, получит на своё устройство сигнал-уведомление.
В письме-приглашении отражается ссылка на мероприятие и, пройдя по ней, участник может войти в сервис под своей учётной записью, зарегистрироваться (если функционал не заблокирован администратором) или войти как гость.



Для каждого участника можно установить индивидуальные права вещания. Установить ограничения, роль и настройки раскладки.



Верхняя панель включает в себя кнопки управления раскладками слева и кнопки управления сеансом справа.
С помощью них можно включать и отключать собственную камеру и микрофон, поднимать виртуальную руку (модератор, увидив её, может включить Вашу камеру или микрофон — если мероприятие происходит в режиме лекции) и менять качество трансляции.



Кнопка «Настройка оборудования» позволяет выбрать микрофон и камеру для использования в сеансе.



При выборе максимального качества трансляции, потоки проходят через сервер и транслируются всем участникам без изменения в максимальном разрешении. Если возможности канала или клиентского устройства ограничены — необходимо снизить качество c максимального до высокого. В данном режиме сервер будет самостоятельно комбинировать картинку, создавая единый поток из всех входящих. Таким образом конечный клиент будет получать всего один поток, включающий картинку от всех участников. Функционал «Постоянное присутствие» также будет доступен в этом режиме — сервер сам будет определять активность микрофона участника и выводить поток с его камеры в увеличенном окне.



Для планирования мероприятий существует удобная и интуитивно понятная форма для заполнения.



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

Рассмотрим подробнее архитектуру системы, технические требования и подробности настройки и администрирования.

Архитектура системы ВКС MInd


Возможности системы


Mind — это система видео-конференц-связи (ВКС), работающая на базе операционной системы Debian GNU/Linux и обеспечивающая обмен аудио- и видеоинформацией в реальном времени между двумя и более удаленными пользователями.
Система ориентирована на создание и проведение следующих типов мероприятий:
— видеоконференций
— вебинаров
— аудиоконференций

ВСК Mind позволяет:
— устраивать массовые онлайн-мероприятия
— транслировать видео с высоким разрешением
— быстро создавать мероприятия по шаблонам
— создавать постоянно действующие мероприятия – комнаты для онлайн встреч
— приглашать на мероприятия, как зарегистрированных в системе пользователей, так и участников со стороны
— создавать и использовать адресные книги
— гибко управлять правами и возможностями пользователей во время мероприятия
— записывать мероприятия на сервере

Клиенты могут принимать участие в мероприятиях Mind используя:
— веб-браузеры
— мобильные устройства
— другие программные или аппаратные системы ВКС по протоколу SIP и H.323
— звонки со стационарных или мобильных телефонов, при условии, что АТС предприятия интегрирована с системой Mind по протоколу SIP

Дополнительно, во время мероприятий участники могут использовать следующие функции:
— электронная доска
— демонстрация своего рабочего стола или его части
— обмен файлами
— демонстрация документов
— чат
— создание и проведение опросов
— приглашение новых участников в процессе мероприятия

Для обеспечения безопасности передачи данных система Mind поддерживает:
— подключение по протоколу SSL/TLS
— шифрование медиа-трафика DTLS-SRTP, AES128
— совместимость с корпоративными VPN (ViPNet, S-Terra)

Терминология



Для работы с системой, её настройки и чтения технической документации необходимо понимание следующих терминов:

Мероприятие
Любой сеанс видео/аудио связи в системе Mind. Мероприятия бывают однократными, запланированными или постоянными. В зависимости от настроек шаблона, на котором они основаны, мероприятия делятся на конференции и вебинары.

Вебинар
Мероприятие, в ходе которого видео/аудиопоток могут одновременно транслировать только несколько назначенных докладчиков. Число докладчиков зависит от параметров лицензии или подписки. Остальные участники выступают в роли зрителей, которые видят и слышат докладчиков, но не друг друга.

Конференция
Мероприятие, все участники которого могут одновременно передавать видео/аудио информацию и принимать медиапотоки от других участников.

Комната
Постоянно действующее мероприятие, выполняющее роль «виртуальной переговорной». Пользователи могут войти в неё в любое время. Предназначена для частых и спонтанных встреч.

Зарегистрированный пользователь
Имеет учетную запись с системе Mind. Может создавать мероприятия и принимать в них участие.

Гость
Не имеет учетной записи, но может принимать участие в мероприятии по специально высланному ему приглашению. Может просматривать запись мероприятия, если это разрешено модератором мероприятия.


Участники каждого отдельного мероприятия могут играть в нем следующие роли:

Организатор
Зарегистрированный пользователь системы, создавший мероприятие. Он обладает максимальным набором прав. Организатор автоматически становится модератором и может назначать других модераторов.

Модератор
Управляет правами всех участников и настройками текущего мероприятия, а также при необходимости назначает других модераторов и докладчиков. Модератор не может изменять права организатора.

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

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


Лицензирование


Лицензия – право на использование системы Mind согласно условиям договора между Группой компаний Mind и покупателем серверного решения.
Лицензия поставляется в виде файла с расширением *.key, который генерируется специалистами Mind и передается заказчику на этапе развертывания решения.
Файл лицензии содержит технические параметры серверного решения Mind, зафиксированные в договоре, в частности:
— срок действия лицензии
— DNS имя и IP-адрес компьютера, на котором устанавливается система
— ограничения на количество одновременно проводимых мероприятий, число пользователей, сервисные возможности

Пользователи должны обращаться к серверу Mind только по доменному имени или IP-адресу, указанным в лицензии. В противном случае им будет отказано в обслуживании.
Подписка
Объект, в котором хранятся индивидуальные права пользователя на работу с системой.
Подписка присваивается пользователю при создании его учетной записи и указывает:
— максимальное число мероприятий, которое пользователь может проводить одновременно
— максимальное количество участников и докладчиков
— возможность вести запись мероприятия, создавать опросы, и т. п.

Для использования технологии трансляции Flash дополнительно потребуется лицензия на Wowza Streaming Server, стоимость которой включается в общую стоимость решения Mind.


Структура системы Mind




Структурными единицами системы Mind являются сервер, домен и компания.

Сервер Mind является главной структурной единицей системы и может содержать один или более доменов. Настройки ассоциированные с сервером оказывают влияние на всю систему Mind.

Домен – представляет из себя виртуальный сервер ВКС со своим уникальным доменным именем, и со своими специфическими настройками. Все прочие объекты системы, такие как пользователи, мероприятия, шаблоны и т. п., существуют в рамках домена.

Компания – структурная единица, которую при необходимости можно создать в рамках домена. В отличие от домена, создание компании не затрагивает технические настройки мероприятий, такие как качество видео, режим и технология трансляции и т. п.
Компания позволяет администратору делегировать право создания и управления учетными записями пользователей другим сотрудникам предприятия.
Каждая компания может иметь свою подписку, ограничивающую возможности пользователей. Например, в одной компании могут быть собраны пользователи, которым разрешено проводить вебинар с 4-мя докладчиками, а в другой – пользователи, для которых доступны вебинары только с одним докладчиком.
Главные особенности Компании
— компании назначается владелец, который может создавать учетные записи, блокировать и разблокировать их, назначать администраторов компании
— администраторы компании, как и владелец, могут управлять учетными записями своей компании
— все члены одной компании автоматически видят друг друга в списке контактов
— все члены одной компании имеют одинаковую подписку, при этом суммарные возможности подписки ограничиваются размером компании, например, у компании не более 10 участников — это значит что во всех мероприятиях, проводимых всеми членами компании суммарно может быть не более 10 человек
— компания может иметь свою внешнюю адресную книгу.


Используемые технологии



Для передачи видео- и аудио потоков между WEB участниками системой Mind могут быть задействованы две технологии – WebRTC и Flash.

WebRTC (Web Real-Time Communication) – современная технология с открытым кодом, представляющая собой набор API функций отвечающих за установку соединения и передачу медиапотоков между клиентом и сервером.



В данном случае клиентом является веб-браузер или мобильный клиент Mind, роль сервера играет сервер Mind.
Веб-браузер, поддерживающий WebRTC, является готовым терминалом для системы видео-конференц-связи (ВКС). Всё, что необходимо сделать клиенту – открыть на сервере веб-страницу, содержащую правильным образом написанные java-скрипты.
JavaScript может обращаться к API функциям WebRTC, которые позволяют клиенту и серверу обмениваться следующими данными:
— Сигнальной информацией (signalling), необходимой для согласования параметров связи и установки соединения. Может передаваться по протоколу HTTP.
— Медиапотоками, передаваемыми по протоколу SRTP.
Процесс установки соединения с использованием WebRTC выглядит следующим образом
— Клиент отправляет серверу запрос «call offer» и получает в ответ «call answer“, используя протокол HTTP(s).
— Сервер и клиент анонсируют своих ICE кандидатов (ICE кандидат содержит IP-адрес и UDP/TCP порт протокола SRTP. Таким, образом сервер и клиент сообщают друг другу свои адреса и порты).
— Если сервер расположен за NAT он должен анонсировать внешний IP адрес NAT. Для решения этой задачи есть следующие средства:
• явно указать серверу Mind внешний IP адрес NAT. (Этот способ является наиболее эффективным и предпочтительным)
• указать серверу Mind адрес STUN сервера (Session Traversal Utilities for NAT) в конфигурационном файле /etc/xcoger/xcoder.cfg
— Клиент посылает первый SRTP пакет на анонсированный сервером адрес и UDP порт.
— Сервер Mind отвечает пакетами направленными не только на анонсированный клиентом адрес ICE кандидата, но и на адрес с которого фактически пришли пакеты от клиента (таким образом, даже если клиент расположен за NAT он всё равно получит видео и аудио поток от сервера Mind).
— Если сервер расположен за restricted-cone NAT ему следует первым инициировать соединение по протоколу SRTP на IP адрес клиента.
— Если в такой ситуации клиент расположен за NAT он должен воспользоваться STUN сервером чтобы узнать и анонсировать внешний IP адрес NAT (адрес STUN сервера для клиентов указывается в Панели администрирования сервера Mind).
— После успешной установки соединения по протоколу SRTP клиент и сервер начинают обмениваться медиапотоками.

Следует учитывать дополнительные замечания:
-Если клиент не может соединиться с сервером по портам UDP 20000-30000, по причине фильтрации трафика, он устанавливает соединение по протоколу TCP порты 20000-30000.
— Если межсетевые экраны фильтруют TCP порты 20000-30000 или клиент расположен за прокси-сервером следует использовать сервер TURN.

В самых общих чертах, идею работы STUN сервера можно описать следующим образом
— STUN сервер должен располагаться снаружи NAT
— в настройках WebRTC сервера должен быть указан URL STUN сервера
— WebRTC сервер обращается к STUN серверу и, поскольку запрос проходит через NAT сервер, STUN может сообщить WebRTC серверу его внешний IPадрес
— в итоге WebRTC сервер способен корректно информировать клиентов и они смогут установить с ними соединение

TURN сервер (Traversal Using Relays around NAT) используется в случаях, когда клиент не может отправлять UDP пакеты на порты 20000-30000
Это может случится если UDP трафик конкретного клиента фильтруется межсетевым экраном или клиент расположен за прокси-сервером.
В такой ситуации клиент инкапсулирует SRTP пакеты в пакеты HTTPS и пересылает TURN серверу.
Недостатком решения использования TURN сервера является тот факт, что теперь весь медиатрафик конкретного клиента туннелируется через TURN сервер, который становиться узким местом, как и сам прокси-сервер.
STUN и TURN серверы могут использоваться для решения аналогичных проблем с протоколом SIP.


Flash – мультимедийная платформа компании Adobe Systems для создания веб-приложений или мультимедийных презентаций.

Flash требует обязательной установки специального программного обеспечения Adobe Flash Player на всех клиентских компьютерах.

Для трансляции мультимедийных потоков в реальном режиме времени требуется наличие серверного программного обеспечения (например, Adobe Media Server, Wowza Streaming Server, Red5 и т.п.)

Совместно с Flash система Mind использует следующие кодеки и протоколы:
— видеокодек H.264
— аудиокодек SPEEX
— передача медийного трафика по протоколу RTMP

Как правило, Flash не позволяет получить такой же качественный видеопоток, как при работе с WebRTC, но он потребляет меньше серверных ресурсов. Использование Flash имеет смысл при проведении широкомасштабных мероприятий на сотни участников.
Для обеспечения работы через Flash на сервер Mind добавляется дополнительный компонент — Wowza Streaming Server, стоимость лицензии на который включается в общую стоимость решения Mind.
Решение об использовании Flash принимается на этапе внедрения системы, после консультации с техническими специалистами Mind.

Session Initiation Protocol (SIP) – протокол прикладного уровня, предназначенный для управления сеансами связи, с одним или несколькими участниками, для обмена интерактивным трафиком: голосом, видео, мгновенными сообщениями.
Протокол SIP обеспечивает обмен сигнальной информацией:
— определение местонахождения адресата и его готовности установить связь
— обмен данными о функциональных возможностях участников сеанса
— изменение параметров медиапотока уже установленного сеанса связи
— управление сеансом связи.

Для передачи самих голосовых и видеоданных используют другие транспортные протоколы, чаще всего RTP.
Процесс установки соединения SIP происходит аналогично установке соединения WebRTC и имеет такие же проблемы с серверами NAT.
Протокол SIP активно используется в IP телефонии, в частности, в VoIP шлюзах, позволяющих телефонным аппаратам и офисным АТС передавать голосовой трафик через Интернет.
Уникальный идентификатор пользователя (SIP URI) имеет вид:
— sip:<имя пользователя>@FQDN
— sip:<номер телефона>@FQDN (FQDN – имя домена или компьютера, где зарегистрирован пользователь. Телефонный номер используется в адресе, если FQDN указывает на VoIP шлюз).
Система Mind позволяет пользователям принимать участие в мероприятиях, используя протокол SIP.

H.323 — стандарт мультимедийной коммуникации, принятый за основной ведущими производителями аппаратных решений ВКС, телекоммуникационного и мультимедиа оборудования.

image
Полный стэк H.323 (Автор ITU-T (talk).ITU-T at en.wikipedia [Public domain], с Викисклада)

Установка системы Mind


Эта тема посвящена установке сервера Mind. Необходимым условием эффективного использования любой системы является планирование. Необходима оценка нагрузки на сервер, чтобы выделить будущему серверу соответствующие ресурсы. Не менее важно иметь ясное представление какие изменения необходимо сделать в существующей инфраструктуре предприятия. Например, создать DNS записи или изменить настройки межсетевых экранов.
После установки сервера часто требуется выполнить первичную его настройку, без которой система вообще не будет функционировать. Например, настройка IP-адреса или установка лицензий.

Технические требования


К сети предъявляются ряд требований:

Джиттер — рекомендуемое значение не более 150 мс
Время отклика (пинг) — рекомендуемое значение не более 200 мс

Для входящих соединений к серверу Mind должны быть открыты следующие порты:

TCP 22 — Доступ к консоли администратора
TCP 80 — Работа веб-интерфейса системы
TCP 443 — Работа веб-интерфейса системы, сигнализация WebRTC, туннелирование SRTP
TCP 1936 — Передача медиатрафика для Adobe Flash
TCP, UDP 5060 — Подключение SIP-клиентов
UDP 10000-20000 — Передача медиатрафика SIP-клиентов
UDP 20000-30000 — Передача медиатрафика WebRTC-клиентов
UDP 30000-40000 — Передача медиатрафика при взаимодействии с IVR

Для исходящих соединений от сервера Mind должны быть открыты следующие порты:

TCP 25 — Отправка Email-сообщений
UDP, TCP 53 — Работа службы имен
TCP 80 — Опционально. Проверка лицензии Wowza
UDP, TCP 123 — Синхронизация системного времени
TCP 389 — Опционально. Интеграция с Microsoft Active Directory
TCP 443 — Push-нотификация для Android
TCP 2195, 2196 — Push-нотификация для iOS
TCP 2775 — Опционально. Отправка SMS

Технические требования к клиенту:

Требования к программному обеспечению ПК пользователя:

Windows XP/Vista/7/8/10 или Mac OS X 10.5-10.10
Adobe Flash Player версии не ниже 10.3
Java Runtime Environment (JRE) версии 1.6 и выше (для трансляции рабочего стола в браузерах отличных от Google Chrome)
Расширение Mind Screen Sharing (для демонстрации рабочего стола в браузере Google Chrome )

Рекомендуемые браузеры:
Google Chrome (последняя версия)
Internet Explorer (начиная с версии 8)
Opera (последняя версия)
Яндекс браузер (последняя версия)
Mozilla Firefox поддерживается, но не рекомендуется

Рекомендуемая аппаратная конфигурация:
2-ядерный процессор с тактовой частотой 2 ГГц или выше
2 ГБ оперативной памяти (ОЗУ)
полнодуплексная звуковая карта
гарнитура / микрофон и колонки
камера с разрешением видео не менее 640x480 и частотой кадров не менее 25 кадров/сек

Требования к сети:
от 512 кбит/с, джиттер не более 150 мс
доступ к TCP/UDP портам сервера согласно технической документации
в случае использования персонального брандмауэра, добавить адрес сервера Mind в список исключений или список доверенных хостов

Расчет нагрузки на сервер:

Расчет нагрузки на сервер – сложная задача, она требует обширных знаний об особенностях работы как мультимедийных технологий, операционных систем и оборудования, так и самой системы Mind.
Так как эта статья написана о системе Mind в рамках готового программно-аппаратного решения STSS MIND, считаю более полезным рассказать не о формулах расчета вычислительной мощности сервера, а о правильном использовании конфигуратора сервера STSS Flagman MIND для подбора оптимальной конфигурации.

Конфигурации процессоров и оперативной памяти в решении уже рассчитаны по типовым критериям нагрузки. Но максимальное число пользователей указано с союзом „или“ для всех типов подключения.

Рассмотрим на примере типовую конфигурацию:
ВКС: 100 портов WebRTC (браузер) или 25 портов SIP/H323 (кодек) / Вебинар: 500 участников WebRTC или 2500 участников Flash
В данном случае допускается: или 100 ВКС-подключений через браузер или 25 подключений через аппаратные кодеки или 500 участников вебинара через браузер или 2500 — с помощью Flash.
Если система смешанная и требует одновременное использование ВКС и проведение вебинаров, причём с участием как WebRTC, так и SIP/H323-пользователей, необходимо воспользоваться несложным расчетом.
Достаточно просто привести все переменные к общему виду — выразить значения в виде одного, например ВКС WebRTC.
1 порт SIP/H323 по нагрузке равен 4 портам WebRTC ВКС
1 порт участника вебинара через WebRTC по нагрузке равен 0,2 порта WebRTC ВКС
и так далее

Зная планируемую нагрузку на сервер, рассчитываем производительность по максимальному количеству приобретаемых лицензий.
Например: мы планируем проводить одновременно видеоконференцию с участием до 30 клиентов, работающих через браузер. У нас есть 4 переговорные комнаты с уже установленными аппаратными кодеками, которые также необходимо интегрировать в систему. Помимо ВКС, сервер должен обеспечить проведение вебинара на 200 человек через WebRTC с двумя докладчиками, причём вебинары могут пересекаться по времени с ВКС-мероприятиями.
Отсюда следует, что нам необходимо приобрести 30 лицензий Mind Server ВКС Порт, 4 лицензии ВКС Мультипорт, и 200 лицензий Вебинар Порт на 2 докладчика.
Высчитываем необходимую нагрузку: 30+4*4+200*0,2=86
Значит выбираем в конфигураторе набор, максимально близкий к этому значению ВКС-подключений по WebRTC.
Если необходимо подобрать конфигурацию максимально точно — для этого можно отправить запрос через форму на сайте и получить готовый расчет от нашего пресейла.

Дисковое пространство:

Для развертывания и нормальной работы системы достаточно ~ 50 Гб, остальное дисковое пространство используется для записи мероприятий.
Запись мероприятия продолжительностью 1 час занимает 700 Мб – 1 Гб пространства на диске (видео HD-качества)

Нагрузка на канал связи:

Зависит от количества участников мероприятия и режима трансляции видеопотока (потоковый или режим микширования).

Использование потокового режима (видеопотоки передаются всем участникам мероприятия, объем исходящего от сервера трафика растет с увеличением числа участников, транслирующих видео) приводит к следующим нагрузкам на канал:

Для трансляции высокой четкости, HD (1280x720 @ 30 FPS) входящий поток составит S x 1,5Мбит/с, а исходящий (P — 1) x S x 1,5Мбит/с.
Где S (speaker) – число участников мероприятия, которые передают видео, а P (participant) – общее число участников мероприятия.
Например, для HD-вебинара со 100 зрителями и 2-мя докладчиками (публикаторами) пропускная способность канала связи должна составлять не менее: (100 – 1) х 2 х 1,5 = 297 Мбит/с

Использование режима микширования (видеопотоки объединяются в один поток заданного качества, который передается всем участникам; объем исходящего от сервера трафика не зависит от числа участников, транслирующих видео) приводит к следующим нагрузкам на канал:

Для трансляции высокой четкости, HD (1280x720 @ 30 FPS) входящий поток составит S x 1,5Мбит/с, а вот исходящий будет считаться по формуле P x 1,5Мбит/с.
Например, для конференции в HD-качестве на 10 участников нагрузка на канал не будет превышать 10 x 1,5 = 15 Мбит/с, независимо от числа докладчиков (публикаторов видео).

Информация, которую необходимо иметь перед началом установки системы


Перед тем как приступить к установке рабочей системы Mind следует убедиться, что имеется вся необходимая информация для дальнейшей настройки. Рекомендуется собрать все данные согласно контрольному списку:
— IP адрес, маска сети, адрес шлюза
— полное доменное имя сервера (FQDN) (конечные пользователи будут обращаться к нему для входа в систему)
— адреса DNS серверов
— адреса NTP серверов
— SSL-сертификат для выбранного доменного имени
— способ отправки почты (прямая оправка или через SMTP сервер и соответствующие им настройки)
— файл лицензии Mind для выбранного FQDN сервера
— IP-адреса компьютеров с которых будет разрешено администрирование системы
— лицензия на медиа-сервер Wowza, если будет использоваться технология Flash

Администрирование системы Mind


Использование системы видео-конференц-связи Mind и её администрирование выполняется с помощью веб-браузера.
Первичная настройка и дальнейшее администрирование сервера Mind выполняется пользователем с правами Администратора системы при помощи Панели администрирования.

Панель администрирования


Для удобства навигации по Панели администрирования в технической документации Mind и в данной статье используется следующая терминология:
Разделы – ссылки в левой части Панели администрирования
Секции – объединяют группы настроек по определенной теме
Поля – отдельные настройки внутри каждой секции

Язык главного окна системы и Панели администрирования может быть русским или английским. Настройки языка устанавливаются автоматически в зависимости от языка браузера или могут быть указаны явно в личных настройках пользователя.
Панель администрирования позволяет выполнять настройки на нескольких уровнях:
— раздел Управление настройками содержит настройки всей системы Mind, которые распространяются на все домены
— раздел Управление доменами содержит настройки отдельных доменов (некоторые настройки системы могут быть переопределены для конкретного домена)
— раздел Управление компаниями позволяет создавать компании и управлять их настройками

Первичная настройка сервера Mind
После успешной установки сервера Mind следует выполнить ряд настроек, без которых система не сможет эффективно функционировать.
Администратору Mind необходимо выполнить следующие действия:
— поверить работоспособность модулей системы
— поверить настройки IP протокола и FQDN сервера (IP-адрес и FQDN сервера должны соответствовать указанным в лицензии)
— установить лицензию (без установленной лицензии возможности Mind сильно ограничены)
— настроить Веб-адрес домена в соответствии с лицензией (веб-адрес домена должен соответствовать лицензии и представляет собой FQDN который будет использоваться для генерирования URL мероприятий)
— настроить синхронизацию времени
— настроить работу электронной почты
— установить доверенный сертификат SSL

Желательно также выполнить следующие настройки
— Email службы поддержки
— Email системных уведомлений
— проверить конфигурацию временной зоны
— изменить список „Разрешенные IP-адреса“ для доступа в администрирование, если это необходимо

Проверка работоспособности
После установки сервера Mind следует проверить его общую работоспособность.
Чтобы проверить состояние модулей системы, следует:
— открыть Панели администрирования
— выбрать раздел Модули системы
— убедитесь, что статус каждого из модулей имеет вид program is running or service is OK



Чтобы проверить может ли клиент подключиться с серверу Mind, следует:
— c одного из клиентских компьютеров с помощью браузера обратиться к системе Mind
— нажать кнопку „Начать сейчас“ в левом верхнем углу главного окна системы, чтобы начать мероприятие
— убедиться, что видео и аудио транслируются.

Управление учетными записями пользователей
В системе Mind существуют несколько ролей пользователей, обладающих разным набором прав:
Участник (гость) — принимает участие в видеоконференции, но не может сам создавать мероприятия, менять шаблоны и выполнять другие действия.
Зарегистрированный пользователь — имеет право создавать мероприятия и персональные шаблоны мероприятий. Зарегистрированных пользователей можно найти в списке контактов, послать им персональные приглашения на мероприятия.
Администратор системы — обладает правом настраивать систему. Только пользователю с данными правами доступна ссылка Администрирование в главном окне системы.
Владелец компании — если в домене создано несколько компаний, то для управления пользователями в компаниях необходимо назначить пользователя со специальной ролью владельца компании.
Администратор домена — в том случае, если система Mind интегрируется во внешние системы, следует создать роль администратора домена, чтобы управлять Mind при помощи функций API.

Через Панель администрирования возможно создать учетные записи трех типов:
— Администратор системы
— Пользователь
— Администратор домена. (администратор домена не имеет доступа к Панель администрирования, он должен управлять своим доменом через специализированное программное обеспечение)
Документация по управлению компаниями и SOAP API предоставляется разработчиком Mind по запросу.

Чтобы создать учетную запись пользователя надо:
— открыть Панель администрирования и перейти в раздел Управление пользователями
— выбрать домен (если их несколько) и нажать на кнопку Список пользователей
— далее нажать кнопку Создать пользователя
— заполнить обязательные поля в диалоговом окне Создание пользователя: Email, Имя, Тип (роль) пользователя.
— сохранить учетную запись, нажав кнопку Создать.

Все указанные данные будут сохранены в профиле пользователя.
Необходимо учитывать несколько важных замечаний:
— Email, указанный при регистрации учетной записи, служит для авторизации пользователя в системе и его нельзя изменить
— Поле Имя будет использоваться для обращения к пользователю в письмах
— После создания учетной записи система отправляет на указанный Email письмо с автоматически созданным паролем.

Импорт учетных записей
Если нужно создать группу пользователей, то удобно занести их данные в CSV-файл и импортировать в систему с помощью кнопки Импортировать пользователей.
Пример CSV-файла доступен по ссылке „Требования к файлу импорта“ в правой верхней части страницы панели администрирования.

Редактирование учетных записей
Администратор может изменить основные параметры учетной записи: пароль, имя и роль пользователя, а также дополнительные — телефон и комментарий.
Чтобы изменить данные учетной записи надо:
— открыть „Панель администрирования“ и перейти в раздел „Управление пользователями“
— выбрать домен (если их несколько) и нажать кнопку „Список пользователей“
— выбрать пользователя из списка и нажать кнопку „Детально“
— внести и сохранить необходимые изменения (чтобы быстро найти пользователя среди множества учетных записей, надо ввести несколько символов из имени или Email пользователя в поле поиска и нажать кнопку „Искать“

Учетную запись дополнительно можно:
— заблокировать, чтобы предотвратить авторизацию пользователя в системе
— разблокировать
— удалить

При создании учетной записи, смене пароля, блокировании и разблокировании пользователю будет отправлено письмо с извещением.

Интеграция с Active Directory
Интеграция с LDAP позволяет аутентифицировать пользователей Mind в службах каталогов, поддерживающих протокол LDAP. Частным случаем таких служб каталогов является Active Directory (AD), где каждый контроллер домена функционирует как LDAP сервер.
Чтобы включить интеграцию с LDAP сервером надо:
— открыть „Панель администрирования“, раздел „Управление доменами“
— выбрать свой домен и нажать кнопку „Детально“
— перейти к секции „Интеграция с LDAP“

Секция имеет следующие параметры:
LDAP url – имя/адрес LDAP сервера и TCP порт протокола LDAP (например, ldap://dc01.vcs.ru:389)
LDAP bind DN – имя системной учетной записи для поиска данных в AD (например, CN=admin,OU=Moscow,DC=domain,DC=ru)
LDAP bind credential – пароль системной учетной записи
LDAP base context DN – имя ветки (контейнера) в котором Mind будет искать учетные записи пользователей (например, OU=Managers, DC=domain, DC=ru – поиск в подразделении (Organizational Unit) с названием Managers).
LDAP base filter – поисковый фильтр. Позволяет использовать в качестве логина Mind один из атрибутов учетной записи в AD (например, mail ={0}. Где mail – имя атрибута учетной записи в AD. Вместо {0} будет подставлен логин, который пользователь указал на странице входа в Mind. Таким образом, в AD будет найдена учетная запись с почтовым адресом равным логину пользователя Mind).

Процесс авторизации
Авторизация происходит следующим образом:
— пользователь при входе в Mind указывает логин и пароль
— сервер Mind подключается к LDAP серверу от имени системной учётной записи и выполняет поиск учетной записи пользователя в контейнере, указанном в параметре LDAP base context DN (например, если логин Petrov, а LDAP base filter задан как sAMAccountName={0}, то Mind будет искать пользователя, чей логин в Active Directory имеет значение Petrov)
— если подключиться с серверу не удалось или учетная запись не найдена, пользователь получит отказ
— если учетная запись найдена, Mind пытается аутентифицировать пользователя в AD, используя введенный пользователем пароль
— если аутентификация прошла успешно, Mind создает пользовательский профиль, заполняя его информацией из Active Directory и устанавливается флаг LDAP пользователь
— информация в профиле будет обновляться каждый раз, когда пользователь входит в систему

Следует учитывать ряд важных замечаний:
— Домен Mind может либо аутентифицировать пользователей сам, либо использовать LDAP сервер. Смешанный вариант невозможен.
— С момента включения интеграции, все учетные записи типа Пользователь могут проходить аутентификацию только на сервере LDAP.
— Пользователи с учетными записями типа Администратор системы, могут быть созданы вручную и входить в систему вне зависимости от настроек интеграции.
— Профили LDAP пользователей останутся после отключения интеграции, но сами пользователи не смогут войти в систему Mind.

Настройка электронной почты и синхронизации времени
Система Mind отправляет пользователям электронные письма в случае многих событий (например, приглашение на мероприятие или изменения их учетных записей).
Для отправки писем, система Mind использует Exim, встроенный агент пересылки сообщений (Mail Transfer Agent, MTA).
Чтобы настроить параметры отправки почты надо:
— открыть „Панель администрирования“ и перейти в раздел „Управление настройками“
— нажать кнопку „Настройки SMTP/SMPP“ вверху страницы
— в поле „Сервер“ задать имя или IP-адрес SMTP сервера
— в поле „Порт“ задать TCP порт
— если шлюз требует аутентификацию, следует установить параметр „Использовать аутентификацию при подсоединению к серверу“ и указать имя и пароль учетной записи (также можно получить доступ к настройкам SMTP сервера в разделе „Модули системы“, настройки модуля imind.

Чтобы настроить синхронизацию времени на сервере Mind надо:
— открыть „Панель администрирования“ и перейти в раздел „Модули системы“
— найти модуль ntp и нажать ссылку „Настроить“
— задать имена или IP-адреса NTP серверов точного времени

Настройка шаблонов
Мероприятие имеет, как минимум, три категории настроек:
Общие настройки — название, тип (конференция, вебинар), права рядовых участников использовать элементы интерфейса.
Настройки интерфейса — полностью блокирует элементы интерфейса.
Технология трансляции — WebRTC или Flash (есть и другие настройки, например, качество трансляции, но они будут рассматриваться далее).
Настройки первой категории могут быть заданы пользователем. Настройки двух оставшихся категорий могут быть заданы только администратором. Мероприятие любого типа может быть создано только на основе заранее приготовленных шаблонов.
Шаблоны могут быть системными и пользовательскими.

Системный шаблон:
— задает все три категории настроек
— может быть создан только администратором

Пользовательский шаблон:
— задает только первую категорию настроек
— наследует две оставшиеся категории из настроек системы или домена

В момент создания мероприятия пользователь должен выбрать готовый шаблон, но имеет право изменить настройки первой категории для этого конкретного мероприятия.

Для работы с системными шаблонами:
— открыть „Панель администрирования“ и перейти в раздел „Управление доменами“
— выбрать домен и нажать кнопку „Шаблоны“
— чтобы создать шаблон надо нажать кнопку „Создать“ в верхней части страницы
— чтобы сохранить шаблон надо нажать кнопку „Сохранить“
— чтобы отредактировать готовый шаблон надо выбрать его в списке и нажать кнопку „Детально“ (после внесения правок следует сохранить изменения при помощи одноименной кнопки)
— для удаления шаблона надо нажать кнопку „Удалить“

Основными моментами, которые требуют внимания при настройке шаблона, являются выбор технологии трансляции и типа мероприятия. При необходимости можно настроить внешний вид и задать дополнительные функции для мероприятия.
Количество системных шаблонов зависит от особенностей использования системы Mind. Например, если организация работает с одним типом мероприятий, то достаточно изменить настройки шаблона по умолчанию, если же проводятся и вебинары, и конференции, то потребуется 2 шаблона, и т. д.
Администратору рекомендуется заранее подготовить шаблоны для часто используемых сценариев работы с Mind.

Работа пользователей с шаблонами
После того, как пользователь войдет в систему Mind, он может:
— начать мероприятие
— запланировать мероприятие
— создать комнату для мероприятия определённого типа

В любом случае пользователь должен, либо выбрать системный шаблон, либо создать собственный. Пользователь может изменять отдельные настройки системных шаблонов в момент создания мероприятия. Такие изменения касаются только конкретного мероприятия и не сохраняются в самих системных шаблонах.
Пользователь не может изменять технологию трансляции, она определяется выбранным системным шаблоном. Если пользователь создал свой шаблон, то технология трансляции наследуется от настроек домена.

Основные настройки шаблонов
В зависимости от настроек шаблона, мероприятия делятся на конференции и вебинары.
Пользователь во время мероприятия может быть либо докладчиком, либо рядовым участником.
Основное отличие вебинара от конференции состоит в том, что:
— в течение вебинара правом транслировать медиа-поток и определять его качество обладают только назначенные модератором докладчики
— рядовые участники вебинара могут только принимать медиа-поток
— по умолчанию, все участники — конференции как докладчики, так и рядовые участники могут транслировать медиа-потоки, а также изменять качество приема и передачи.

В шаблоне можно изменить права на трансляцию для всех рядовых участников конференции, запретив им транслировать видео или аудио. Шаблоны позволяют выбирать функции, которые будут доступны в мероприятии, а также настраивать его внешний вид.
К таким функциям относятся:
Управление записью мероприятия. Позволяет разрешить, запретить или автоматически включить видео/аудио запись предприятия (доступно только в системных шаблонах).
Управление внешним видом мероприятия. Позволяет отключить элементы интерфейса. Так можно запретить, например, обмен файлами, демонстрацию рабочего стола или проведение опросов (доступно только в системных шаблонах).
Управление правами рядовых участников. Даже если элементы интерфейса доступны, можно указать могут ли участники мероприятия пользоваться ими (доступно в системных и пользовательских шаблонах). В процессе конференции модератор может изменять права каждого отдельного участника.

Выбор технологии трансляции
Система Mind поддерживает две технологии трансляции: WebRTC и Flash (используется протокол rtmp)
Для вещания и просмотра могут использоваться разные технологии. Система Mind поддерживает три варианта трансляции медиапотока:
Технология WebRTC используется для передачи и приема медиапотока всеми участниками мероприятия (основной режим).
Технология Flash используется для передачи и приема медиапотока всеми участниками мероприятия.
Передача медиапотока от докладчика до сервера Mind, и обратно, происходит по технологии WebRTC, а от сервера к зрителям по технологии Flash.
Стабильная работа системы при использовании других вариантов трансляции не гарантируется.

Технология трансляции может быть выбрана на трех уровнях:
— На уровне всей системы — задает настройки по умолчанию для всех доменов и определяет технологии трансляции для всех пользовательских шаблонов
— На уровне домена — переопределяет системные настройки для конкретного домена и влияет на пользовательские шаблоны
— В системном шаблоне — явно определяет настройки для всех мероприятий, которые будут созданы с помощью конкретного шаблона.

Настройка качества трансляции
Настройки качества мероприятия позволяют задать максимально возможное качество публикации для всех участников мероприятия.
Для каждого из протоколов (WebRTC и Flash) существуют пять уровней качества:
— очень низкое качество
— низкое качество
— среднее качество
— высокое качество
— очень высокое качество

Уровень качества определяет параметры публикуемого видео, такие как:
— разрешение
— частота кадров (fps)
— битрейт

Полные настройки для каждого уровня можно найти в „Панели администрирования“ в разделе „Управление качеством мероприятий“. По умолчанию любое мероприятие имеет средний уровень качества. Модератор может изменить уровень качества конкретного мероприятия на вкладке „Настройки“ в секции „Качество видео всех участников“ Для изменения этих настроек модератор должен войти в комнату или начать мероприятие.
Участники могут устанавливать свое индивидуальное качество публикации с помощью медиа профилей, но ни один из них не сможет вещать с более высоким качеством, чем это указано в настройках всего мероприятия.

Медиа профили


Медиа профили (профили производительности) позволяют задавать индивидуальное качество публикации и просмотра видео для каждого участника мероприятия.
Для каждого протокола, WebRTC и Flash, существуют пять профилей:
— Только аудио
— Низкое
— Среднее
— Высокое
— Максимальное

Можно найти настройки для каждого профиля в „Панели администрирования“ в разделе „Управление качеством мероприятий“.
В момент подключения к мероприятию каждый участник получает профиль по умолчанию согласно настройкам домена. Можно изменить профили по умолчанию в „Панели администрирования“ в разделе „Управление доменами“ в секции „Настройки конференций“.
Если мероприятие является конференцией, то медиа профиль пользователя может быть изменён:
— Пользователь может выбирать другой медиа профиль, нажав кнопку „Изменить качество трансляции“ в правом верхнем углу экрана.
— Модератор может принудительно изменить профиль отдельных участников в панели „Участники“.
— Вне зависимости, какой медиа профиль был выбран для пользователя, качество публикации видео не может быть выше, чем это указано для всей конференции в целом.

В том случае, если мероприятие – вебинар, медиа профиль пользователя не может быть изменен и остается таким, каким он определен в настройках домена.

Настройки медиа профилей


Медиа профили (профили производительности) являются сложными объектами и влияют сразу на несколько характеристик мероприятия, позволяя оптимизировать нагрузку на сервер, каналы связи и клиентские компьютеры.
Основными настройками профиля являются:
Тип – задает режим трансляции видео. Это может быть потоковый режим (streams) или режим микширования (mosaic)
Качество публикации – максимально возможное качество публикации видео, разрешение и частота кадров
Прочие настройки определяют характеристики просмотра видео и зависят от выбранного режима трансляции.

Если в профиле указан потоковый режим верно следующее:
— Пользователь, выбравший этот профиль, будет получать столько видеопотоков, сколько есть в конференции вещающих пользователей. Однако пользователь не получает обратно свой собственный видеопоток.
— Качество каждого получаемого потока зависит от личных настроек вещающих пользователей, но не выше, чем задают общие настройки мероприятия.
— Параметр „Максимальное количество видео-потоков“ содержит несколько записей, определяющих качество видео потока и максимально возможное количество таких потоков.
При использовании технологии WebRTC, если количество принимаемых потоков превышает максимальное, пользователь автоматически переключается на профиль с более низким качеством. Например, на профиль с режимом трансляции мозаика и будет получать только один микшированный поток

При использовании технологии Flash, превышение порогового значения не приводит к смене профиля. Окна всех лишних участников сворачивается в значки внизу экрана, чтобы для них не осуществлялась передача видео.
В случае если в профиле выбран режима микширования (мозаики):
— Параметр Качество мозаики определяет качество единственного видеопотока, который будет получать пользователь.
— Параметр Раскладка видео задает расширенные настройки режима. Например, значение mosaic указывает на использование мозаики. Значение selector означает, что пользователь будет принимать один видеопоток от того участника, который говорит в данный момент (определяется по технологии voice detection).

Настройка мобильных клиентов
Мобильные устройства на iOS и Android работают с сервером видеоконференций Mind через приложение Mind Meeting.
При обращении на сайт Mind с помощью браузера смартфона или планшета система распознает мобильное устройство и перенаправляет его на страницу загрузки приложения (либо запускает Mind Meeting, если оно уже установлено).
После установки мобильного приложения пользователь может приступить к работе с ВКС Mind.

Облачная и серверная версии мобильного клиента
Сервис видео-конференц-связи Mind можно использовать в виде SaaS (покупка „облачной“ услуги) или InHouse (покупка автономного серверного решения). Для каждого варианта предназначена своя сборка мобильного клиента.
При работе с серверным решением Mind необходимо использовать версию мобильного клиента из репозитория Mind, т.к. она позволяет при авторизации указать адрес сервера Mind. Ссылка на репозиторий задается в настройках администрирования.
SaaS-версия приложения настроена на работу только с vcs.imind.ru и доступна для загрузки в App Store или Google Play.

Настройки для мобильных клиентов
В Панели администрирования сервера Mind в разделе Управление доменами в секции Настройка мобильных устройств доступны следующие настройки для мобильных клиентов:
— ссылки на загрузку приложения для мобильных устройств
— настройки push-уведомлений для мобильных клиентов

Интеграция с SIP-клиентами
Входящие звонки
Входящие звонки работают без дополнительных настроек на сервере Mind. Пользователь может звонить в голосовое меню Mind или прямо в мероприятие. Номер голосового меню задается в настройках домена или системы в секции „Sip“, поле „Телефоны для звонка в активное мероприятие“ Номер по умолчанию – 1000.
Пользователь, позвонивший по этому номеру, попадает в голосовое меню (IVR) Mind и должен набрать уникальный ID мероприятия. ID каждого мероприятия уникален. Он указан в мероприятии на закладке „О мероприятии“ и может высылаться приглашенным участникам по электронной почте.
Для прямого звонка следует звонить на ID мероприятия. В том случае, если предприятие использует программный коммутатор (softswitch), он должен быть настроен для маршрутизации звонков на IP-адрес сервера Mind.
Прямой звонок может быть выполнен с IP телефона на SIP URI вида sip:<набор_символов>@<IP_адрес_Mind>. Например, sip:1000@10.0.3.94 — звонок в голосовое меню или sip:390326798@10.0.3.94 – звонок прямо на мероприятие (если ID мероприятия указан как 390-326-798).

Исходящие звонки
Исходящие звонки могут маршрутизироваться через внешний программный коммутатор (softswitch или IP АТС) или встроенный в Mind SIP-прокси. По умолчанию, для маршрутизации исходящих вызовов используется встроенный SIP-прокси.
Для маршрутизации звонков через программный коммутатор необходимо выполнить следующие настройки на сервере Mind:
— открыть „Панель администрирования“ и перейти в раздел „Управление доменами“
— выбрать домен и нажать кнопку „Детально“
— перейти к секции SIP
— в поле „Прокси исходящего sip-звонка“ указать IP-адрес программного маршрутизатора (например, sip:192.168.0.123:5060, в случае использования встроенного SIP-прокси это поле должно содержать IP-адрес самого Mind сервера)
— установить флаг „Исходящий вызов из мероприятия“
— задать значение параметра „SIP домен по умолчанию“ (в случае, если вызов происходит на простой номер, например, 1000, он будет автоматически дополнен именем домена и примет вид sip:1000@domain.ru)
— сохранить настройки, нажав кнопку „Сохранить“ в верхней части страницы

Следует учитывать ограничения реализации SIP в сервере Mind:
— Mind не поддерживает шифрование по протоколу TLS при обмене SIP-сообщениями.
— Если сервер Mind находится за NAT то интеграция возможна только с SIP-агентами из внутренних сетей.
— Если сервер Mind имеет более одного IP-адреса, то только один из них может быть использован для интеграции с SIP-агентами.
— Сервер Mind не поддерживает SIP-аутентификацию при исходящем звонке. Таким образом на устройстве принимающем звонок Mind аутентификация либо должна быть отключена, либо Mind сервер должен быть указан как доверенный SIP-trunk.

Настройки медиа серверов
В случае если сервер Mind расположен за NAT, он не сможет принимать входящие звонки, поскольку протокол WebRTC будет анонсировать клиентам внутренний IPадрес сервера. Система Mind, в такой ситуации, предлагает два возможных решения:
— явно указать в настройках сервера Mind внешний IP-адрес NAT сервера
— указать в настройках Mind адрес STUN сервера

Для того, чтобы явно настроить внешний IP-адрес надо:
— открыть „Панель администрирования“ и перейти в раздел „Настройки медиа серверов“
— нажать кнопку „Создать“ вверху страницы
— указать внутренний адрес сервера в поле „Адрес подключения“
— указать внешний адрес NAT сервера в полях „Адрес замены“ и „Защищённый адрес замены“ (для HTTPS соединений)
URL адрес STUN сервера может быть указан в файле /etc/xcoger/xcoder.cfg

Настройка внешнего вида сайта


Интерфейс системы может быть адаптирован в соответствии с брендом клиента.
Адаптация включает:
— замену логотипа и названия системы
— замену электронных адресов и телефонов технической поддержки
— брендирование мобильного клиента под iPad
— настройка системы: подключение биллинговой системы, включение/отключение возможности пользователям регистрироваться самостоятельно, подключение модуля SMS информирования и т.д. (дополнительные изменения возможны по заказу клиента)

Администратор системы может изменить логотипы, отображаемые при входе в систему Mind, на главной странице сайта и во время мероприятий.
Чтобы изменить логотипы надо:
— открыть „Панель администрирования“ и перейти в раздел „Управление доменами“
— выбрать домен и нажать кнопку „Детально“
— перейти к секции „Настройки логотипа“
— выделить мышкой логотип, который планируется изменить
— выбрать нужный файл на локальном компьютере
— сохранить настройки, нажав кнопку „Сохранить“ в верхней части страницы

Статистика мероприятий и управление файлами
Чтобы просмотреть все активные мероприятия и количество их участников надо воспользоваться разделом „Статистика использования системы“ в „Панели администрирования“

Кнопка Детально выводит на экран подробную информацию о каждом мероприятии, а также следующие элементы управления:
— Флаг „Показать детальную информацию“ позволяет получить список всех участников и техническую информацию о них.
— Кнопка „Выгнать всех из мероприятия“ позволяет принудительно завершить мероприятие
— Кнопка „Сменить ID“ дает возможность изменить идентификатор мероприятия

Раздел Использование файловой системы дает возможность получить список хранящихся на сервере Mind файлов. Это могут быть записи мероприятий, загруженные пользователями документы и т.п.

Таблица содержит имена пользователей, чьи файлы хранятся на сервере, и общий объем этих файлов.
Кнопка „Check file system“ запускает сканирование файлов и обновление таблицы. Кнопка „Check unused files“ удаляет неиспользуемые файлы, в частности файлы принадлежащие ранее удаленным мероприятиям.

Мониторинг производительности


Система Mind предоставляет администратору графический отчет, содержащий статистику использования системы в удобной для восприятия форме.
Отчет содержит графики и таблицы значений счетчиков производительности для:
— процессоров
— оперативной памяти
— дисковых операций
— сетевой подсистемы

Отчеты также содержат статистику мероприятий и пользователей, позволяющую оценить эффективность использования купленных лицензий. Сбор статистики начинается в момент включения сервера, значения счетчиков обновляются каждые 10 секунд.
Чтобы получить доступ к отчетам надо:
— открыть „Панель администрирования“
— выбрать раздел „Мониторинг системы“
— перейти на нужную вкладку
— чтобы получить дополнительную информацию о значении счетчика надо навести указатель мыши на конкретный участок графика.
Под каждым графиком расположена таблица, в которой можно отключить или включить отображение любого из счетчиков.
Отчет позволяет оценить нагрузку на оборудование, обнаружить наличие „узких мест“, принять решение о расширении лицензии Mind или модернизации серверного оборудования.


Выводы и заключение


STSS Flagman MIND — это отечественное решение ВКС для бизнеса любого масштаба. Количество компаний, оценивших все преимущества ВКС Mind над аппаратными решениями зарубежных производителей, становится больше с каждым днём.

Оценить работу системы ВКС Mind самостоятельно Вы можете прямо сейчас:

1. Самый быстрый способ: необходимо зарегистрироваться в облачном сервисе imind.ru и проверить функциональные возможности системы. Функционал облачного сервиса урезан, но общее представление появится.

2. Для тестирования полноценной локальной версии необходимо приехать к нам в центральный офис, расположенный в Москве на Бережковской набережной. В нашей демо-зоне представлено решение целиком: сервер, камеры и аудио периферия.

3. Можете скачать образ демо-версии и попробовать поднять систему самостоятельно.

Жду Ваших комментариев!
Интересно ли решение ВКС STSS MIND для бизнеса?

Проголосовало 23 человека. Воздержалось 6 человек.

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

Комментарии (13)


  1. zirf
    29.02.2016 10:05
    +1

    Конечно, можно и так длинно и подробно. Но как-то однобоко сравнивать только с дорогими специализированными аппаратными системами ВКС. Lync скажем в старших подписках MS O365 выглядит привлекательнее, это довесок к офису. Pexip обладает хорошей совместимостью (по заявлениям производителя) с популярными решениями (но лицензии недешевы), четко учтено, что кто-то в Cisco или Polycom уже вложил $150-150 тыс. Тут в чем изюминка?


    1. Usikoff
      29.02.2016 10:20
      +1

      На хабре мало статей про ВКС, и поэтому захотелось длинно и подробно. На счет однобокости сравнения согласен, но цель была как раз описать программные решения, наступающие на пятки аппаратным гигантам. В качестве примера был выбран продукт на базе Mind, как один из максимально соответствующих высоким стандартам ВКС и, к тому же, отечественный.
      Если есть примеры реализации других программных ВКС — буду рад увидеть в комментариях цены и возможности функционала, чтобы сравнить их с решением Mind.


      1. zirf
        29.02.2016 10:58
        +1

        Собственно, я и упомянул программные решения.
        По железу:
        Узел конференции Pexip
        Процессор: на каждые 2 порта Pexip требуется 1 ядро процессора при тактовой частоте 2,7Ghz или выше, архитектура Sandy Bridge-EP
        RAM: 1 GB на каждое ядро процессора
        HDD: 50GB

        Т.е. на 16 портов нужно 8 ядер и 8 Гб памяти.

        Лицензии там довольно дорогие, в районе $100 порт/месяц. Но бесшовно линкует аппраратные ВКС между собой и аппаратные и программные.
        Lync месячная подписка на O365 E5 2062 руб/мес при покупке на 12 мес. Явные плюсы это многофункциональная подписка, нет вложений в железо.


        1. Usikoff
          29.02.2016 11:29

          Если сравнивать с Вашим расчётом, то у решения Mind ситуация следующая:
          Процессор: 1 ядро 2,7Ghz потянет до 5 WebRTC HD-портов, против 2 у Pexip.
          Память и диск аналогично.

          По лицензиям Mind Port — $150 порт/год или 300$ порт/бессрочная. Выходит $12,5 в месяц!
          Mind также работает с аппаратными кодеками по H.323. Стоимость лицензии для аппаратного порта $25 (в переводе на месяц)
          Никакого клиентского ПО с лицензиями не требуется, даже винда не нужна. Нужен только браузер с WebRTC.
          К тому же пригласить участника можно одним кликом и не важно зарегистрирован он или нет, в локалке он или в другой стране!
          Нужно срочно пригласить клиента, партнера или сотрудника в конференцию — вбиваем его email и через секунду он уже участвует в обсуждении!


          1. navion
            29.02.2016 14:02
            +1

            Никакого клиентского ПО с лицензиями не требуется, даже винда не нужна.

            И оно работает?
            В Lync вымораживает их требование микрофона даже для слушателей, а до S4B на стороне сервера оно запускало установленный клиент S4B и не давало подключиться пока в том не залогинишься (страшный геморрой, если стоит Office из 365 с отключенным Lync).


            1. Usikoff
              29.02.2016 14:15

              Для WebRTC-сессии нужен только браузер, есть линуксовые сборки с хромом.
              А клиентский софт (бесплатное приложение Mind Meeting) идет для мобильных приложений — есть версия для облачного и серверного способа подключения.
              Облачный сервис imind.ru доступен каждому. Принцип тот же. Только ограничения есть с бесплатной подпиской:
              Для ВКС:
              Количество одновременных мероприятий: 1
              Максимальное количество участников конференции: 4
              Количество одновременно транслируемых видео участников: 4
              Размещение логотипа в мероприятии: нет
              Интерактивные голосования: нет
              Срок хранения записи и данных пользователя: 7
              Трансляция мероприятий на сайте клиента: нет

              Для вебинара:
              Количество одновременных мероприятий: 1
              Максимальное количество участников конференции: 10
              Количество одновременно транслируемых видео участников: 1
              Размещение логотипа в мероприятии: нет
              Интерактивные голосования: нет
              Срок хранения записи и данных пользователя: 7
              Трансляция мероприятий на сайте клиента: нет


  1. Usikoff
    29.02.2016 15:51
    +2

    Минусующие и сторонники аппаратных решений, Ваш голос будет более ценным, если Вы напишете в комментариях причину Вашего выбора. Заранее благодарен.


    1. ZlodeiBaal
      01.03.2016 12:01

      Спам-рассылка в личку с рекламой коммерческого софта.


      1. Usikoff
        01.03.2016 12:19

        Антон, сервис имеет некоммерческую версию. Статья написана в формате руководства по пользованию и администрированию.


        1. ZlodeiBaal
          01.03.2016 12:26
          -5

          Пост написан в коммерческом блоге = > рекламный пост.

          Рассылка в личку незнакомым людям ссылки на рекламный пост (какими бы сказочными объяснениями оно не сопровождалось) = > спам.


  1. nikitasius
    01.03.2016 13:30
    +4

    Мои 5 копеек: я тоже получил "письмо счастья", без него я бы ее пропустил (эту тематику).
    По мне — тут есть и пиар (продукция) и конфигурация (железо+картинки+многомгого текста). Не вижу ничего плохого, а читается легко без гуглежа, ибо все яйца в одной коробке статье.

    Даже страшно представить, сколько стоила поликомовская конференц рум в банке (здоровая плазма, камера-шар, пульты, микрофоны, миникамеры и т.д.). В принципе для большой организации нет проблем с каналом в более-менее городах. У нас в филиалах всегда был инет + резервный на хорошей скорости, про "голову" и говорить нечего.


  1. Usikoff
    03.03.2016 14:17

    Для оценки возможности решения транслировать поток ВКС на YouTube необходимо пройти по гостевой ссылке (не более 5 человек единовременно)
    https://mind.stss.ru/#join:t0214bdac-c4a7-4082-a7b4-fd0287a70250
    Трансляция будет доступна здесь:
    http://www.youtube.com/user/stssTV/live


    1. Usikoff
      03.03.2016 14:30

      Пройдя по ссылке Вы попадете в сервис Mind, после входа в мероприятие и активации камеры и микрофона — вы сможете отслеживать конференцию на YouTube.