SlideShare una empresa de Scribd logo
1 de 15
© 2015 IBM Corporation
Wading through the
Mobile WebRTC
Developer Gauntlet
Brian Pulito
Email: brian_pulito@us.ibm.com
Twitter: @brianpulito
Linkedin: brianpulito
Introduction
This session discusses the
importance of WebRTC in the
mobile environment and what to
consider when developing with
WebRTC in your application.
AndroidApple
Mobile is ubiquitous
WebRTC is disruptive
1
Be Mobile First
Enterprise use of mobile technology is growing at 25% per year
But most critical decisions still require a desktop computer
The average adult has 24 apps on their phone
But spends 80% of their time on just 5 of them
The number of custom mobile apps will double compared to 2014
But 85% of companies have a mobile backlog of up to 20 apps
The average person has their mobile devices within arms reach 90% of the time
But at any given time malicious code is infecting more than 11.6 million of them
Creating opportunity
to reinvent the nature
of work
Raising the stakes for
real
time relevant
engagement
Making speed and
agility more critical
than ever
Making security as
important as
convenience 2
3
Use Case: WebRTC Unified Calling Service
with Analytics
1) Dr. Jones attempts to initiate a video
call with Dr. Smith through the hospital's
WebRTC enabled web portal.
2) UC service tries Dr. Smith at home
first because she provisioned her UC
profile that way.
3) UC service completes call to Dr.
Smith on her mobile device (using app
with shoulder tap).
4) Doctor calls out to Analytics service
to get specific questions/insights on
problem being discussed
Unified Calling
Service
Scenario: Doctors and nurses communicate over a hospital's IP network via a web
portal enabled with WebRTC service. Real-time analytics provided as a call-in
service.
Real-Time, Contextual Communication in apps
Systems of Interactions
Contextless Communication
using Individual applications
Contextual Communication
with embedded WebRTC
• Mobile Audio/Video can be hard.
WebRTC can make it easy.
• User experience is key. In app real
time communications can enhance
and simplify this experience through
context.
4
• Getting WebRTC on mobile is not too hard, but there are challenges to consider:
• Signaling for WebRTC
• Security
• Multi-platform development
Getting WebRTC on Mobile Platforms
• WebRTC is available to be built natively
• There are cordova plugins that provide WebRTC (ex.
cordova.plugins.iosrtc)
• No native browsers for mobile web* , though you can build
your own or use Ericsson’s Bowser Browser.
• WebRTC is available to be built natively
• WebView provides access to WebRTC for Hybrid apps
• Android Chrome provides WebRTC for mobile web
* Apple is slowly adding things: “Apple implements features of GetUserMedia and MediaStreams in the mac
ports of webkits(Aug. 15th, 2015)”
5
• WebRTC does not provide a signaling standard
• Provides means to connect two (or more) parties/services
Signaling
Peer to Peer Connection
Challenges
• Choosing a library vs. creating your own
• Pub/sub vs. Sip over WebSockets
• Web and Mobile portability
• Hybrid vs. Native networking
• Sleeping devices and power consumption
• Identifying available peers and services
• WebRTC Island vs. Federation
6
• Authentication
• Authorization
• Identity verification
• Encrypted Signaling
• App authenticity (did you download the correct app and is it secure)
Challenges:
• Enterprise Security Integration (LTPA, OAuth)
• Access Control Lists and Identity Propagation
• Need Mobile SDK/App Store Authority
Note: Browsers are moving to https only (no getUserMedia requests)
Security
7
• Developing for omni-channel
• Native (iOS/Android), Hybrid and Web
• Hybrid JavaScript frameworks
Challenges
• Native
• Multiple codebases (UI and Signaling)
• Building Native WebRTC OpenSource
• Development Resources with native skills
• Hybrid
• Framework selection
• Performance
• iOS WebRTC plugin support
• Testing
• Automation due to lack of WebRTC support in emulators
• Future proofing your SDK decision
Multi-platform development
8
Hybrid Development
Native OS
Cordova Native Code & Native Plugin Code
Your Hybrid Application
cordova.js & plugin JavaScript APIs
HTML5/JavaScript in WebView
• Apache Cordova(formerly PhoneGap)
provides native functionality via Plugins that
expose a JavaScript API (Cordova has
~580 plugins)
• Single Page Applications are
recommended (Can use any library like
AngularJS, EmberJS, Backbone, ReactJS,
jQuery Mobile, etc…)
• WebRTC functionality is provided by a
plugin: cordova.plugins.iosrtc
• React Native enables developers to use JavaScript and React.
• For additional native functionality, you must provide it yourself.
• WebRTC plugin can be built from webrtchacks.com
Hybrid frameworks like Apache Cordova and React Native provide OS
abstraction and allow developers to code in HTML5/JavaScript
9
• The quickest route with hybrid mobile is through a JavaScript
framework. Some very different ones to consider are:
Hybrid Development – JavaScript mobile frameworks
Ionic is implemented on top of angular.js and uses
cordova. WebRTC is provided via
cordova.plugins.iosrtc.
React Native – Mobile environment using JavaScript and
React. Build your own React Native WebRTC plugin from
webrtchacks.com
• These provide a consistent UI look and feel as well as 3rd party plugins and
modules to enable extended functionality.
• React Native is React specific
10
© 2015 IBM Corporation
z
Operations
Back-end
Mobile apps go deeper than front-end UI
Front-end
30%
of the value
and effort is
visible
(mobile UI)
70%
of the value
and effort
lies under
the surface
Short time to market
Web? Hybrid?
Native?
Teamwork
Industrialize app dev
Integrate with SDLC
Ensuring continued
support in a quick-
changing
landscape
Track problems that
affect UX
Manage and
enforce app
versions
Security
Data
protection
Push
upgrades
Malware
detection
User
authentication
User engagement
Connect to back-end
Efficient and flexible
push notifications
Offline availability
B2E app distribution
Track and leverage
location
WebRTC Middleware for Mobile
Coturn
Open Source
STUN/TURN Server
Dialogic XMS
Media Server
(Transcoding, Multiway,
Record/Playback)
WebSphere
Liberty
(Rtcomm Gateway, JSR
289 SIP Servlets)
Web/Signaling
Proxy
(HTTP, SIP, WebSockets)
STUN/TURN
Server
Sig Gateway,
App Server.
Message Broker
(SIP Servlets )
Media
Processing Server
DMZ
SIP Services
(Contact Center)
Media + ICE
JSR 309
Intranet
Media +
ICE
Media Relay
HTTP/REST
Signaling
HTTP/REST
WebRTC Middleware
Signaling
Analytics
Services
Systems of
Record
Enterprise
IMS Core
Microservices
Business Services
Mobile Notifications
Push
12
• Think Mobile First
• Future proofing (Frameworks/SDKs/Open Source)
• Hybrid vs Native
• Omni-channel perspective
• Middleware
Conclusions
13
To learn more visit: www.wasdev.net/webrtc
14
14

