SlideShare a Scribd company logo
Видеозвонки в мобильном приложении и шаринг экрана
Александр Сербул
Руководитель направления
Карл…
Карл, я закодил
звонки по WebRTC
на 10 строках
JavaScript!
Это очень круто,
пап!
Карл… Карл, я специалист по
BigData….
Это очень круто,
пап!
Но я не понимаю, как ОНО
работает и кто такие чертовые
STUN, TURN и SCTP.
СОВСЕМ!!!
О чем поговорим...
• Как работают видеозвонки по WebRTC — в
теории и на практике
• Подводные камни, грабли WebRTC, наш
опыт создания видео-кластера
• Подходы к созданию мобильного
приложения
• Как устроены видеозвонки в платформе
BitrixMobile
Как мы общаемся?
Распределенная команда…
Skype
Google Hangouts
Обмен документами, изображениями,
паролями…
Риски
Нас могут слушать и … слушают.
Зависимость от инфраструктуры
вендора
Проприетарные протоколы
Развитие продукта в своих целях
WebRTC или не WebRTC?
Skype, Google Hangouts – не WebRTC!
Плагины, закрытые протоколы, кластеры
вендора
WebRTC – peer-to-peer
Открытая технология, HTML5
HD
Эффективные кодеки
Не нужен SIP
Стандарты
http://www.w3.org/TR/webrtc/ - “стандарт”
W3C Working Draft 13 September 2016
http://www.webrtc.org/ - реализация
(компании Google, Mozilla, Opera)
Chrome - stable
Firefox – stable
Opera - stable
Android (шероховатости)
Кодеки
HTML5 конкуренты формату H.264
WebM: VP8/Vorbis/Matroska
WebRTC: VP8/(Opus, iSAC, iLBC)
VP9 – c 01/2014 официальная поддержка
на YouTube
http://www.w3.org/TR/mediacapture-streams/
W3C Candidate Recommendation 19 May 2016
Media Capture and Streams – структура
браузерного API
Использование Media Capture and Streams
Работа с тегами Video,
объектами Canvas,
MediaStream,
MediaStreamTrack
«Real-time Communication Between Browsers»
RTCPeerConnection – видео-аудио связь между
браузерами
RTCDataChannel – передача данных в обе стороны
RTCStatsReport - статистика
WebRTC – структура API
На этом «мультики» заканчиваются
(C) Ilya Grigorik
И начинается технологический хардкор ;-)
Стек WebRTC
Сделали глубокий вдох…
(C) Ilya Grigorik
ICE – «как найти друг друга»
(C) Ilya Grigorik
«Interactive Connectivity Establishment (ICE)» (RFC 5245,
2010)
Браузеры «находят» друг друга, используя технологии
STUN/TURN.
Видео-аудио передается по протоколу SRTP (/UDP).
«Secure Real-time Transport Protocol» (RFC 3711, 2004)
STUN, TURN
«Session Traversal Utilities for NAT (STUN)»
(RFC 5245, 2008)
«Traversal Using Relays around NAT (TURN)»
(RFC 5766, 2010)
Сначала NAT изобрели, потом начали «обходить» 
Signaling
Браузеры передают описание сессии друг другу - SDP
«An Offer/Answer Model with the Session Description Protocol (SDP)»
(RFC 3264, 2002 год)
Сигналинг реализуете Вы в своем приложении
Signaling
Signaling
(C) Ilya Grigorik
Cтатусы peer
Браузеры обмениваются описанием
локальных потоков (streams) и портов
через SDP
v=0
o=jdoe 2890844526 2890842807 IN IP4 10.47.16.5
s=SDP Seminar
i=A Seminar on the session description protocol
u=http://www.example.com/seminars/sdp.pdf
e=j.doe@example.com (Jane Doe)
c=IN IP4 224.2.17.12/127
t=2873397496 2873404696
a=recvonly
m=audio 49170 RTP/AVP 0
m=video 51372 RTP/AVP 99
a=rtpmap:99 h263-1998/90000
Cтатусы ICE
Соединение установлено, когда
«состыкованы» все медиа-потоки.
Преодоление NAT
Преодоление NAT
Настройка файерволов
Вариант 1. Открыть все исходящие/входящие
UDP.
Вариант 2.
Открыть вх./исх. на TURN/STUN-сервер:
порт 3478 (UDP/TCP)
порт 5349 (TLS)
Открыть исходящие UDP на TURN/STUN сервер,
порты каналов (или все).
Софт для TURN/STUN
restund (BSD license)
TurnServer (GNU GPL)
rfc5766-turn-server (New BSD)
Licode – пример открытого MCU для видео-конференций по WebRTC
Собственный видео-кластер
turn.calls.bitrix24.com – поддержка любых видов NAT (STUN, TURN)
Кластер из 2 серверов. DNS-failover.
~10% соединений потребуют TURN/relay
1 relay stream => ~ 1Mbps
Групповые звонки по WebRTC
4 человека – (mesh network) часто
оптимально
Не нужен доп. софт.
Трафик!
MCU:
Medoose+Asterisk
Licode
Какое решение выбрать?
Мобильный сайт
Адаптив
Приложение
VSАдаптив Приложение
• Персонализация
• Скорость
• Контакт с брендом
• User Experience
• Push-уведомления
• Взаимодействие с другими
приложениями
• Поиск
• Трафик в 2x больше
• Низкая стоимость
• «Кроссплатформенность»
• Легко обновлять
• Легко разработать
VSАдаптив Приложение
* Исследование comScore
Больше уникальных юзеров Больше уникальных действий
Android Instant Apps
iOS Spotlight
Индексация контента поисковиками Интеграция с операционной системой
Поиск
VSАдаптив Приложение
Android Instant Apps iOS Spotlight
Google сможет индексировать контент приложений и
запускать приложение без установки прямо из поисковой
выдачи
Интеграция с локальным поиском. Средствами системы
можно найти контент в установленных приложениях
• Вы хотите дать клиенту богатый User Experience
• Необходимо часто взаимодействовать с пользователем
• Сайт/сервис подходит под определенную категорию
• Ваш сервис подразумевает частые повторные заказы
• Вы – онлайн сервис
• Сообщества, управляющие компании (ЖКХ)
• Необходимы функции, которые недоступны в браузере
А когда нужно делать приложение?
BitrixMobile
Приложение – это сайт
• Разработка на HTML+JS+CSS+PHP
• Кроссплатформенность
• Низкая стоимость разработки
• Масштабируемость
• Интеграция с нативными интерфейсами
• Возможность создавать оффлайн-приложения
• Конфигурирование через конструктор
• Тестирование на приложении для разработчиков
• Нет необходимости выпускать приложение после
внесения изменений на сервере
Продукт «1С-Битрикс: Мобильное приложение»
Apache Cordova
Как это работает
Разработка на PHP/JS/HTML
Мгновенный результат
Платформа BitrixMobile
Cordova
trixMobile Native
Mobile Application
Java, Objective-C
BitrixMobile JS
Контент
Javascript, HTML,
CSS
Сервер
Вызов JS-функции AВызов нативной функции A
Бесплатные инструменты разработки
JS API
+
NATIVE
Конструктор
HTML, CSS, Javascript
BitrixMobile JS API
Нативные элементы
Приложение
для разработчиков
2 31
bitrix_mobile_core.js
офлайн ресурсы
настройки
Публикация нашими специалистами
/index.html
/menu.html
/detail.html
/script.js
/style.css
/bitrix_mobile_core.js
РАЗРАБОТКА И НАСТРОЙКА
СБОРКА ПРИЛОЖЕНИЯ
С ВАШИМИ ФАЙЛАМИ И НАСТРОЙКАМИ
ПУБЛИКАЦИЯ
2 31
VSАдаптив Приложение
• Поиск
• Трафик в 2x больше
• Персонализация
• Скорость
• Контакт с брендом
• User Experience
• Push-уведомления
• Взаимодействие с другими
приложениями
• Низкая стоимость
• «Кроссплатформенность»
• Легко обновлять
• Легко разработать
VSАдаптив Приложение на BitrixMobile
• Поиск
• Трафик в 2x больше
• Персонализация
• Скорость
• Контакт с брендом
• User Experience
• Push-уведомления
• Взаимодействие с другими
приложениями
• Низкая стоимость
• «Кроссплатформенность»
• Легко обновлять
• Легко разработать
• Поддержка Android 6/iOS 10
• Новые плагины Cordova
• Возможность подключения фреймворков для
аналитики
• Поддержка авторизации через соц.сервисы.
• Real-time обновление оффлайн файлов
Планы по платформе BitrixMobile
Спасибо за
внимание!
Вопросы?
Александр Сербул
@AlexSerbul
serbul@1c-bitrix.ru

