WebRTC: Why You Should Care and How Avaya Can Help You

Joel Ezell Lead Architect, Collaboration Environment R&D What is WebRTC?  A set of standards being defined by the IETF (protocols) and the W3C (JavaScript API) – Standard protocols defined at the media plane – No standard defined for signaling plane  The vision: ubiquitous, standard support of real time audio, video and data between all browsers without plugins / downloads  Particular attention paid to: – NAT / Firewall Traversal – Internet-friendly – Privacy

© Avaya, Inc. 2014, All Rights Reserved. 2 Why You Should Care About WebRTC

Integrated Communications

© Avaya, Inc. 2014, All Rights Reserved. 3 Different Ways that WebRTC Can Be Used in the Enterprise  On-Ramp – SIP at the core – Browser with WebRTC is used to originate calls into the SIP core – The focus of this presentation  Built-In – Multimedia conference bridge has native WebRTC capabilities – No need to transition to SIP before entering the bridge  Off-Ramp – SIP at the core – Browser with WebRTC acts as thin UC or agent client

© Avaya, Inc. 2014, All Rights Reserved. 4 Use Case

Refrigerator Customer Support Journey

( “YouTube Avaya Aura® Collaboration Environment: Enhanced Business Applications”)

Avaya - Proprietary. Use pursuant to your signed agreement or Avaya policy. 5 Current Customer Journey

1 Enter information on website 2 Find customer support number and dial it 3 Navigate IVR maze 4 Play 20 questions to establish identity 5 Tell the agent what you entered on website 6 Get transferred to somebody that can help you

© Avaya, Inc. 2014, All Rights Reserved. 6 Customer Journey Enabled with WebRTC

1 Enter information on website

2 Click to Call

Expert agent greets you by name and knows exactly 3 why you are calling.

2 Find customer support number and dial it 3 Navigate IVR maze 4 Play 20 questions to establish identity 5 Tell the agent what you entered on website 6 Get transferred to an expert

© Avaya, Inc. 2014, All Rights Reserved. 7 The Key Enabler of Enhanced Customer Journey: WebRTC with Context

Hello Susan, my name is Gary. Let me see how I can help you with the fluctuating temperatures on you Coolomatic 5000.

Support Agent Selection Agent Desktop Website

Context

© Avaya, Inc. 2014, All Rights Reserved. 8 How to Implement this Use Case?

Enter Collaboration Environment

Avaya - Proprietary. Use pursuant to your signed agreement or Avaya policy. 9 How Do I Leverage WebRTC in My ?

 WebRTC make it (somewhat) easy to make 2 browsers pointed at the same website talk to each other  In a contact center, this simple functionality isn’t sufficient.

STUN

Collaboration Environment makes it easy to embed real time communications into any web experience

© Avaya, Inc. 2014, All Rights Reserved. 10 Collaboration Environment Bridges HTTP and SIP

HTTP SIP

Collaboration Environment

STUN

Support Website Agent Selection Agent Desktop

Context (UUI)

© Avaya, Inc. 2014, All Rights Reserved. 11 Avaya WebRTC Snap-in Architecture

= Customer Developed / Provided

DMZ Customer Facing = Avaya Developed Web Application = Either Customer Provided or Avaya Developed HTML 5

Collaboration HTTP Environment WebApp HTML / Reverse JavaScript Proxy Avaya Avaya WebRTC HTTP Signaling Avaya WebRTC JavaScript (JSL) Snap-In Standard WebRTC API ASBCE SIP STUN/ TURN Avaya WebRTC Avaya Media Stream Media SIP Aura ® Server Media Stream

© Avaya, Inc. 2014, All Rights Reserved. 12 Collaboration Environment

= Customer Developed / Provided

DMZ Customer Facing = Avaya Developed Web Application Collaboration Environment is a = Either Customer Provided highly available, highly scalable or Avaya Developed platform for deployment ofHTML 5 diverse “Snap-Ins” developed by Collaboration Avaya, Business Partners and HTTP Environment WebAppCustomers. HTML / Reverse JavaScript Proxy Avaya Avaya WebRTC HTTP Signaling Avaya WebRTC JavaScriptIncludes (JSL) SIP call control, J2EE Snap-In Standard WebRTCHTTP, API Email and SMSASBCE capabilities. SIP STUN/ TURN Avaya WebRTC Avaya Media Stream Media SIP Aura ® Server Media Stream

© Avaya, Inc. 2014, All Rights Reserved. 13 WebRTC Snap-in

= Customer Developed / Provided

DMZ Customer Facing = Avaya Developed Web Application = Either Customer Provided or Avaya Developed HTML 5