Más contenido relacionado

La actualidad más candente

Experiences from Incorporating Sign Language in Customer Interactions
Experiences from Incorporating Sign Language in Customer InteractionsExperiences from Incorporating Sign Language in Customer Interactions
Experiences from Incorporating Sign Language in Customer InteractionsAlan Quayle
 
Programming the Internet of Things: Why Devices Need APIs
Programming the Internet of Things: Why Devices Need APIsProgramming the Internet of Things: Why Devices Need APIs
Programming the Internet of Things: Why Devices Need APIsAllSeen Alliance
 
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...apidays
 
IoT at the Edge - Gateway Services
IoT at the Edge - Gateway ServicesIoT at the Edge - Gateway Services
IoT at the Edge - Gateway ServicesAllSeen Alliance
 
AllSeen Alliance Overview
AllSeen Alliance OverviewAllSeen Alliance Overview
AllSeen Alliance OverviewAALForum
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice ArchitectureNguyen Tung
 
IoT and Maker Crossover (IMCO) Conference 2015
IoT and Maker Crossover (IMCO) Conference 2015IoT and Maker Crossover (IMCO) Conference 2015
IoT and Maker Crossover (IMCO) Conference 2015Jollen Chen
 
Internet of Everything Development Using AllJoyn
Internet of Everything Development Using AllJoynInternet of Everything Development Using AllJoyn
Internet of Everything Development Using AllJoynAllSeen Alliance
 
Introduction to the AllJoyn Gateway Agent
Introduction to the AllJoyn Gateway Agent Introduction to the AllJoyn Gateway Agent
Introduction to the AllJoyn Gateway Agent AllSeen Alliance
 
