Upload
cisco-russia
View
527
Download
3
Embed Size (px)
Citation preview
HTML5, WebRTC технологии для коммуникаций в режиме реального времени и Jabber Guest
Сергей Юцайтис – консультант по технологиям совместной работы
23.11.15 © 2015 Cisco and/or its affiliates. All rights reserved.
Что такое WebRTC
Что такое WebRTC: § WebRTC это API определенный, продвигаемый и разработанный Консорциумом Всемирной паутины (World Wide Web Consortium -W3C)
§ Это открытый, не коммерческий стандарт, который позволяет веб браузерам обмениваться информацией в режиме реального времени (Real-Time Communications -RTC) через простой JavaScript API
В чем ценность WebRTC: § WebRTC позволяет приложениям реализовывать возможности телефонии, видеосвязи и P2P обмена файлами внутри браузера без загрузки плагина или (внешнего программного клиента)
2
Браузерные приложения для голосового и видео общения сегодня...
3
Но…
У каждого производителя своя реализация – нет совместимости Требуется установка плагинов Сложности с установкой (разрешения и т.д...) Не на всех платформах доступны, мобильные – iOS и Android, Linux Их необходимо обновлять Сам по себе браузер не может открыть медиа сессию (для обмена голосом и видео)
4
Браузеры старых версий плохо подходят для реализации телекоммуникационных приложенний
Программного телефона Кодирования звука в реальном времени Кодирования видео в реальном времени Обмена контентом в реальном времени Сигнализации Шифрования медиа трафика
Плагины и внешние приложения требуются для поддержки функционала
5
Возможность отправки медиа на удаленную сторону Согласование протоколов Оповещения пользователя Преодоление NAT и firewall Управление периферийными устройствами Детектирование активности системы
Разработка браузерных технологий, направленных на отказ от плагинов, последнее время резко ускорилась. WebRTC сегодня становится основной альтернативой загружаемым модулям.
UC/Видео сегодня не часто используется через браузер..
Плагины или внешние приложения могут быть запущены, если требуются
6
Те же ограничения встречают пользователи мобильных платформ
Требуются внешние приложения
7
Приложения и приложения выполняемые в браузере ПК приложения
8
Основанные на браузере приложения
Преимущества • Межплатформенность • Быстрое развёртывание
Вчерашние ограничения • Подключение к сети • Ограниченные возможности UI • Дизайн UI • Медленные • Ограниченный доступ к оборудованию
• Ограниченные мультимедийные возможности
Сегодня браузеры поддерживают гораздо
больше • Аудио и Видео (вещание и в
реальном режиме времени) • Хранение данных в офлайн и
локальные базы данных • 2D и 3D графика • Выполнение в фоне, потоки • Расширенная публикация
уведомлений • Средства обеспечения безопасности
приложений • Лучший UI, управление шрифтами
Браузер обеспечивает доступ к локальным
ресурсам • Геолокация • Адресная книга • Микрофон и камера • SMS, MMS, почта • Drag & Drop
Сегодня
Эволюция технологий браузера и WebRTC
23.11.15 © 2015 Cisco and/or its affiliates. All rights reserved. 9
Эволюция браузерных технологий
10
HTTP (Pre AJAX)
AJAX (2004)
Web Socket (2008)
WebRTC (2012)
Обычный Web, запрос, выполненный на странице возвращает код страницы
(Geocities)
Часть страницы может обновляться без перезагрузки
страницы целиком (Gmail)
Браузер может открывать сессию двунаправленного обшения
Страница браузера может обмениваться информацией напрямую с другой страницей
Browser Server
Browser Server
Browser Server
Browser
http://venturebeat.com/2012/08/13/webrtc-is-almost-here-and-it-will-change-the-web/
http://www.evolutionoftheweb.com/
Browser
Браузеры запрещают загрузку и запуск плагинов
Производители браузеров (Google Chrome и Mozilla Firefox) планируют полностью прекратить поддержку плагинов в ближайшем будущем
Chrome и Firefox первые ввели политику запрета
11
“To give people more control over their browser, Firefox will no longer activate most plugins by
default” - Для того чтобы дать пользователю больше
возможностей по управлению браузером Firefox больше не будет разрешать загрузку и запуск большинства плагинов «по умолчанию».
https://blog.mozilla.org/futurereleases/2013/09/24/plugin-activation-in-firefox/
“Today’s browsers are speedier, safer, and more capable than their ancestors. Meanwhile, NPAPI’s 90s-era architecture has become a leading cause of hangs, crashes, security incidents, and code complexity. Because of this, Chrome will be phasing
out NPAPI support over the coming year.” - Сегодня браузеры быстрее, безопаснее и функциональнее чем были раньше. Архитектура веб. приложений 90-х,
основанная на плагинах, становится слишком громоздкой, уязвимой, содержит многочисленные ошибки. Поэтому Chrome планирует прекратить поддержку загружаемых
модулей (плагинов) в ближайшие годы http://blog.chromium.org/2013/09/saying-goodbye-to-our-old-
friend-npapi.html
• Для предотвращения недовольства пользователей, Google Chrome будет поддерживать список разрешенных популярных плагинов.
Загрузка и запуск плагинов сегодня
Chrome и Firefox поддерживают список разрешенных плагинов
12
Обзор HTML5 Стандарт начал поддерживаться браузерами еще до окончательного утверждения
13
<!DOCTYPE html>
SEMANTICS
<audio>
<video> <section>
<header> <footer>
<output>
<time> MathML
MEDIA & GRAPHICS WebRTC RTCWeb
<audio> <video> <canvas>
WebGL SVG
OFFLINE / STORAGE
Application Cache IndexedDB localStorage STYLING
border-radius
border-image
columns
backgrounds
shadows
transitions
animations
PERFORMANCE
Web Sockets Web Workers XMLHttpRequest
window.history
Drag & Drop
CSS3
Touch Events
Full Screen
INTEGRATION
Geolocation
14
Замороженные или отмененные
Сторонние стандарты (не W3C)
В стадии разработки
Практически готовы
Тестовая версия (Candidate recommendation)
Рекомендация закончена и опубликована
HTML5
Ключевые возможности Медиа потоки Get User Media: для захвата аудио или видео с веб-камеры или микрофона WebRTC обеспечивает работу с устройствами захвата передающими один или несколько синхронизированных потоков медиа Адрес медиа необходимо представить в виде URL для возможности проиграть его средствами HTML5 Поддержка соединений точка - точка Соединения с поддержкой видео и звука высокого качества Управление методами и протоколами кодирования Шифрование Управление полосой пропускания Канал передачи данных Передача данных приложения точка – точка (поддерживается не всеми браузерами)
15
Что это означает?
Это означает что привычные нам приложения для телефонной и видеосвязи (такие как, например, Jabber и Skype) легко могут быть заменены встроенными в веб. страницы клиентами (а точнее – компактным кодом, исполняемым браузером).
§ Нет необходимости в установки дополнительных приложений. Браузер сам проделает всю необходимую работу.
Как только передача данных (Data Channel) будет полностью поддержана браузерами -управление удаленным рабочим столом, передача файлов, онлайн игры и текстовый чат в режиме реального времени, а также любой другой функционал, требующий обмена данными, можно будет реализовать только на базе браузера.
16
Что еще станет возможным?
Совмещение с другими веб технологиями откроет путь к совершенно новым возможностям! Например WebGL и HTML5 применяемые вместе с WebRTC позволят сделать функционал не существовавший в индустрии ранее
§ Пример: Применение видеоэффектов в приложениях веб трансляции в режиме реального времени или видеосвязи
17
Этот функционал можно реализовать с минимальными усилиями (очень низкой
стоимостью)
WebRTC архитектура
23.11.15 © 2015 Cisco and/or its affiliates. All rights reserved. 18
Почему это интересно?
Легко разрабатывать
Легко внедрять
Простой доступ
Massive Adoption
§ Не нужны глубокие знания в области VoIP
§ Дает доступ к VoIP технологиям существующим Web программистам
§ Новые приложения § Совместимые компоненты приложений связи
§ Не зависимо от платформы
§ Распространение = URL
§ Хранение в датацентр, а не на индивидуальных устройствах
§ Низкая стоимость обслуживания
§ Мгновенное обновление
§ Доступ в один клик § Любое устройство § Нет необходимости в плагинах/приложениях
§ Расширяет систему коммуникаций предприятия
19
Массовое использование
20
<html> <body> <h1>getUserMedia API Example</h1> <div id='video-space'> <video autoplay></video> </div> <script> navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia; var constraints = {audio: false, video: true}; var video = document.querySelector("video"); function successCallback(stream) { // Выведем видео в окно, что бы убедиться что все работает window.stream = stream; if (window.URL) { video.src = window.URL.createObjectURL(stream); } else { video.src = stream; } video.play(); } function errorCallback(error) { console.log("navigator.getUserMedia error: ", error); } navigator.getUserMedia(constraints, successCallback, errorCallback); </script> </body> </html>
Пример html webrtc кода
Выбор источника видео
Вывод видео в окно
Стратегия Cisco по внедрению HTML5 / WebRTC
Планируется широкое, основанное на стандартах, поддерживаемое большинством браузеров, внедрение WebRTC в течении 1-2 лет
21
Сегодня Cisco использует в своих продуктах только стабильные технологии,
полностью поддерживаемые текущими версиями
браузеров
Разработка новых продуктов с учетом
будущих возможностей браузеров – т.е. - WebRTC
Планируется поддержать все прогрессивные
возможности браузеров как только они станут
доступны
Поддержка встроенных возможностей браузеров
Направление развития
Интерактивное Аудио, Видео, Данные в Браузерах
22
Браузеры
Кодеки
Стандарты
«A» Браузер с
Веб. Приложением X
«Б» Браузер с
Веб. Приложением X
Нативно, без плагина
Приложения
Возможные проблемы
23
Передача медиа Через брандмауэр, NAT
Обеспечение безопасности в браузере, защита медиа потоков
Идентификация звонящего
Оптимизация производительности при обработки/ передачи трафика реального времени
Архитектура основанных на браузере коммуникаций Высокоуровневая архитектура меж-браузерных коммуникаций для приложений связи
24
Веб сервер
Веб. Приложение X через HTTP/HTTPS (т,е. HTML, CSS, JavaScript)
Голос, видео через SRTP (DTLS)
Архитектура WebRTC
Ключевые компоненты
25
…..
Web API (Редакция W3C WG)
Ваше Веб. приложение
WebRTC
WebRTC C++ API (Подключение)
Управление сессией/ Сигнализация (Сессии)
Обработка Звука
isac /iLBC Codec
NetEQ для голоса
Эхоподавитель/ Шумоподавитель
Аудио захват/вывод
Обработка Видео
VP8 / H.264 кодеки
Буфер флуктуации задержки для видео
Обработка/улучшение изображения
Видео захват
Транспортные механизмы
SRTP
Мультиплексирование
P2P STUN+ TURN+ICE
Сеть I/O
Веб. сервер
БРАУЗЕР
Что пока не возможно реализовать с WebRTC
Ограничения WebRTC
26
• Установка сессии пока не реализована в рамках WebRTC. • Проверки доступности (presence) нет в WebRTC
– Установка сессим и сервисы присутствия должны быть реализованы собственным кодом приложения, включающего вызовы WebRTC
• WebRTC поддерживает только общение по схеме точка-точка; нет поддержки схем один-многие и многие-многие (multicast, broadcast)
• Внешние библиотеки могут быть использованы для работы с сигнализацией
– Cafex Fusion Client SDK уже сегодня предоставляет фреймворк для разработки встроенных в браузер приложений связи в реальном режиме времени, легко интегрируемые в корпоративные порталы без необходимости установки пользователем внешних приложений или плагинов.
Установление соединения в WebRTC
27
Приложение 1 вызывает Сервер Приложение 2 принимает вызов
2 Соединяется с сервером 2 Соединяется с сервером
1 Обеспечивает сигнальное соединение
3 информация о соединении (Setup) 4 Передача OFFER на сервер
5 Передача сигнализации удаленной стороне
6 Подтверждение сигнализации: OFFER
7 Информация о соединении (Setup)
8 Передача ANSWER на сервер 9
Передача сигнализации в сторону инициатора соединения
10 Подтверждение приема сигнализации: ANSWER
11 Передача OK на сервер 12
Передача сигнализации удаленной стороне 13 Согласование медиа потоков
Идентификация в WebRTC
Браузер настраивается для запроса сервисов идентификации (identity provider) пользователя
§ Пользователь логинится на сервис идентификации
§ Браузер получает подтверждение от сервиса аутентификации который создает персональную DTLS подпись
§ JavaScript звонящего передает подтверждение идентификации удаленной стороне
§ Браузер удаленного абонента запрашивает сервис аутентификации и проверяет совпадение DTLS подписи
http://www.w3.org/TR/webrtc/#identity-provider-interaction
28
Facebook (сервис
аутентификации)
JS приложение
Браузер 1
JS приложение
Браузер 2 DTLS/SRTP медиа
Вебсайт
1
2
3 3
4
Безопасность в WebRTC
SRTP RTP/SRTP наиболее часто используется в решениях для связи по IP Порядковый номер, синхронизация и т.д,.. Только медиа (payload) шифруется
DTLS DTLS используется для согласования ключей шифрования Само-подписанные сертификаты (Self-signed)
NAT/Firewall Traversal STUN (Session Traversal Utilities for NAT) TURN (Traversal Using Relays around NAT) ICE (Interactive Connectivity Establishment)
29
Архитектура взаимодействия браузера и приложения Подробнее о расширениях для приложений связи в реальном режиме времени
30
Доступ к камере, микрофону Аудио, видео кодеки sRTP как транспорт для медиа, синхронизация потоков и т.д. SRTP шифрование с согласованием ключей по DTLS ICE для преодоления NAT/firewall SCTP/DTLS для обмена данными (многопользовательские игры) Основанные на SDP механизмы согласования режимов/протоколов
Web приложения (HTML, CSS, JavaScript)
API Управление медиа
Другие API браузера
Доступ к камере, микрофону
Кодеки
Аудио/видео RTP Stack
DTLS/SRTP транспорт
ICE
Контроллер согласования
режимов и кодеков данные SCTP/DTLS
= встроено в браузер = приложения использующие новый APIs
WebRTC – Как это работает ? Браузер – обычный терминал
31
Веб сервер
Браузер
Javascript
SRTP
HTTP
SIP Call Agent
SIP
WebRTC – SIP
WebRTC – конференция Высокоуровневая архитектура многоточечной конференции
32
Веб сервер
Веб приложения через HTTP/HTTPS
(т.е. HTML, CSS, JavaScript)
Voice, Video через SRTP
SIP прокси SIP шлюз
SIP
Сервер многоточечной связи или транскодер
Терминалы ВКС
SIP
Браузеры
Стандарты в WebRTC
23.11.15 © 2015 Cisco and/or its affiliates. All rights reserved. 33
Стандарты WebRTC Серьезный прогресс достигнут в этом году по согласованию стандартов
34
Принято • Аудио кодеки: G.711, Opus • Сигнализация: SDP-подобные согласование средствами JavaScript (ROAP / JSEP)
• Преодоление Firewall/NAT … ICE, STUN, TURN • Шифрование медиа: SRTP с ключами DTLS • Согласование портов/адресов для медиа: ICE/
STUN/TURN • Идентификация: Модель провайдера идентификации
• Поддержка маркирования QoS … DiffServ для приоритета на WiFiшлюзах, LTE соединениях
• Для видео поддержка VP8 и H.264, утверждена IETF! ‒ http://www.ietf.org/mail-archive/web/rtcweb/current/
msg13432.html
Обсуждается • Cisco анонсировало FreeOpenH264 проект ‒ Mozilla подтвердили поддержку в Firefox
OpenH264
• Коррекция ошибок/ потерь / переполнение… ‒ Цель = минимизировать задержку, обеспечить быструю реакцию и постоянный, непрерывный поток данных
• Передача данных / экрана • И т.д.…
Формирование стандартов Cisco играет ключевую роль в становлении стандарта
35
• RTCWeb рабочая группа ‒ Основа стандарта со стороны IETF ‒ Cullen Jennings (Cisco Fellow) со-председатель группы
• Определяют как браузер будет коммуницировать (в том числе с использованием существующих механизмов и протоколов)
• Документы… draft-ietf-rtcweb-audio draft-ietf-rtcweb-data-channel
draft-ietf-rtcweb-jsep draft-ietf-rtcweb-overview
draft-ietf-rtcweb-qos draft-ietf-rtcweb-rtp-usage
draft-ietf-rtcweb-security-arch
draft-ietf-rtcweb-use-cases-and-requirements
• WebRTC рабочая группа ‒ Основа стандарта со стороны W3C ‒ Cullen Jennings – один из авторов документа
‒ Keith Griffin (Lead Architect Cisco) один из авторов документа в части механизмов передачи данных/экрана.
• Определяют как веб приложения получат доступ к функционалу связи (API и т.д.)
• Документы… ‒ WebRTC 1.0: Real-time Communication Between Browsers
‒ Media Capture and Streams
‒ Media Capture Scenarios
Open Source H.264 для упрощения разработки WebRTC приложений
Cisco и Firefox объявили о поддержке H.264 видео звонков с обычных ВКС терминалов в браузер Firefox с WebRTC совместимым клиентом от Ciscohttp://blogs.cisco.com/collaboration/industry-first-h-264-video-endpoint-calls-firefox-via-webrtc-enabled-project-squared Google Chrome в настоящий момент еще решает как включить поддержку H.264 в их браузере Дополнительная информация: http://www.openh264.org Project Squared (spark):http://blogs.cisco.com/tag/project-squared
36
Поддержка браузерами HTML5 и WebRTC
23.11.15 © 2015 Cisco and/or its affiliates. All rights reserved. 37
Развитие браузеров
38 http://www.evolutionoftheweb.com
Поддержка браузерами HTML5
39
Устойчивый тренд
HTML 5 тесты
40
• Браузер выполнивший все тесты получит максимальную оценку 555
• Предыдущие версии браузеров тестировались на меньшем количестве тестов, HTML5, поэтому имеют заведомо более низкую оценку
Насколько хорошо браузеры поддерживают HTML 5
Поддержка браузерами WebRTC Различные браузеры объявили о поддержке стандарта
41
Google Chrome • Первая версия с поддержкой WebRTC
- Chrome 23 Stable (более поздние автоматически поддерживают)
• Первая мобильная версия - Chrome 26 для Android Beta
• Поддержка H.264 с ChromeOS 39/40 для Chrome Book
• Активно работают над поддержкой открытого кода и стандартов проекта (WebRTC.org)
Microsoft Internet Explorer • MS анонсировало поддержку WebRTC через ORTC API
• Дополняют и дорабатывают ORTC API для поддержки WebRTC стандартов
Mozilla Firefox • OpenH.264 поддержан с Firefox
33 • Активно работают над поддержкой открытого кода и стандартов
Apple Safari • Пока деталей не известно
Стратегия Microsoft в области выпуска обновлений и исправлений безопасности
Начиная с 12 января 2016, исправления и дополнения будут выпускаться только для актуальных версий Internet Explorer на поддерживаемых версиях ОС. Старые версии браузеров не будут официально поддерживаться.
http://support2.microsoft.com/lifecycle/search/?sort=PN&alpha=internet+explorer
Microsoft публично анонсировала поддержку WebRTC технологий через ORTC API в Internet Explorer.
http://venturebeat.com/2014/10/27/microsoft-eyes-webrtc-for-plugin-free-skype-calls-in-internet-explorer/
42
Интеграция с существующими системами коммуникации предприятия
23.11.15 © 2015 Cisco and/or its affiliates. All rights reserved. 43
44
Ключевые вопросы, требующие рашения для обеспечения совместимости с классическим ВКС
Как обеспечить преобразование стандартной сигнализации?
Поддерживается ли G.711 или Opus для аудио?
Поддерживается VP8 или H.264?
Поддерживается ли классическим терминалом DTLS SRTP?
Есть ли у видеосистемы поддержка ICE?
Возможные решения для взаимодействия?
45
Производители коммуникационного оборудования § Могут встроить возможности шлюзования протоколов WebRTC в свое оборудование
§ Нативная поддержка WebRTC Производители интеграционных решений
§ Шлюзы для WebRTC Провайдеры услуг связи
§ Могут обеспечить нативную совместимость своих решений § Сервис шлюза
Облачные решения § Сервис шлюза
Решения B2C от Cisco
23.11.15 © 2015 Cisco and/or its affiliates. All rights reserved. 46
Jabber Guest – основы решения
Предшественник WebRTC
47
Требуемые компоненты
На стороне абонента • Браузер на ПК • Или мобильное приложение • Или SDK (мобильное приложение, доступное через браузер)
DMZ Предприятия • Cisco Expressway X8.1.1+
Сеть предприятия • Jabber® Guest Virtual Machine • Cisco Expressway X8.1.1+ • Cisco Unified Communications Manager и зарегистрированные на нем терминалы
• Дополнительно: MCU
Video Chat
Поддержка а режиме реального времени
Покупатель, Заказчик
Предшественник WebRTC - Jabber Guest –архитектура решения
48
Expressway/VCS Core X8.2+
Expressway/VCS Edge X8.2+
Home Internet DMZ Enterprise
Cisco® UCM Jabber® Guest
HTTPS-сигналинг для управления вызовом (ROAP) SIP
RTP/SRTP
STUN/TURN
• Обеспечивает Javascript управление вызовом, основанное на URL • Для мобильных платформ требует установки Cisco® приложения или интеграции SDK в приложение других производителей
• For laptop browsers, initiates H.264 add-on install as needed (Cisco or 3rd-party Web app) • Converts HTTPS call request to SIP INVITE
Jabber Guest …
Архитектура Jabber Guest
49
javascript call control
media plugin CPVE
Jabber Guest Server HTTP
Expressway-E
Expressway-C
CUCM
Dx80
SIP
SIP
RTP over TURN
RTP
Enterprise Home DMZ Internet
SIP
HTTP
Экспериментальный (лабораторный режим): Локальная сеть
50
Сетьпредприятия
CUCM
JabberGuest
HTTP-basedcallcontrol(ROAP)SIP
RTP/SRTP
HTTP-basedcallcontrol(ROAP) SIP SIP
RTP/SRTP
Первоначальная конфигурация JG для лабораторного режима – минимальна
51
52
Первоначальная конфигурация CUCM для использования с лабораторным режимом JG
53
Jabber Guest 10.6 c поддержкой BFCP
54
Jabber Guest 10.6 c поддержкой BFCP
Cisco Jabber Guest – планы разработки
55
• Пользовательские улучшения • Улучшения безопасности • Передача экрана (BFCP) от оператора к гостю
• Убрать, переместить окно просмотра собственного видео (Web)
• Поддержка G.722 • Упрощение доступа (Web)
Q2 2015
10.6
2016 и дальше
• Пользовательские улучшения
• Улучшения безопасности
• iOS 9 базовая поддержка *
• Поддержка Internet Explorer 11 на Windows 10
Уже поставляется
Q3 2015
• Пользовательские улучшения
• Улучшения безопасности
• Передача HD на Android • TCP media • Гостевой доступ через облако
• WebRTC media • Передача экрана от гостя к оператору
• Упрощение доступа
10.6 MR1
Q4 2015
• Пользовательские улучшения
• Улучшения безопасности
• iOS 9 полная поддержка*
• поддержка Mac OS X 10.11
• Поддержка Android M • Поддержка Opus • Возможность соединения без видео
• Возможность соединения, пропустив окно предпросмотра
10.6 MR2 Возможны изменения Уже поставляется
* Получить разрешение Apple на публикацию в App Store для iOS 9 невозможно до официального его релиза. Apple требует локальную поддержку IPv6 приложением для IOS 9. Окончание разработки MR1 было запланировано до официального выхода iOS 9. Пользователи приложения и SDK должны были получить поддержку iOS 9, как только он официально выйдет. MR2 добавлял реализацию IPv6 в соответствии с App Store требованиями. При этом связь по протоколу IPv6 не гарантируется из-за не полной совместимости с IPv6 всей используемой инфраструктуры.
Cisco Jabber SDK – набор инструментов для создания веб приложений
56
http://www.cisco.com/c/en/us/products/unified-communications/jabber-software-development-kit/index.html https://developer.cisco.com/web/jabber-developer/jabber
Communications Manager
IM & Presence
Unity Messaging
UC инфраструктура Cisco
WebEx Collaboration
WebEx Messenger
Cisco Jabber SDK
57
Что такое Jabber SDK, и что в него входит? Различные примеры кода и библиотеки, которые Вы можете выборочно использовать в зависимости от своих задач: Голос и Видео (Веб телефон- AJAX): Cisco Jabber Voice and Video SDK (основанные на Jquery JavaScript библиотеки). Требуется установка плагина.
58
IM & Presence (CAXL - AJAX): Cisco AJAX XMPP библиотеки (основанные на Jquery JavaScript библиотеки) Голосовая почта (CUMI - REST): Cisco Unity Connection Voicemail APIs (основанные на REST и SOAP веб сервисы) Веб конференции (WebEx -URL/XML): WebEx Conferencing APIs (веб сервисы основанные на url и xml)
Cisco Jabber SDK
Присутствие
IM / Чат
Click 2 Call
Click 2 WebEx
Click 2 Video
59
Jabber Guest SDK для WEB
Включение виджета во фрейм веб страницы <div> <iframe id="jabberc" src="https://jabberc.mycompany.com/call/1000?widget=true"> </iframe> </div> События (соединение установлено – разорвано и т.д.)
Jabber Guest SDK for Web – виджет, включаемый в iframe вашей веб страницы. При необходимости компактный и простой JavaScript код включаемый в основную страницу, обеспечивает связь с виджетом.
60
Jabber Guest SDK для Android, IOS
DEVNET-2011 - Jabber Guest - Android SDK Live Coding Tutorial https://www.ciscolive.com/online/connect/sessionDetail.ww?SESSION_ID=84271
Call
Поддержка «живого» видео
UI Вашего приложения
Поддержка «живого видео!
UI Вашего приложения
CJGuestCallViewController
Пред просмотр
Удаленное видео
http://www.slideshare.net/CiscoDevNet/devnet1121customizing-cisco-video-access-for-guests
DEVNET-1121 Customizing Cisco Video Access for Guests
Cisco Mobile Advisor Работает без загрузки плагина с минимальной загрузкой оборудования
61
ü поддерживаетсяVP8/H.264транскодированиедляWebRTCсовместимыхбраузеров
ü ГарантируетсясовместимостьWebRTCиммерсивными,настольнымииклассическимивидеосистемами
ü haps://marketplace.cisco.com/catalog/companies/2503
ü MobileподдерживаеткодированиекакH.264,такиVP8.ПоэтомунетнеобходимостиперекодироватьтрафикприсвязисH.264системами
ü ЕслидлясвязииспользуетсяПКсбраузеромVP8(Chrome),приложениеиспользуетVP8чтобыизбежатьнеобходимостьперекодирования
Remote Expert Mobile Все возможности голосовых и видео коммуникаций
Возможность обмениваться графической информацией
• Основан на WebRTC • Встроенное голосовое , видео общение
• Мобильное приложение или веб. страница
• Интеграция с SIP коммуникациями предприятия
• Общение в режиме реального времени
• Обмен экранами • Совместный просмотр экрана, управление со стороны оператора
• Анотации • Передача файлов • Передача контента в CC
Чем REM отличается от Jabber Guest
Jabber Guest RE Mobile
Голос / Видео + + iOS / Android SDK + + Chrome, Firefox, Safari и IE SDK + + Перекодирование видео протоколов - + 2-х поточное видео - + Finesse Gadget, Expert Desktop - + Совместная работа эксперта с приложением Заказчика - + Совместный просмотр WEB - + Передача изображения рабочего стола от агента гостю + - Анотации - + Контент (документы, графика) и Web ссылки - + Удаленное управление - + Сохранение и передача реквизитов учетной записи - + Доступность Уже Уже
Схема взаимодействия основных элементов REM
Клиент Интернет DMZ Предприятие
Remote Expert Media Broker
Remote&Expert&Mobile&Media&Broker&
Enterprise&DMZ&Internet&Home,&Wi;&Fi&or&&4G&
Mobiles&
Browsers&
HTTPS/WSS&
HTTPS&
CUBE;E&
Cisco&Unified&CM&Cluster&
Cisco&Unified&Contact&Center&&(UCCX&or&P/UCCE)&&
EPs&
Media (Voice/Video) SIP HTTP Cisco&Finesse&
SIP&/&SIP&TLS&
RTP&DTLS&/&sRTP&
Enterprise&ApplicaMon&Server&
&&&
Web&&&Mobile&Apps&
HTTP/S&
Data
HTTPS/WSS&
SIP&
SIP&
RTP&
Remote&Expert&Mobile&ApplicaMon&Server&
REAS&
REMB&
CSDK/ Enterprise&Reverse&Proxy&
RP&
Native
Plug-in
Remote&Expert&Mobile&Media&Broker&
Enterprise&DMZ&Internet&Home,&Wi;&Fi&or&&4G&
Mobiles&
Browsers&
HTTPS/WSS&
HTTPS&
CUBE;E&
Cisco&Unified&CM&Cluster&
Cisco&Unified&Contact&Center&&(UCCX&or&P/UCCE)&&
EPs&
Media (Voice/Video) SIP HTTP Cisco&Finesse&
SIP&/&SIP&TLS&
RTP&DTLS&/&sRTP&
Enterprise&ApplicaMon&Server&
&&&
Web&&&Mobile&Apps&
HTTP/S&
Data
HTTPS/WSS&
SIP&
SIP&
RTP&
Remote&Expert&Mobile&ApplicaMon&Server&
REAS&
REMB&
CSDK/ Enterprise&Reverse&Proxy&
RP&
Remote Expert Application Server
Remote&Expert&Mobile&Media&Broker&
Enterprise&DMZ&Internet&Home,&Wi;&Fi&or&&4G&
Mobiles&
Browsers&
HTTPS/WSS&
HTTPS&
CUBE;E&
Cisco&Unified&CM&Cluster&
Cisco&Unified&Contact&Center&&(UCCX&or&P/UCCE)&&
EPs&
Media (Voice/Video) SIP HTTP Cisco&Finesse&
SIP&/&SIP&TLS&
RTP&DTLS&/&sRTP&
Enterprise&ApplicaMon&Server&
&&&
Web&&&Mobile&Apps&
HTTP/S&
Data
HTTPS/WSS&
SIP&
SIP&
RTP&
Remote&Expert&Mobile&ApplicaMon&Server&
REAS&
REMB&
CSDK/ Enterprise&Reverse&Proxy&
RP&
Обозначение
Media (Voice, Video) SIP HTTP/WebSocket
Remote&Expert&Mobile&Media&Broker&
Enterprise&DMZ&Internet&Home,&Wi;&Fi&or&&4G&
Mobiles&
Browsers&
HTTPS/WSS&
HTTPS&
CUBE;E&
Cisco&Unified&CM&Cluster&
Cisco&Unified&Contact&Center&&(UCCX&or&P/UCCE)&&
EPs&
Media (Voice/Video) SIP HTTP Cisco&Finesse&
SIP&/&SIP&TLS&
RTP&DTLS&/&sRTP&
Enterprise&ApplicaMon&Server&
&&&
Web&&&Mobile&Apps&
HTTP/S&
Data
HTTPS/WSS&
SIP&
SIP&
RTP&
Remote&Expert&Mobile&ApplicaMon&Server&
REAS&
REMB&
CSDK/ Enterprise&Reverse&Proxy&
RP&
Expert Console Embedded Video
Экперт на предприятии
Reverse Proxy
Другие приложения с использованием WebRTC
23.11.15 © 2015 Cisco and/or its affiliates. All rights reserved. 65
webrtc2SIP
66
Web Browser
Java Scripts
SIP стек
SDP стек
WebRTC
RTCWeb Breaker
Media Coder
Click-to-Call
webrtc2SIP
SIP Proxy SIP
Media
PSTN
IMS/LTE/SIP
• Webrtc2sip гибкий и мощный RTCWeb / SIP шлюз превращающий ваш браузер в телефон с поддержкой голосовых, видео и SMS коммуникаций. Шлюз состоит и четырех модулей: SIP Proxy | RTCWeb Breaker | Media Coder | Click-to-Call. Шлюз позволяет используя браузер выполнять/принимать звонки из стандартных SIP сетей или PSTN.
• http://webrtc2sip.org - На сайте представлено общедоступное демо
Webrtc2sip шлюз позволяет используя браузер выполнять/принимать звонки из
стандартных SIP сетей или PSTN.
Поддержка WebRTC операторами связи ATT запустила коммерческий проект по поддержке WebRTC с расширенным AT&T WebRTC API
§ AT&T Enhanced WebRTC API доступен для разработчиков в рамках открытой программы бета тестирования
§ Важный инструмент для разработчиком и пользователей убирающий барьеры адаптации
Caller ID для WebRTC коммуникаций: § Может быть представлен как AT&T мобильный номер для звонков, выполняемых из WebRTC-совместимых браузеров.
§ Позволяет пользователю перевести активное соединение начатое с ПК, MAC или планшета на смартфон.
§ http://www.prnewswire.com/news-releases/att-to-become-first-us-carrier-to-launch-commercial-support-for-webrtc-300015750.html
67
AT&T стал первым провайдером связи в США запустившим коммерческую
поддержку WebRTC
PeerCDN
Веб браузер может хранить и предоставлять контент для других браузеров вместо того, чтобы скачивать его с сервера. Преимущества – увеличение скорости загрузки, масштабируемость и серьезная экономия полосы пропускания. Код реализован на JavaScript –он компактный и не требует установки чего-либо. Разработан тремя студентами колледжа в рамках выполнения летнего задания PeerCDN сегодня принадлежит Yahoo!
Новый тип распределенной CDN с использованием WebRTC
68
Веб сервер Браузеры предоставляют доступ к статичным ресурсам (изображения, файлы, и т.д.) через peer-to-peer сеть
Key Use Cases
69
Voice & Video | Enterprise Contact Centers | Telco-OTT | Unified Communications
Conferencing| Kiosks | Social Communication | Entertainment | Education Apps |IMS Extension
Get a feel for WebRTC
https://apprtc.appspot.com http://www.sipml5.org/call.htm http://webcamtoy.com/ http://vod-rcd-002.cisco.com/webrtc/call.html http://ctxs.co/translate/ http://webcamtoy.com/ http://www.evolutionoftheweb.com/
70
преимущества WebRTC Подводя итоги ..
• Доступ через JavaScript API
• Не требует плагинов, скачивания и установки приложений
• Поддержан основными браузерами
• Планируется поддержка на всех аппаратных платформах
• Упрощает работу с видео
• Позволяет упростить разработку приложений связи
71
Cisco планирует активно использовать WebRTC технологии Мы участвуем в разработке и адаптируем стандарт WebRTC для
наших продуктов и решений
Ждем ваших сообщений с хештегом #CiscoConnectRu
CiscoRu Cisco CiscoRussia CiscoRu
Сергей Юцайтис Почта/Видео: [email protected] Телефон: +7 (495) 776-8238 https://sjc-jabberc-ext.cisco.com/call/[email protected]?name=Sergey%20Yutsaytis
23.11.15 © 2015 Cisco and/or its affiliates. All rights reserved.