Translates HTTP signaling Collaboration to SIP signaling,HTTP enforces Environment WebApp HTML / Reverse JavaScript authorization,Proxy engages AMSAvaya Avaya WebRTC HTTP Signaling Avaya WebRTC JavaScript (JSL)to translate WebRTC media Snap-In Standard to SIP media WebRTC API ASBCE SIP STUN/ TURN Avaya WebRTC Avaya Media Stream Media SIP Aura ® Server Media Stream

© Avaya, Inc. 2014, All Rights Reserved. 14 WebRTC JavaScript Library (JSL)

= Customer Developed / Provided

DMZ Customer Facing = Avaya Developed Web Application = Either Customer Provided or Avaya Developed HTML 5 Downloaded from WebRTC Collaboration Snap-in and invoked by Web HTTP Environment WebApp HTML / ReverseApplication JavaScript. JavaScript InterfacesProxy to Avayastandard WebRTC Avaya WebRTC HTTP Signaling Avaya WebRTC JavaScript (JSL) browser JavaScript interface andSnap-In Standard signals with WebRTC Snap-In WebRTC API ASBCE using HTTP. SIP STUN/ TURN Avaya WebRTC Avaya Media Stream Media SIP Aura ® Server Media Stream

© Avaya, Inc. 2014, All Rights Reserved. 15 Avaya Media Server (AMS)

= Customer Developed / Provided

DMZ Customer Facing = Avaya Developed Web Application = Either Customer Provided or Avaya Developed HTML 5

Collaboration HTTP Environment WebApp HTML / Reverse JavaScript Proxy Avaya Avaya WebRTC HTTP Signaling Avaya WebRTC JavaScript (JSL) Snap-In Standard WebRTC API ASBCE SIP TerminatesSTUN/ ICE, STUN, TURN TURN, DTLS. Translates WebRTC media stream to Avaya WebRTC Avaya SIP media stream. Media Stream Media SIP Aura ® Server Media Stream

© Avaya, Inc. 2014, All Rights Reserved. 16 Avaya SBC for Enterprise

= Customer Developed / Provided

DMZ Customer Facing = Avaya Developed Web Application = Either Customer Provided or Avaya Developed HTML 5

Collaboration HTTP Environment WebApp HTML / Reverse JavaScript Proxy Avaya Avaya WebRTC HTTP Signaling Avaya WebRTC JavaScript (JSL) Snap-In Standard Secure edge component for WebRTC API ASBCE WebRTC. Includes STUN SIP STUN/ and TURN server as well as TURN optional HTTP Reverse Proxy Avaya WebRTC Avaya Media Stream Media SIP Aura ® Server Media Stream

© Avaya, Inc. 2014, All Rights Reserved. 17 Avaya WebRTC Trust / Security Model

Something Different than We’ve Ever Seen Before

Avaya - Proprietary. Use pursuant to your signed agreement or Avaya policy. 18 Generation / Validation of Authorization Token

Web Application= Customer Developed provides / Provided Customer Facing DMZ Authorization= Avaya Developed Token to Snap-In Web Application telling it that any given call is valid. = Either Customer Provided Optionallyor Avaya asserts Developed caller identity. HTML 5 Snap-in validates Authorization CollaborationToken HTTP Environment WebApp HTML / Reverse JavaScript Proxy Avaya Avaya WebRTC HTTP Signaling Avaya WebRTC JavaScript (JSL) Snap-In Standard WebRTC API ASBCE SIP STUN/ TURN Avaya WebRTC Avaya Media Stream Media SIP Aura ® Server Media Stream

© Avaya, Inc. 2014, All Rights Reserved. 19 Generation / Propagation of Browser ICE Candidates

= Customer Developed / Provided Browser generates IP address / Customer Facing DMZ = Avaya Developed Web Application port pairs (ICE Candidates). Sends to Snap-In= Either Customerin SDP Provided Offer. or Avaya Developed HTML 5 Snap-in relays SDP Offer (including CollaborationICE Candidates) to AMS. HTTP Environment WebApp HTML / Reverse JavaScript Proxy Avaya Avaya WebRTC HTTP Signaling Avaya WebRTC JavaScript (JSL) Snap-In Standard WebRTC API ASBCE SIP STUN/ TURN Avaya WebRTC Avaya Media Stream Media SIP Aura ® Server Media Stream

© Avaya, Inc. 2014, All Rights Reserved. 20 Sending of Browser Address to TURN Server

= Customer Developed / Provided Customer Facing DMZ = Avaya Developed Web Application