Building Universal Windows Apps with AllJoyn
Building Universal Windows Apps with AllJoynBuilding Universal Windows Apps with AllJoyn
Building Universal Windows Apps with AllJoynAllSeen Alliance
 
Designing for Interoperability
Designing for InteroperabilityDesigning for Interoperability
Designing for InteroperabilityAllSeen Alliance
 
JenkinsMobi: Jenkins XML API for Mobile Applications
JenkinsMobi: Jenkins XML API for Mobile ApplicationsJenkinsMobi: Jenkins XML API for Mobile Applications
JenkinsMobi: Jenkins XML API for Mobile ApplicationsLuca Milanesio
 
IBM Bluemix Tech Meetup 18-02-2015
IBM Bluemix Tech Meetup 18-02-2015IBM Bluemix Tech Meetup 18-02-2015
IBM Bluemix Tech Meetup 18-02-2015gjuljo
 
WebRTC and Telecommunications
WebRTC and TelecommunicationsWebRTC and Telecommunications
WebRTC and TelecommunicationsAVOXI
 
Building A Quick Base Mobile Application - Phil Gross
Building A Quick Base Mobile Application - Phil GrossBuilding A Quick Base Mobile Application - Phil Gross
Building A Quick Base Mobile Application - Phil GrossQuickBase, Inc.
 
IBM Bluemix on the go - Giulio Santoli (Mobility Hackathon)
IBM Bluemix on the go - Giulio Santoli (Mobility Hackathon)IBM Bluemix on the go - Giulio Santoli (Mobility Hackathon)
IBM Bluemix on the go - Giulio Santoli (Mobility Hackathon)gjuljo
 
Mobile Application Lifecycle with Jekins, Trello and CollabNet TeamForge
Mobile Application Lifecycle with Jekins, Trello and CollabNet TeamForgeMobile Application Lifecycle with Jekins, Trello and CollabNet TeamForge
Mobile Application Lifecycle with Jekins, Trello and CollabNet TeamForgeLuca Milanesio
 
An Open Source Project for the IoT
An Open Source Project for the IoTAn Open Source Project for the IoT
An Open Source Project for the IoTAllSeen Alliance
 
OpenCloud IMS WebRTC Workshop Adaptive Signaling Bridging the Network Divide
OpenCloud IMS WebRTC Workshop Adaptive Signaling Bridging the Network DivideOpenCloud IMS WebRTC Workshop Adaptive Signaling Bridging the Network Divide
OpenCloud IMS WebRTC Workshop Adaptive Signaling Bridging the Network DivideAlan Quayle
 
Test Centre case studies - Cathal McGloin (FeedHenry)
Test Centre case studies - Cathal McGloin (FeedHenry)Test Centre case studies - Cathal McGloin (FeedHenry)
Test Centre case studies - Cathal McGloin (FeedHenry)NGN Test Centre
 

La actualidad más candente (20)

Experiences from Incorporating Sign Language in Customer Interactions
Experiences from Incorporating Sign Language in Customer InteractionsExperiences from Incorporating Sign Language in Customer Interactions
Experiences from Incorporating Sign Language in Customer Interactions
 
Programming the Internet of Things: Why Devices Need APIs
Programming the Internet of Things: Why Devices Need APIsProgramming the Internet of Things: Why Devices Need APIs
Programming the Internet of Things: Why Devices Need APIs
 
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
apidays LIVE New York 2021 - Supercharge microservices with Service Mesh by S...
 
IoT at the Edge - Gateway Services
IoT at the Edge - Gateway ServicesIoT at the Edge - Gateway Services
IoT at the Edge - Gateway Services
 
AllSeen Alliance Overview
AllSeen Alliance OverviewAllSeen Alliance Overview
AllSeen Alliance Overview
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 
IoT and Maker Crossover (IMCO) Conference 2015
IoT and Maker Crossover (IMCO) Conference 2015IoT and Maker Crossover (IMCO) Conference 2015
IoT and Maker Crossover (IMCO) Conference 2015
 
Internet of Everything Development Using AllJoyn
Internet of Everything Development Using AllJoynInternet of Everything Development Using AllJoyn
Internet of Everything Development Using AllJoyn
 
Introduction to the AllJoyn Gateway Agent
Introduction to the AllJoyn Gateway Agent Introduction to the AllJoyn Gateway Agent
Introduction to the AllJoyn Gateway Agent
 