More Related Content

What's hot

Сайт конференции
Сайт конференцииСайт конференции
Сайт конференции
1С-Битрикс
 
Решения для образования
Решения для образованияРешения для образования
Решения для образования
1С-Битрикс
 
Внутренний портал учебного заведения
Внутренний портал учебного заведенияВнутренний портал учебного заведения
Внутренний портал учебного заведения
1С-Битрикс
 
RTC team - canopus project
RTC team -  canopus projectRTC team -  canopus project
RTC team - canopus projectVitaliy Kitaev
 
канопус
канопусканопус
канопусsumitru
 
1c bitrix eduСайт для образовательных учреждений
1c bitrix eduСайт для образовательных учреждений1c bitrix eduСайт для образовательных учреждений
1c bitrix eduСайт для образовательных учреждений
1С-Битрикс
 
Zoho: что нового за 2018 год?
Zoho: что нового за 2018 год?Zoho: что нового за 2018 год?
Zoho: что нового за 2018 год?
CRMOZ
 
Bx inst
Bx instBx inst
Bx inst
ShadlukAvan
 
DTS CISLINK rus
DTS CISLINK rusDTS CISLINK rus
DTS CISLINK rus
Pavel Nazarov
 
Платформа "Агент+ 2.0" - возможности для быстрой разработки мобильных бизнес...
Платформа  "Агент+ 2.0" - возможности для быстрой разработки мобильных бизнес...Платформа  "Агент+ 2.0" - возможности для быстрой разработки мобильных бизнес...
Платформа "Агент+ 2.0" - возможности для быстрой разработки мобильных бизнес...Elena Kotina
 