= Either Customer Provided Avaya Media Serveror Avaya Developed performs ICE HTML 5 negotiation with browser. Sends selectedCollaboration browser IP address / port HTTP pair to EnvironmentTURN server in Avaya WebApp HTML / Reverse JavaScript SBCE for Enterprise. Proxy Avaya Avaya WebRTC HTTP Signaling Avaya WebRTC JavaScript (JSL) TURN serverSnap-In only allows incoming Standard WebRTC API ASBCE UDP (audio / video) packets from specified addresses. SIP STUN/ TURN Avaya WebRTC Avaya Media Stream Media SIP Aura ® Server Media Stream

© Avaya, Inc. 2014, All Rights Reserved. 21 Establishment of SRTP key

= Customer Developed / Provided Customer Facing DMZ = Avaya Developed Web Application

= Either Customer Provided or Avaya Developed HTML 5

Collaboration HTTP BrowserEnvironment and Avaya Media Server WebApp HTML / Reverse JavaScript Proxy Avaya establish DTLS (Datagram Avaya WebRTC HTTP SignalingTransportAvaya Layer WebRTC Security) session JavaScript (JSL) Snap-In Standard and establish SRTP key over this WebRTC API ASBCE session. SIP STUN/ TURN Avaya WebRTC Avaya Media Stream Media SIP Aura ® Server Media Stream

© Avaya, Inc. 2014, All Rights Reserved. 22 Why did Avaya choose this model? Embrace the Web in WebRTC!  Customers have already invested in a secure, scalable HTTP infrastructure. – Reverse Proxies and Application Delivery Controllers protect against DoS / DDoS, enforce policies  Avaya sends WebRTC signaling through existing infrastructure, embracing the customer’s investment  On-premises TURN server (as part of Avaya SBC for Enterprise) allows secure media relay across enterprise firewall – A cloud based service may be offered in the future – This would mean NO new DMZ elements for WebRTC  Conspicuous in its absence: VPN

© Avaya, Inc. 2014, All Rights Reserved. 23 Peeling the Customer Journey Onion

A Suite of Snap-ins Working Together

Avaya - Proprietary. Use pursuant to your signed agreement or Avaya policy. 24 The Snap-ins Behind Enhanced Customer Journey

The WebRTC snap-in make it easy to add click to call capabilities from any web application to any Avaya Aura® endpoint Work Assignment selects the best resource (e.g. Agent) to handle a work request (e.g. call) Collaboration based on a customizable Designer provides set of attributes. graphical design environment for implementing workflows Real-Time Speech enables immediate detection of spoken phrases in two-party calls Context Store is a highly scalable, highly available in-memory data grid with a interface

© Avaya, Inc. 2014, All Rights Reserved. 25 Putting the Snap-ins Together to Create a Seamless Support Experience Collaboration WebAppliance Application Support Environment Web Site Context Store

Collaboration Environment Collaboration Environment WebRTC Collaboration Real Time Work Snap-In Designer Speech Assignment HTTP(S)

Internet SIP SIP Agent Desktop Web Application Session Manager

SIP/MSML SIP

WebRTC Media AMS 7.5** AvayaAMS 7.5** Media Contact Center Server Elite

SIP Media

© Avaya, Inc. 2014, All Rights Reserved. 26 In Conclusion

Avaya WebRTC: a powerful start with a bright future

Avaya - Proprietary. Use pursuant to your signed agreement or Avaya policy. 27 Additional Use Cases for Collaboration Environment 3.0 WebRTC

 Click to call from enterprise directory web page

 “Click to call me” URL in email signature

Click to Call Me

© Avaya, Inc. 2014, All Rights Reserved. 28 Enhancements coming in the near future

 Video – One and two way video between browsers, mobile devices and Avaya Aura® endpoints such as Communicator.  Mobile – Native iOS and Android SDKs to incorporate real-time Audio / Video into custom mobile apps  Unified Communications and Agent SDK – Ability to create full-fledged browser-based UC and Agent clients – No download, install, plugin or VPN required!

© Avaya, Inc. 2014, All Rights Reserved. 29 WebRTC brings a change of paradigm Avaya helps make it happen

Dedicated Communication Clients

Communications Integrated into Fit for Purpose Experiences

© Avaya, Inc. 2014, All Rights Reserved. 30 Sample WebRTC Enterprise Use-Cases Opportunities for both the UC and CC aspects of communications

Browser UC Client Web Assistance • Audio, Video, IM, Collaboration • Web customers voice / video / • UC client for cloud based service collaborate with contact center • Tailor User-Client to Work-duties agents—without a download

One-Touch Video Web Agent Desktop • Call me from an email link. • Thin client agent position without • Click-to-discuss from application VPN

Web Video Conferencing VDI Communication • Browser-based video conferencing • Voice and video to a VDI brick. • No downloads, greater usage • Media on brick, Virtual desktop.

© Avaya, Inc. 2014, All Rights Reserved. 31