Building Universal Windows Apps with AllJoyn
Building Universal Windows Apps with AllJoynBuilding Universal Windows Apps with AllJoyn
Building Universal Windows Apps with AllJoyn
 
Designing for Interoperability
Designing for InteroperabilityDesigning for Interoperability
Designing for Interoperability
 
JenkinsMobi: Jenkins XML API for Mobile Applications
JenkinsMobi: Jenkins XML API for Mobile ApplicationsJenkinsMobi: Jenkins XML API for Mobile Applications
JenkinsMobi: Jenkins XML API for Mobile Applications
 
IBM Bluemix Tech Meetup 18-02-2015
IBM Bluemix Tech Meetup 18-02-2015IBM Bluemix Tech Meetup 18-02-2015
IBM Bluemix Tech Meetup 18-02-2015
 
WebRTC and Telecommunications
WebRTC and TelecommunicationsWebRTC and Telecommunications
WebRTC and Telecommunications
 
Building A Quick Base Mobile Application - Phil Gross
Building A Quick Base Mobile Application - Phil GrossBuilding A Quick Base Mobile Application - Phil Gross
Building A Quick Base Mobile Application - Phil Gross
 
IBM Bluemix on the go - Giulio Santoli (Mobility Hackathon)
IBM Bluemix on the go - Giulio Santoli (Mobility Hackathon)IBM Bluemix on the go - Giulio Santoli (Mobility Hackathon)
IBM Bluemix on the go - Giulio Santoli (Mobility Hackathon)
 
Mobile Application Lifecycle with Jekins, Trello and CollabNet TeamForge
Mobile Application Lifecycle with Jekins, Trello and CollabNet TeamForgeMobile Application Lifecycle with Jekins, Trello and CollabNet TeamForge
Mobile Application Lifecycle with Jekins, Trello and CollabNet TeamForge
 
An Open Source Project for the IoT
An Open Source Project for the IoTAn Open Source Project for the IoT
An Open Source Project for the IoT
 
OpenCloud IMS WebRTC Workshop Adaptive Signaling Bridging the Network Divide
OpenCloud IMS WebRTC Workshop Adaptive Signaling Bridging the Network DivideOpenCloud IMS WebRTC Workshop Adaptive Signaling Bridging the Network Divide
OpenCloud IMS WebRTC Workshop Adaptive Signaling Bridging the Network Divide
 
Test Centre case studies - Cathal McGloin (FeedHenry)
Test Centre case studies - Cathal McGloin (FeedHenry)Test Centre case studies - Cathal McGloin (FeedHenry)
Test Centre case studies - Cathal McGloin (FeedHenry)
 

Similar a Wading through the mobile WebRTC developer gauntlet (IIT RTC Conference session - 2015)

WebRTC 2014 Conference Closing Panel Survey Results
WebRTC 2014 Conference Closing Panel Survey ResultsWebRTC 2014 Conference Closing Panel Survey Results
WebRTC 2014 Conference Closing Panel Survey ResultsAmir Zmora
 
Kamailio World 2017: Getting Real with WebRTC
Kamailio World 2017: Getting Real with WebRTCKamailio World 2017: Getting Real with WebRTC
Kamailio World 2017: Getting Real with WebRTCChad Hart
 
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeThe challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeCaridy Patino
 
WebRTC on Mobile Devices: Challenges and Opportunities
WebRTC on Mobile Devices: Challenges and OpportunitiesWebRTC on Mobile Devices: Challenges and Opportunities
WebRTC on Mobile Devices: Challenges and OpportunitiesVladimir Beloborodov
 
Crocodile launch mobicents, html5 web rtc and sip over websockets
Crocodile launch   mobicents, html5 web rtc and sip over websocketsCrocodile launch   mobicents, html5 web rtc and sip over websockets
Crocodile launch mobicents, html5 web rtc and sip over websocketsjohntel
 
Wholesale Applications Community
Wholesale Applications CommunityWholesale Applications Community
Wholesale Applications CommunityMobile 2.0 Europe
 
WebRTC Live Q&A Session #4 - WebRTC in WebKit and the story around Apple and ...
WebRTC Live Q&A Session #4 - WebRTC in WebKit and the story around Apple and ...WebRTC Live Q&A Session #4 - WebRTC in WebKit and the story around Apple and ...
WebRTC Live Q&A Session #4 - WebRTC in WebKit and the story around Apple and ...Amir Zmora
 