Акция Битрикс24 и Картасофта
Акция Битрикс24 и КартасофтаАкция Битрикс24 и Картасофта
Акция Битрикс24 и Картасофта
Михаил Кирилин
 
Share point 2016 Что нового
Share point 2016 Что новогоShare point 2016 Что нового
Share point 2016 Что нового
Stas Vyschepan
 
Интеграция 1С-Битрикс с 1С- от коробочного функционала до кастомизированной о...
Интеграция 1С-Битрикс с 1С- от коробочного функционала до кастомизированной о...Интеграция 1С-Битрикс с 1С- от коробочного функционала до кастомизированной о...
Интеграция 1С-Битрикс с 1С- от коробочного функционала до кастомизированной о...
Агентство AlterEGO
 
Автокомпозит: ускоряем сайт за 15 минут
Автокомпозит: ускоряем сайт за 15 минутАвтокомпозит: ускоряем сайт за 15 минут
Автокомпозит: ускоряем сайт за 15 минут
1С-Битрикс
 

What's hot (15)

Сайт конференции
Сайт конференцииСайт конференции
Сайт конференции
 
Решения для образования
Решения для образованияРешения для образования
Решения для образования
 
Внутренний портал учебного заведения
Внутренний портал учебного заведенияВнутренний портал учебного заведения
Внутренний портал учебного заведения
 
RTC team - canopus project
RTC team -  canopus projectRTC team -  canopus project
RTC team - canopus project
 
канопус
канопусканопус
канопус
 
1c bitrix eduСайт для образовательных учреждений
1c bitrix eduСайт для образовательных учреждений1c bitrix eduСайт для образовательных учреждений
1c bitrix eduСайт для образовательных учреждений
 
Zoho: что нового за 2018 год?
Zoho: что нового за 2018 год?Zoho: что нового за 2018 год?
Zoho: что нового за 2018 год?
 
Bitrix 24
Bitrix 24Bitrix 24
Bitrix 24
 
Bx inst
Bx instBx inst
Bx inst
 
DTS CISLINK rus
DTS CISLINK rusDTS CISLINK rus
DTS CISLINK rus
 
Платформа "Агент+ 2.0" - возможности для быстрой разработки мобильных бизнес...
Платформа  "Агент+ 2.0" - возможности для быстрой разработки мобильных бизнес...Платформа  "Агент+ 2.0" - возможности для быстрой разработки мобильных бизнес...
Платформа "Агент+ 2.0" - возможности для быстрой разработки мобильных бизнес...
 
Акция Битрикс24 и Картасофта
Акция Битрикс24 и КартасофтаАкция Битрикс24 и Картасофта
Акция Битрикс24 и Картасофта
 
Share point 2016 Что нового
Share point 2016 Что новогоShare point 2016 Что нового
Share point 2016 Что нового
 
Интеграция 1С-Битрикс с 1С- от коробочного функционала до кастомизированной о...
Интеграция 1С-Битрикс с 1С- от коробочного функционала до кастомизированной о...Интеграция 1С-Битрикс с 1С- от коробочного функционала до кастомизированной о...
Интеграция 1С-Битрикс с 1С- от коробочного функционала до кастомизированной о...
 
Автокомпозит: ускоряем сайт за 15 минут
Автокомпозит: ускоряем сайт за 15 минутАвтокомпозит: ускоряем сайт за 15 минут
Автокомпозит: ускоряем сайт за 15 минут
 

Viewers also liked

Единый канал коммуникаций между бизнесом и его клиентами
Единый канал коммуникаций между бизнесом и его клиентамиЕдиный канал коммуникаций между бизнесом и его клиентами
Единый канал коммуникаций между бизнесом и его клиентами
Voximplant
 
Getbrand | Think, Do Different
Getbrand | Think, Do DifferentGetbrand | Think, Do Different
Getbrand | Think, Do Different
Andrey Gornov
 
Парадоксы нового брендинга
Парадоксы нового брендингаПарадоксы нового брендинга
Парадоксы нового брендинга
LABELMEN
 
Дмитрий Чирков, Vitamin Group: "Как привлекать и удерживать клиентов с мобиль...
Дмитрий Чирков, Vitamin Group: "Как привлекать и удерживать клиентов с мобиль...Дмитрий Чирков, Vitamin Group: "Как привлекать и удерживать клиентов с мобиль...
Дмитрий Чирков, Vitamin Group: "Как привлекать и удерживать клиентов с мобиль...
web2win
 
Основной продукт vs. мобильный на примере Ostrovok.ru
Основной продукт vs. мобильный на примере Ostrovok.ruОсновной продукт vs. мобильный на примере Ostrovok.ru
Основной продукт vs. мобильный на примере Ostrovok.ru
Anatoly Sharifulin
 
Мобильный сайт или мобильное приложение?
Мобильный сайт или мобильное приложение?Мобильный сайт или мобильное приложение?
Мобильный сайт или мобильное приложение?
Anatoly Sharifulin
 
Интуитивный контент-маркетинг: все делают это
Интуитивный контент-маркетинг: все делают этоИнтуитивный контент-маркетинг: все делают это
Интуитивный контент-маркетинг: все делают это
Катерина Ерошина
 