IoT Physical Servers and Cloud Offerings.pdf
IoT Physical Servers and Cloud Offerings.pdfIoT Physical Servers and Cloud Offerings.pdf
IoT Physical Servers and Cloud Offerings.pdfGVNSK Sravya
 
Worklight mobile v6
Worklight mobile v6 Worklight mobile v6
Worklight mobile v6 GameStop
 
WebRTC on Mobile | Kranky Geek SF 2016
WebRTC on Mobile | Kranky Geek SF 2016WebRTC on Mobile | Kranky Geek SF 2016
WebRTC on Mobile | Kranky Geek SF 2016Tsahi Levent-levi
 
Cloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer ConsoleCloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer ConsoleMatthew Perrins
 
WebRTC standards update (13 Nov 2013)
WebRTC standards update (13 Nov 2013)WebRTC standards update (13 Nov 2013)
WebRTC standards update (13 Nov 2013)Victor Pascual Ávila
 
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...Brian Pulito
 
Webinar WebRTC HTML5 (english)
Webinar WebRTC HTML5 (english)Webinar WebRTC HTML5 (english)
Webinar WebRTC HTML5 (english)Quobis
 
Emerging Widgets Ecosystem - for Vodacom Widget Developer Camp
Emerging Widgets Ecosystem - for Vodacom Widget Developer CampEmerging Widgets Ecosystem - for Vodacom Widget Developer Camp
Emerging Widgets Ecosystem - for Vodacom Widget Developer CampDaniel Appelquist
 

Similar a Wading through the mobile WebRTC developer gauntlet (IIT RTC Conference session - 2015) (20)

WebRTC 2014 Conference Closing Panel Survey Results
WebRTC 2014 Conference Closing Panel Survey ResultsWebRTC 2014 Conference Closing Panel Survey Results
WebRTC 2014 Conference Closing Panel Survey Results
 
Kamailio World 2017: Getting Real with WebRTC
Kamailio World 2017: Getting Real with WebRTCKamailio World 2017: Getting Real with WebRTC
Kamailio World 2017: Getting Real with WebRTC
 
Ibm empresa movil
Ibm empresa movilIbm empresa movil
Ibm empresa movil
 
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeThe challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
 
WebRTC on Mobile Devices: Challenges and Opportunities
WebRTC on Mobile Devices: Challenges and OpportunitiesWebRTC on Mobile Devices: Challenges and Opportunities
WebRTC on Mobile Devices: Challenges and Opportunities
 
Crocodile launch mobicents, html5 web rtc and sip over websockets
Crocodile launch   mobicents, html5 web rtc and sip over websocketsCrocodile launch   mobicents, html5 web rtc and sip over websockets
Crocodile launch mobicents, html5 web rtc and sip over websockets
 
DevCon5 (July 2014) - Intro to WebRTC
DevCon5 (July 2014) - Intro to WebRTCDevCon5 (July 2014) - Intro to WebRTC
DevCon5 (July 2014) - Intro to WebRTC
 
Wholesale Applications Community
Wholesale Applications CommunityWholesale Applications Community
Wholesale Applications Community
 
WebRTC Live Q&A Session #4 - WebRTC in WebKit and the story around Apple and ...
WebRTC Live Q&A Session #4 - WebRTC in WebKit and the story around Apple and ...WebRTC Live Q&A Session #4 - WebRTC in WebKit and the story around Apple and ...
WebRTC Live Q&A Session #4 - WebRTC in WebKit and the story around Apple and ...
 
IoT Physical Servers and Cloud Offerings.pdf
IoT Physical Servers and Cloud Offerings.pdfIoT Physical Servers and Cloud Offerings.pdf
IoT Physical Servers and Cloud Offerings.pdf
 
DevCon5 (July 2014) - Acision SDK
DevCon5 (July 2014) - Acision SDKDevCon5 (July 2014) - Acision SDK
DevCon5 (July 2014) - Acision SDK
 
Transforming the web into a real application platform
Transforming the web into a real application platformTransforming the web into a real application platform
Transforming the web into a real application platform
 
Worklight mobile v6
Worklight mobile v6 Worklight mobile v6
Worklight mobile v6
 
WebRTC on Mobile | Kranky Geek SF 2016
WebRTC on Mobile | Kranky Geek SF 2016WebRTC on Mobile | Kranky Geek SF 2016
WebRTC on Mobile | Kranky Geek SF 2016
 
Cloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer ConsoleCloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer Console
 
WebRTC Summit (June 2014) - WebRTC Interoperability (and why it is important)
WebRTC Summit (June 2014) - WebRTC Interoperability (and why it is important)WebRTC Summit (June 2014) - WebRTC Interoperability (and why it is important)
WebRTC Summit (June 2014) - WebRTC Interoperability (and why it is important)
 
WebRTC standards update (13 Nov 2013)
WebRTC standards update (13 Nov 2013)WebRTC standards update (13 Nov 2013)
WebRTC standards update (13 Nov 2013)
 
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
The Enterprise wants WebRTC -- and it needs Middleware to get it! (IIT RTC Co...
 
Webinar WebRTC HTML5 (english)
Webinar WebRTC HTML5 (english)Webinar WebRTC HTML5 (english)
Webinar WebRTC HTML5 (english)
 
Emerging Widgets Ecosystem - for Vodacom Widget Developer Camp
Emerging Widgets Ecosystem - for Vodacom Widget Developer CampEmerging Widgets Ecosystem - for Vodacom Widget Developer Camp
Emerging Widgets Ecosystem - for Vodacom Widget Developer Camp
 

Último

The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 

Último (20)

The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 

Wading through the mobile WebRTC developer gauntlet (IIT RTC Conference session - 2015)

  • 1. © 2015 IBM Corporation Wading through the Mobile WebRTC Developer Gauntlet Brian Pulito Email: brian_pulito@us.ibm.com Twitter: @brianpulito Linkedin: brianpulito
  • 2. Introduction This session discusses the importance of WebRTC in the mobile environment and what to consider when developing with WebRTC in your application. AndroidApple Mobile is ubiquitous WebRTC is disruptive 1
  • 3. Be Mobile First Enterprise use of mobile technology is growing at 25% per year But most critical decisions still require a desktop computer The average adult has 24 apps on their phone But spends 80% of their time on just 5 of them The number of custom mobile apps will double compared to 2014 But 85% of companies have a mobile backlog of up to 20 apps The average person has their mobile devices within arms reach 90% of the time But at any given time malicious code is infecting more than 11.6 million of them Creating opportunity to reinvent the nature of work Raising the stakes for real time relevant engagement Making speed and agility more critical than ever Making security as important as convenience 2
  • 4. 3 Use Case: WebRTC Unified Calling Service with Analytics 1) Dr. Jones attempts to initiate a video call with Dr. Smith through the hospital's WebRTC enabled web portal. 2) UC service tries Dr. Smith at home first because she provisioned her UC profile that way. 3) UC service completes call to Dr. Smith on her mobile device (using app with shoulder tap). 4) Doctor calls out to Analytics service to get specific questions/insights on problem being discussed Unified Calling Service Scenario: Doctors and nurses communicate over a hospital's IP network via a web portal enabled with WebRTC service. Real-time analytics provided as a call-in service.
  • 5. Real-Time, Contextual Communication in apps Systems of Interactions Contextless Communication using Individual applications Contextual Communication with embedded WebRTC • Mobile Audio/Video can be hard. WebRTC can make it easy. • User experience is key. In app real time communications can enhance and simplify this experience through context. 4
  • 6. • Getting WebRTC on mobile is not too hard, but there are challenges to consider: • Signaling for WebRTC • Security • Multi-platform development Getting WebRTC on Mobile Platforms • WebRTC is available to be built natively • There are cordova plugins that provide WebRTC (ex. cordova.plugins.iosrtc) • No native browsers for mobile web* , though you can build your own or use Ericsson’s Bowser Browser. • WebRTC is available to be built natively • WebView provides access to WebRTC for Hybrid apps • Android Chrome provides WebRTC for mobile web * Apple is slowly adding things: “Apple implements features of GetUserMedia and MediaStreams in the mac ports of webkits(Aug. 15th, 2015)” 5
  • 7. • WebRTC does not provide a signaling standard • Provides means to connect two (or more) parties/services Signaling Peer to Peer Connection Challenges • Choosing a library vs. creating your own • Pub/sub vs. Sip over WebSockets • Web and Mobile portability • Hybrid vs. Native networking • Sleeping devices and power consumption • Identifying available peers and services • WebRTC Island vs. Federation 6
  • 8. • Authentication • Authorization • Identity verification • Encrypted Signaling • App authenticity (did you download the correct app and is it secure) Challenges: • Enterprise Security Integration (LTPA, OAuth) • Access Control Lists and Identity Propagation • Need Mobile SDK/App Store Authority Note: Browsers are moving to https only (no getUserMedia requests) Security 7
  • 9. • Developing for omni-channel • Native (iOS/Android), Hybrid and Web • Hybrid JavaScript frameworks Challenges • Native • Multiple codebases (UI and Signaling) • Building Native WebRTC OpenSource • Development Resources with native skills • Hybrid • Framework selection • Performance • iOS WebRTC plugin support • Testing • Automation due to lack of WebRTC support in emulators • Future proofing your SDK decision Multi-platform development 8
  • 10. Hybrid Development Native OS Cordova Native Code & Native Plugin Code Your Hybrid Application cordova.js & plugin JavaScript APIs HTML5/JavaScript in WebView • Apache Cordova(formerly PhoneGap) provides native functionality via Plugins that expose a JavaScript API (Cordova has ~580 plugins) • Single Page Applications are recommended (Can use any library like AngularJS, EmberJS, Backbone, ReactJS, jQuery Mobile, etc…) • WebRTC functionality is provided by a plugin: cordova.plugins.iosrtc • React Native enables developers to use JavaScript and React. • For additional native functionality, you must provide it yourself. • WebRTC plugin can be built from webrtchacks.com Hybrid frameworks like Apache Cordova and React Native provide OS abstraction and allow developers to code in HTML5/JavaScript 9
  • 11. • The quickest route with hybrid mobile is through a JavaScript framework. Some very different ones to consider are: Hybrid Development – JavaScript mobile frameworks Ionic is implemented on top of angular.js and uses cordova. WebRTC is provided via cordova.plugins.iosrtc. React Native – Mobile environment using JavaScript and React. Build your own React Native WebRTC plugin from webrtchacks.com • These provide a consistent UI look and feel as well as 3rd party plugins and modules to enable extended functionality. • React Native is React specific 10
  • 12. © 2015 IBM Corporation z Operations Back-end Mobile apps go deeper than front-end UI Front-end 30% of the value and effort is visible (mobile UI) 70% of the value and effort lies under the surface Short time to market Web? Hybrid? Native? Teamwork Industrialize app dev Integrate with SDLC Ensuring continued support in a quick- changing landscape Track problems that affect UX Manage and enforce app versions Security Data protection Push upgrades Malware detection User authentication User engagement Connect to back-end Efficient and flexible push notifications Offline availability B2E app distribution Track and leverage location
  • 13. WebRTC Middleware for Mobile Coturn Open Source STUN/TURN Server Dialogic XMS Media Server (Transcoding, Multiway, Record/Playback) WebSphere Liberty (Rtcomm Gateway, JSR 289 SIP Servlets) Web/Signaling Proxy (HTTP, SIP, WebSockets) STUN/TURN Server Sig Gateway, App Server. Message Broker (SIP Servlets ) Media Processing Server DMZ SIP Services (Contact Center) Media + ICE JSR 309 Intranet Media + ICE Media Relay HTTP/REST Signaling HTTP/REST WebRTC Middleware Signaling Analytics Services Systems of Record Enterprise IMS Core Microservices Business Services Mobile Notifications Push 12
  • 14. • Think Mobile First • Future proofing (Frameworks/SDKs/Open Source) • Hybrid vs Native • Omni-channel perspective • Middleware Conclusions 13 To learn more visit: www.wasdev.net/webrtc
  • 15. 14 14