мобильное приложение для роста прибыли вашего бизнеса
мобильное приложение для роста прибыли вашего бизнесамобильное приложение для роста прибыли вашего бизнеса
мобильное приложение для роста прибыли вашего бизнеса
Ekaterina Yasenskaya
 
5 Mobile App ROI Metrics That Actually Matter
5 Mobile App ROI Metrics That Actually Matter5 Mobile App ROI Metrics That Actually Matter
5 Mobile App ROI Metrics That Actually Matter
Pocket Your Shop
 
Mobile-First SEO - The Marketers Edition #3XEDigital
Mobile-First SEO - The Marketers Edition #3XEDigitalMobile-First SEO - The Marketers Edition #3XEDigital
Mobile-First SEO - The Marketers Edition #3XEDigital
Aleyda Solís
 

Viewers also liked (10)

Единый канал коммуникаций между бизнесом и его клиентами
Единый канал коммуникаций между бизнесом и его клиентамиЕдиный канал коммуникаций между бизнесом и его клиентами
Единый канал коммуникаций между бизнесом и его клиентами
 
Getbrand | Think, Do Different
Getbrand | Think, Do DifferentGetbrand | Think, Do Different
Getbrand | Think, Do Different
 
Парадоксы нового брендинга
Парадоксы нового брендингаПарадоксы нового брендинга
Парадоксы нового брендинга
 
Дмитрий Чирков, Vitamin Group: "Как привлекать и удерживать клиентов с мобиль...
Дмитрий Чирков, Vitamin Group: "Как привлекать и удерживать клиентов с мобиль...Дмитрий Чирков, Vitamin Group: "Как привлекать и удерживать клиентов с мобиль...
Дмитрий Чирков, Vitamin Group: "Как привлекать и удерживать клиентов с мобиль...
 
Основной продукт vs. мобильный на примере Ostrovok.ru
Основной продукт vs. мобильный на примере Ostrovok.ruОсновной продукт vs. мобильный на примере Ostrovok.ru
Основной продукт vs. мобильный на примере Ostrovok.ru
 
Мобильный сайт или мобильное приложение?
Мобильный сайт или мобильное приложение?Мобильный сайт или мобильное приложение?
Мобильный сайт или мобильное приложение?
 
Интуитивный контент-маркетинг: все делают это
Интуитивный контент-маркетинг: все делают этоИнтуитивный контент-маркетинг: все делают это
Интуитивный контент-маркетинг: все делают это
 
мобильное приложение для роста прибыли вашего бизнеса
мобильное приложение для роста прибыли вашего бизнесамобильное приложение для роста прибыли вашего бизнеса
мобильное приложение для роста прибыли вашего бизнеса
 
5 Mobile App ROI Metrics That Actually Matter
5 Mobile App ROI Metrics That Actually Matter5 Mobile App ROI Metrics That Actually Matter
5 Mobile App ROI Metrics That Actually Matter
 
Mobile-First SEO - The Marketers Edition #3XEDigital
Mobile-First SEO - The Marketers Edition #3XEDigitalMobile-First SEO - The Marketers Edition #3XEDigital
Mobile-First SEO - The Marketers Edition #3XEDigital
 

Similar to Видеозвонки и шаринг экрана в мобильном приложении

Сергей Рыжиков, Александр Сербул (1С-Битрикс)
Сергей Рыжиков, Александр Сербул (1С-Битрикс)Сергей Рыжиков, Александр Сербул (1С-Битрикс)
Сергей Рыжиков, Александр Сербул (1С-Битрикс)Ontico
 
Микросервисы в .NET Core
Микросервисы в .NET CoreМикросервисы в .NET Core
Микросервисы в .NET Core
Andrew Gubskiy
 
Что вас ждет на пути реализации Soa (Битрикс отступает)
Что вас ждет на пути реализации Soa (Битрикс отступает)Что вас ждет на пути реализации Soa (Битрикс отступает)
Что вас ждет на пути реализации Soa (Битрикс отступает)
Василий Савунов
 
HTML5, WebRTC технологии для коммуникаций в режиме реального времени и Jabber...
HTML5, WebRTC технологии для коммуникаций в режиме реального времени и Jabber...HTML5, WebRTC технологии для коммуникаций в режиме реального времени и Jabber...
HTML5, WebRTC технологии для коммуникаций в режиме реального времени и Jabber...
Cisco Russia
 
Программируемость коммутаторов для ЦОД Cisco Nexus
Программируемость коммутаторов для ЦОД Cisco NexusПрограммируемость коммутаторов для ЦОД Cisco Nexus
Программируемость коммутаторов для ЦОД Cisco Nexus
Cisco Russia
 
Лучшие практики использования ВКС. Обзор системы видеоконференцсвязи TrueConf...
Лучшие практики использования ВКС. Обзор системы видеоконференцсвязи TrueConf...Лучшие практики использования ВКС. Обзор системы видеоконференцсвязи TrueConf...
Лучшие практики использования ВКС. Обзор системы видеоконференцсвязи TrueConf...
TrueConf
 
Организация видео-контакт-центра на базе решения Cisco Remote Expert
Организация видео-контакт-центра на базе решения Cisco Remote ExpertОрганизация видео-контакт-центра на базе решения Cisco Remote Expert
Организация видео-контакт-центра на базе решения Cisco Remote Expert
Cisco Russia
 