Notas del editor

  1. ABSTRACT: Today real-time communications in mobile devices typically means general purpose, non-contextual audio and video calling. WebRTC promises more embedding rea-time with context. For mobile this means apps enabled with WebRTC capabilities. While mobile implementations of WebRTC are now available for iOS and Android, there are still many decisions that need to be made to take advantage of it. Thins like what frameworks to use, native vs. hybrid ahow to handle security and much more. This session will discuss going from concept to delivered application and what steps and decisions need to be made along the way. Story to weave : decision points that need to make are not important, mobile apps for enterprise what you need to deal with and ? Unifying signaling, federation with PSTN, Unified push notifications, THEME: Contextual Communications, only reason WebRTC matters is ‘context’ – try glue between context & webrtc. “Systems of Engagement” where is context from… Systems of record, analytics, iot, big data… What does mobile mean relative to this? Just an entry point to Systems of Engagement? Can mobile be source of media to a backend for real time analytics
  2. Along with its tremendous impact on the enterprise, mobile is also opening up valuable new opportunities. With mobile we can: Reinvent how we work. More of us are using mobile technologies at work. In fact, use of mobile in the enterprise is growing at about 25% per year. (1) Unfortunately, many companies that have developed strategies for mobile haven’t yet moved beyond using mobile as a new way to transact with customers or communicate with employees. But by combining mobile and analytics to serve up rich data on location and in context, we can empower employees to quickly acquire new skills, work better with their organizations and improve decision making. Enable relevant engagement in real time. The ubiquity of mobile and the proliferation of apps is creating an intense battle for mobile mind share. If everyone has an app – and research shows that out of the two dozen apps each of us has on our phones that we spend 80% of our time on just five of them – how do you stand out? (2) Successful companies are using data to design engagement systems that seamlessly connect with customers across all channels and turn each new mobile touch point into an opportunity to attract new customers and deepen relationships with existing ones. Prioritize speed and agility. This year, the number of custom mobile apps will double compared to 2014. (3) Organizations are already struggling keep pace with app requests thanks to the complexity of multiple platforms; the need to continuously update and improve apps; and complex and time consuming backend integration requirements. As a result, 85% of companies of a mobile app backlog of up to 20 apps. (4) With speed and agility as a top requirement, now is the time design a unified approach to mobile systems, platforms and operating models to deliver new levels of integration while managing all manner of complexity. Make security as important as convenience. For most of us, our mobile device is within arm’s reach 90% of the time. (5) And in the race for mobile mind share, it’s tempting to prioritize speed over security. In fact, about 65% of companies admit that the security of mobile apps is sometimes put at risk to meet customer demand. But at any given moment, malicious code is infecting 11.6 million of our mobile devices. (6) A mobile first approach is reliant on enterprise-grade security robust enough to ensure that the apps, devices, data and transactions involved in mobile interactions are trustworthy. Sources: Bring Your Own Device (BYOD) & Enterprise Mobility Market Global Advancements, Market Forecast and Analysis (2014 – 2019) https://w3-03.sso.ibm.com/marketing/mi/compdlib.nsf/41b3dc2211cc2f6ac12566a200259ba4/20a877a7a24e1d6700257cf60039f6d2/$FILE/Bring%20Your%20Own%20Device%20(BYOD)%20&%20Enterprise%20Mobility%20Market%20(2014%20-%202019).pdf Forrester’s US Consumer Technographics Behavioral Study, August 2014 to October 2014 IDC http://www.idc.com/getdoc.jsp?containerId=prUS25285614 Outsystems; http://www.outsystems.com/company/news/2014/mobile-trend-statistics/ Morgan Stanley, 2013 (link pending) IBM and Ponemon Institute The State of Mobile Application Insecurity” http://ibm.co/1F595xW
  3. Web/Hybrid are typically over Websockets, Native use native networking which means the protocol may need to be implemented in several languages. Need native authentication over the socket for security with native signaling Push Notification Need way to hook Apple/Google Push Notifications to your signaling infrastructure. Your app needs to be able to handle inbound notification and treat it like an inbound ‘offer’ Battery power usage with persistent connections services Identity management and registration Need addresses of record, registration and authentication to ensure identities and enable inbound call routing.
  4. Whether adding WebRTC to existing applications or building it from scratch, the goal is often to use the context of the application with respect to WebRTC. This means the application will integrate apps running on Android, iOS and the Web together in a common context. Native -- Native applications require development of similar functionality for different platforms (Android – Java, iOS – Swift , Web – JavaScript/HTML ) Hybrid applications can use a common code base but require different plugins for iOS. In all cases, you must test on physical devices to verify platform and application functionality (emulators are not enough with WebRTC) In all cases, Signaling is the issue – which you’ll either have to implement yourself or use a pre-built signaling library.
  5. Cordova stuff into the Cordova Slide… Add a block diagram.
  6. File Name Here.ppt