RealSpeaker Rus startup project
RealSpeaker Rus startup projectRealSpeaker Rus startup project
RealSpeaker Rus startup project
RealSpeaker 2.0
 
Как сделать интернет-сайт на SharePoint и не передумать на полпути
Как сделать интернет-сайт на SharePoint и не передумать на полпутиКак сделать интернет-сайт на SharePoint и не передумать на полпути
Как сделать интернет-сайт на SharePoint и не передумать на полпутиAndrew Mayorov
 
Платформа для Интернета вещей AggreGate
Платформа для Интернета вещей AggreGateПлатформа для Интернета вещей AggreGate
Платформа для Интернета вещей AggreGate
Tibbo
 
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
Ontico
 
"Как заработать на внедрении отечественной системы ВКС в условиях импортозаме...
"Как заработать на внедрении отечественной системы ВКС в условиях импортозаме..."Как заработать на внедрении отечественной системы ВКС в условиях импортозаме...
"Как заработать на внедрении отечественной системы ВКС в условиях импортозаме...
TrueConf
 
Решения Brocade для построения IP сетей будущего
Решения Brocade для построения IP сетей будущегоРешения Brocade для построения IP сетей будущего
Решения Brocade для построения IP сетей будущего
ARCCN
 
Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...
Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...
Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...
Cisco Russia
 
Перспективы сервисов видеоконференцсвязи в России. Докладчик: Дмитрий Одинцов...
Перспективы сервисов видеоконференцсвязи в России. Докладчик: Дмитрий Одинцов...Перспективы сервисов видеоконференцсвязи в России. Докладчик: Дмитрий Одинцов...
Перспективы сервисов видеоконференцсвязи в России. Докладчик: Дмитрий Одинцов...
TrueConf
 
Rad studio 10 seatlle обзор продукта
Rad studio 10 seatlle обзор продуктаRad studio 10 seatlle обзор продукта
Rad studio 10 seatlle обзор продукта
azamat isaev
 
Построение системы видеокоммуникаций для большого числа пользователей в сети ...
Построение системы видеокоммуникаций для большого числа пользователей в сети ...Построение системы видеокоммуникаций для большого числа пользователей в сети ...
Построение системы видеокоммуникаций для большого числа пользователей в сети ...
yaevents
 
Developer experience и API как продукт
Developer experience и API как продуктDeveloper experience и API как продукт
Developer experience и API как продукт
Anastasia Goryacheva
 
RealSpeaker Ru
RealSpeaker RuRealSpeaker Ru
RealSpeaker Ru
RealSpeaker 2.0
 

Similar to Видеозвонки и шаринг экрана в мобильном приложении (20)

Сергей Рыжиков, Александр Сербул (1С-Битрикс)
Сергей Рыжиков, Александр Сербул (1С-Битрикс)Сергей Рыжиков, Александр Сербул (1С-Битрикс)
Сергей Рыжиков, Александр Сербул (1С-Битрикс)
 
Микросервисы в .NET Core
Микросервисы в .NET CoreМикросервисы в .NET Core
Микросервисы в .NET Core
 
Что вас ждет на пути реализации Soa (Битрикс отступает)
Что вас ждет на пути реализации Soa (Битрикс отступает)Что вас ждет на пути реализации Soa (Битрикс отступает)
Что вас ждет на пути реализации Soa (Битрикс отступает)
 
HTML5, WebRTC технологии для коммуникаций в режиме реального времени и Jabber...
HTML5, WebRTC технологии для коммуникаций в режиме реального времени и Jabber...HTML5, WebRTC технологии для коммуникаций в режиме реального времени и Jabber...
HTML5, WebRTC технологии для коммуникаций в режиме реального времени и Jabber...
 
Программируемость коммутаторов для ЦОД Cisco Nexus
Программируемость коммутаторов для ЦОД Cisco NexusПрограммируемость коммутаторов для ЦОД Cisco Nexus
Программируемость коммутаторов для ЦОД Cisco Nexus
 
Лучшие практики использования ВКС. Обзор системы видеоконференцсвязи TrueConf...
Лучшие практики использования ВКС. Обзор системы видеоконференцсвязи TrueConf...Лучшие практики использования ВКС. Обзор системы видеоконференцсвязи TrueConf...
Лучшие практики использования ВКС. Обзор системы видеоконференцсвязи TrueConf...
 
Организация видео-контакт-центра на базе решения Cisco Remote Expert
Организация видео-контакт-центра на базе решения Cisco Remote ExpertОрганизация видео-контакт-центра на базе решения Cisco Remote Expert
Организация видео-контакт-центра на базе решения Cisco Remote Expert
 
RealSpeaker Rus startup project
RealSpeaker Rus startup projectRealSpeaker Rus startup project
RealSpeaker Rus startup project
 
RealSpeaker
RealSpeakerRealSpeaker
RealSpeaker
 
Как сделать интернет-сайт на SharePoint и не передумать на полпути
Как сделать интернет-сайт на SharePoint и не передумать на полпутиКак сделать интернет-сайт на SharePoint и не передумать на полпути
Как сделать интернет-сайт на SharePoint и не передумать на полпути
 
Платформа для Интернета вещей AggreGate
Платформа для Интернета вещей AggreGateПлатформа для Интернета вещей AggreGate
Платформа для Интернета вещей AggreGate
 
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
 
"Как заработать на внедрении отечественной системы ВКС в условиях импортозаме...
"Как заработать на внедрении отечественной системы ВКС в условиях импортозаме..."Как заработать на внедрении отечественной системы ВКС в условиях импортозаме...
"Как заработать на внедрении отечественной системы ВКС в условиях импортозаме...
 
Решения Brocade для построения IP сетей будущего
Решения Brocade для построения IP сетей будущегоРешения Brocade для построения IP сетей будущего
Решения Brocade для построения IP сетей будущего
 
Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...
Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...
Облачные приложения и построение платформ для них на базе Openstack Дмитрий Х...
 
Перспективы сервисов видеоконференцсвязи в России. Докладчик: Дмитрий Одинцов...
Перспективы сервисов видеоконференцсвязи в России. Докладчик: Дмитрий Одинцов...Перспективы сервисов видеоконференцсвязи в России. Докладчик: Дмитрий Одинцов...
Перспективы сервисов видеоконференцсвязи в России. Докладчик: Дмитрий Одинцов...
 
Rad studio 10 seatlle обзор продукта
Rad studio 10 seatlle обзор продуктаRad studio 10 seatlle обзор продукта
Rad studio 10 seatlle обзор продукта
 
Построение системы видеокоммуникаций для большого числа пользователей в сети ...
Построение системы видеокоммуникаций для большого числа пользователей в сети ...Построение системы видеокоммуникаций для большого числа пользователей в сети ...
Построение системы видеокоммуникаций для большого числа пользователей в сети ...
 
Developer experience и API как продукт
Developer experience и API как продуктDeveloper experience и API как продукт
Developer experience и API как продукт
 
RealSpeaker Ru
RealSpeaker RuRealSpeaker Ru
RealSpeaker Ru
 

More from Voximplant

Intelligent CPaaS with AI-powered capabiities
Intelligent CPaaS with AI-powered capabiitiesIntelligent CPaaS with AI-powered capabiities
Intelligent CPaaS with AI-powered capabiities
Voximplant
 
Чат-бот как новый способ взаимодействия с клиентом
Чат-бот как новый способ взаимодействия с клиентомЧат-бот как новый способ взаимодействия с клиентом
Чат-бот как новый способ взаимодействия с клиентом
Voximplant
 
Почему посетители не звонят из браузера
Почему посетители не звонят из браузераПочему посетители не звонят из браузера
Почему посетители не звонят из браузера
Voximplant
 
Создание кроссплатформенного конструктора чат-ботов с обработкой голосовых со...
Создание кроссплатформенного конструктора чат-ботов с обработкой голосовых со...Создание кроссплатформенного конструктора чат-ботов с обработкой голосовых со...
Создание кроссплатформенного конструктора чат-ботов с обработкой голосовых со...
Voximplant
 
13 грехов разработчиков чат-ботов: взгляд со стороны Product Design
13 грехов разработчиков чат-ботов: взгляд со стороны Product Design13 грехов разработчиков чат-ботов: взгляд со стороны Product Design
13 грехов разработчиков чат-ботов: взгляд со стороны Product Design
Voximplant
 
Будущее real-time коммуникаций
Будущее real-time коммуникацийБудущее real-time коммуникаций
Будущее real-time коммуникаций
Voximplant
 
Выбор backend для messaging в 2016 году
Выбор backend для messaging в 2016 годуВыбор backend для messaging в 2016 году
Выбор backend для messaging в 2016 году
Voximplant
 
Использование машинного обучения и распознавания речи для оценки типа и качес...
Использование машинного обучения и распознавания речи для оценки типа и качес...Использование машинного обучения и распознавания речи для оценки типа и качес...
Использование машинного обучения и распознавания речи для оценки типа и качес...
Voximplant
 
Потоковая обработка событий клиентов и их отображение на интерактивной карте
Потоковая обработка событий клиентов и их отображение на интерактивной картеПотоковая обработка событий клиентов и их отображение на интерактивной карте
Потоковая обработка событий клиентов и их отображение на интерактивной карте
Voximplant
 
SMS: Король умер. Да здравствует король!
SMS: Король умер. Да здравствует король!SMS: Король умер. Да здравствует король!
SMS: Король умер. Да здравствует король!
Voximplant
 
Темное настоящее и светлое будущее WebRTC
Темное настоящее и светлое будущее WebRTCТемное настоящее и светлое будущее WebRTC
Темное настоящее и светлое будущее WebRTC
Voximplant
 

More from Voximplant (11)

Intelligent CPaaS with AI-powered capabiities
Intelligent CPaaS with AI-powered capabiitiesIntelligent CPaaS with AI-powered capabiities
Intelligent CPaaS with AI-powered capabiities
 
Чат-бот как новый способ взаимодействия с клиентом
Чат-бот как новый способ взаимодействия с клиентомЧат-бот как новый способ взаимодействия с клиентом
Чат-бот как новый способ взаимодействия с клиентом
 
Почему посетители не звонят из браузера
Почему посетители не звонят из браузераПочему посетители не звонят из браузера
Почему посетители не звонят из браузера
 
Создание кроссплатформенного конструктора чат-ботов с обработкой голосовых со...
Создание кроссплатформенного конструктора чат-ботов с обработкой голосовых со...Создание кроссплатформенного конструктора чат-ботов с обработкой голосовых со...
Создание кроссплатформенного конструктора чат-ботов с обработкой голосовых со...
 
13 грехов разработчиков чат-ботов: взгляд со стороны Product Design
13 грехов разработчиков чат-ботов: взгляд со стороны Product Design13 грехов разработчиков чат-ботов: взгляд со стороны Product Design
13 грехов разработчиков чат-ботов: взгляд со стороны Product Design
 
Будущее real-time коммуникаций
Будущее real-time коммуникацийБудущее real-time коммуникаций
Будущее real-time коммуникаций
 
Выбор backend для messaging в 2016 году
Выбор backend для messaging в 2016 годуВыбор backend для messaging в 2016 году
Выбор backend для messaging в 2016 году
 
Использование машинного обучения и распознавания речи для оценки типа и качес...
Использование машинного обучения и распознавания речи для оценки типа и качес...Использование машинного обучения и распознавания речи для оценки типа и качес...
Использование машинного обучения и распознавания речи для оценки типа и качес...
 
Потоковая обработка событий клиентов и их отображение на интерактивной карте
Потоковая обработка событий клиентов и их отображение на интерактивной картеПотоковая обработка событий клиентов и их отображение на интерактивной карте
Потоковая обработка событий клиентов и их отображение на интерактивной карте
 
SMS: Король умер. Да здравствует король!
SMS: Король умер. Да здравствует король!SMS: Король умер. Да здравствует король!
SMS: Король умер. Да здравствует король!
 
Темное настоящее и светлое будущее WebRTC
Темное настоящее и светлое будущее WebRTCТемное настоящее и светлое будущее WebRTC
Темное настоящее и светлое будущее WebRTC
 

Видеозвонки и шаринг экрана в мобильном приложении

  • 1. Видеозвонки в мобильном приложении и шаринг экрана Александр Сербул Руководитель направления
  • 2. Карл… Карл, я закодил звонки по WebRTC на 10 строках JavaScript! Это очень круто, пап!
  • 3. Карл… Карл, я специалист по BigData…. Это очень круто, пап! Но я не понимаю, как ОНО работает и кто такие чертовые STUN, TURN и SCTP. СОВСЕМ!!!
  • 4. О чем поговорим... • Как работают видеозвонки по WebRTC — в теории и на практике • Подводные камни, грабли WebRTC, наш опыт создания видео-кластера • Подходы к созданию мобильного приложения • Как устроены видеозвонки в платформе BitrixMobile
  • 5. Как мы общаемся? Распределенная команда… Skype Google Hangouts Обмен документами, изображениями, паролями…
  • 6. Риски Нас могут слушать и … слушают. Зависимость от инфраструктуры вендора Проприетарные протоколы Развитие продукта в своих целях
  • 7. WebRTC или не WebRTC? Skype, Google Hangouts – не WebRTC! Плагины, закрытые протоколы, кластеры вендора WebRTC – peer-to-peer Открытая технология, HTML5 HD Эффективные кодеки Не нужен SIP
  • 8. Стандарты http://www.w3.org/TR/webrtc/ - “стандарт” W3C Working Draft 13 September 2016 http://www.webrtc.org/ - реализация (компании Google, Mozilla, Opera) Chrome - stable Firefox – stable Opera - stable Android (шероховатости)
  • 9. Кодеки HTML5 конкуренты формату H.264 WebM: VP8/Vorbis/Matroska WebRTC: VP8/(Opus, iSAC, iLBC) VP9 – c 01/2014 официальная поддержка на YouTube
  • 10. http://www.w3.org/TR/mediacapture-streams/ W3C Candidate Recommendation 19 May 2016 Media Capture and Streams – структура браузерного API
  • 11. Использование Media Capture and Streams Работа с тегами Video, объектами Canvas, MediaStream, MediaStreamTrack
  • 12. «Real-time Communication Between Browsers» RTCPeerConnection – видео-аудио связь между браузерами RTCDataChannel – передача данных в обе стороны RTCStatsReport - статистика WebRTC – структура API
  • 13. На этом «мультики» заканчиваются
  • 14. (C) Ilya Grigorik И начинается технологический хардкор ;-)
  • 17. ICE – «как найти друг друга» (C) Ilya Grigorik «Interactive Connectivity Establishment (ICE)» (RFC 5245, 2010) Браузеры «находят» друг друга, используя технологии STUN/TURN. Видео-аудио передается по протоколу SRTP (/UDP). «Secure Real-time Transport Protocol» (RFC 3711, 2004)
  • 18. STUN, TURN «Session Traversal Utilities for NAT (STUN)» (RFC 5245, 2008) «Traversal Using Relays around NAT (TURN)» (RFC 5766, 2010) Сначала NAT изобрели, потом начали «обходить» 
  • 19. Signaling Браузеры передают описание сессии друг другу - SDP «An Offer/Answer Model with the Session Description Protocol (SDP)» (RFC 3264, 2002 год) Сигналинг реализуете Вы в своем приложении
  • 22. Cтатусы peer Браузеры обмениваются описанием локальных потоков (streams) и портов через SDP v=0 o=jdoe 2890844526 2890842807 IN IP4 10.47.16.5 s=SDP Seminar i=A Seminar on the session description protocol u=http://www.example.com/seminars/sdp.pdf e=j.doe@example.com (Jane Doe) c=IN IP4 224.2.17.12/127 t=2873397496 2873404696 a=recvonly m=audio 49170 RTP/AVP 0 m=video 51372 RTP/AVP 99 a=rtpmap:99 h263-1998/90000
  • 23. Cтатусы ICE Соединение установлено, когда «состыкованы» все медиа-потоки.
  • 26. Настройка файерволов Вариант 1. Открыть все исходящие/входящие UDP. Вариант 2. Открыть вх./исх. на TURN/STUN-сервер: порт 3478 (UDP/TCP) порт 5349 (TLS) Открыть исходящие UDP на TURN/STUN сервер, порты каналов (или все).
  • 27. Софт для TURN/STUN restund (BSD license) TurnServer (GNU GPL) rfc5766-turn-server (New BSD) Licode – пример открытого MCU для видео-конференций по WebRTC
  • 28. Собственный видео-кластер turn.calls.bitrix24.com – поддержка любых видов NAT (STUN, TURN) Кластер из 2 серверов. DNS-failover. ~10% соединений потребуют TURN/relay 1 relay stream => ~ 1Mbps
  • 29. Групповые звонки по WebRTC 4 человека – (mesh network) часто оптимально Не нужен доп. софт. Трафик! MCU: Medoose+Asterisk Licode
  • 30. Какое решение выбрать? Мобильный сайт Адаптив Приложение
  • 31. VSАдаптив Приложение • Персонализация • Скорость • Контакт с брендом • User Experience • Push-уведомления • Взаимодействие с другими приложениями • Поиск • Трафик в 2x больше • Низкая стоимость • «Кроссплатформенность» • Легко обновлять • Легко разработать
  • 32. VSАдаптив Приложение * Исследование comScore Больше уникальных юзеров Больше уникальных действий
  • 33. Android Instant Apps iOS Spotlight Индексация контента поисковиками Интеграция с операционной системой Поиск VSАдаптив Приложение
  • 34. Android Instant Apps iOS Spotlight Google сможет индексировать контент приложений и запускать приложение без установки прямо из поисковой выдачи Интеграция с локальным поиском. Средствами системы можно найти контент в установленных приложениях
  • 35. • Вы хотите дать клиенту богатый User Experience • Необходимо часто взаимодействовать с пользователем • Сайт/сервис подходит под определенную категорию • Ваш сервис подразумевает частые повторные заказы • Вы – онлайн сервис • Сообщества, управляющие компании (ЖКХ) • Необходимы функции, которые недоступны в браузере А когда нужно делать приложение?
  • 37. • Разработка на HTML+JS+CSS+PHP • Кроссплатформенность • Низкая стоимость разработки • Масштабируемость • Интеграция с нативными интерфейсами • Возможность создавать оффлайн-приложения • Конфигурирование через конструктор • Тестирование на приложении для разработчиков • Нет необходимости выпускать приложение после внесения изменений на сервере Продукт «1С-Битрикс: Мобильное приложение»
  • 39. Как это работает Разработка на PHP/JS/HTML Мгновенный результат
  • 40. Платформа BitrixMobile Cordova trixMobile Native Mobile Application Java, Objective-C BitrixMobile JS Контент Javascript, HTML, CSS Сервер Вызов JS-функции AВызов нативной функции A
  • 41. Бесплатные инструменты разработки JS API + NATIVE Конструктор HTML, CSS, Javascript BitrixMobile JS API Нативные элементы Приложение для разработчиков 2 31
  • 42. bitrix_mobile_core.js офлайн ресурсы настройки Публикация нашими специалистами /index.html /menu.html /detail.html /script.js /style.css /bitrix_mobile_core.js РАЗРАБОТКА И НАСТРОЙКА СБОРКА ПРИЛОЖЕНИЯ С ВАШИМИ ФАЙЛАМИ И НАСТРОЙКАМИ ПУБЛИКАЦИЯ 2 31
  • 43. VSАдаптив Приложение • Поиск • Трафик в 2x больше • Персонализация • Скорость • Контакт с брендом • User Experience • Push-уведомления • Взаимодействие с другими приложениями • Низкая стоимость • «Кроссплатформенность» • Легко обновлять • Легко разработать
  • 44. VSАдаптив Приложение на BitrixMobile • Поиск • Трафик в 2x больше • Персонализация • Скорость • Контакт с брендом • User Experience • Push-уведомления • Взаимодействие с другими приложениями • Низкая стоимость • «Кроссплатформенность» • Легко обновлять • Легко разработать
  • 45. • Поддержка Android 6/iOS 10 • Новые плагины Cordova • Возможность подключения фреймворков для аналитики • Поддержка авторизации через соц.сервисы. • Real-time обновление оффлайн файлов Планы по платформе BitrixMobile