SlideShare a Scribd company logo
• Solution Overview
• Remote Expert Mobile Components
• Overview of SDKs
• Supported Browsers and Platforms
• Code walkthrough and SDK deep dive
Remote Expert Mobile Developer’s Overview
Internet
Enterprise
UC
Infrastructu
re
Remote
Expert
Mobile
Media
Convert WebRTC to Enterprise Communications
Signaling
Features and Functionality
• Enables web and mobile apps to make
voice and video calls into legacy SIP
networks, ie. Cisco Unified
Communications or Cisco Contact Center.
Extended Featureset
• Co-browsing within an REM enabled web
page or app.
• Addition of data channel to pass context
and drive appication events
Remote Expert Mobile High Level Architecture
• The REAS is the core-signaling
component that communicates
securely to web browsers and
mobile apps (via https and WSS)
• Hosts client SDKs
• Handles session provisioning and
management
• Handles RTP media
streams
• CSDK handles media
negotiation so you don’t
have to
Remote Expert Application Server (REAS)
• Server Side Services
• Web Gateway – converts webRTC to SIP
• Finesse Gadgets – Enables Expert Assist Agent SDK within
Finesse
• Expert Assist Web Console -Enables co-browse and video
outside of Contact Center Environment
• CSDK
• CSDK Phone – Overlays webRTC framework to simplify
development of voice and video applications
• Application Event Distribution (AED) – Creates data
channel allowing text and application events to be sent over
the web socket, providing opportunities for a more
customizable, feature rich experience.
• Expert Assist
• Consumer – Enables client to co-browse webpage or mobile
application, view forms pushed to page, and co-fill forms.
• Agent – Allows agent to view webpage or application, push
forms and co-fill forms.
Application Server
AED
Finesse
Gadget
Web
Console
Web Gateway
Phone
Expert Assist
Supported Browsers
Supported Mobile Platforms
Expert Assist
• Expert Comprehensive
• Expert Assist can by used
for a stand alone co-
browse session or in
comprehensive mode with
voice/video and co-
browse kicked off at once.
• Comprehensive mode
uses the Expert Assist
SDK, AED, and CSDK
Phone features to create
an all-in-one interaction
with minimal code to
implement.
• Disadvantage is what you
gain in simplicity you lose
in customization.
Expert Assist Comprehensive
Import Script:
<script src=“../assistserver/sdk/web/consumer/assist.js"></script>
Start Support:
AssistSDK.startSupport({ "destination": destination });
Exclude Elements if Desired:
<div id="sensitive-details" class="assist-no-show">content</div>
Property Default Value Description
destination Username of agent or agent group if that agent or agent group is local to the
web gateway; otherwise full SIP URI of agent or queue
videoMode "full" Sets whether and from which parties video should be shown. Allowed
values are "full", "agentOnly", and "none".
correlationId ID of the co-browsing session
url Base URL of the Remote Expert Mobile Applications Server (REAS),
including only scheme, hostname, and port number.
sdkPath URL of the base directory of the consumer SDK, if not deducible from src
attribute of HTML script tag which loads the "assist.js" file.
popupCssUrl Set URL of CSS stylesheet containing styles for the Expert Assist popup
window in the web page
sessionToken Web gateway session token (if required)
Demo and Code Walk Through
Code Available On Dev Net: https://communities.cisco.com/docs/DOC-58760
CSDK Phone
call = UC.phone.createCall(numberToDial);
call.onRemoteMediaStream = function (remoteMediaStream) {
var remoteVideo = document.getElementById(‘remoteVideoElement');
$(remoteVideo).attr('src', window.URL.createObjectURL(remoteMediaStream));
};
call.onLocalMediaStream = function (localMediaStream) {
var localVideo = document.getElementById(‘localVideoElement');
$(localVideo).attr('src', window.URL.createObjectURL(localMediaStream));
};
call.onEnded = function () {
//end functions
};
call.onCallFailed = function () {
alert("Call Failed");
};
call.onDialFailed = function () {
alert("Dial Failed");
};
call.dial();
Full JSDOC located on the REAS server here:
/opt/cisco/<version>/CSDK/Core_SDK/JavaScript_SDK/jsdoc
AED
aedTopic = uc.aed.createTopic(topicId);
//overwrite topic methods
aedTopic.onConnectSuccess = function () {
alert(“Connected!”);
};
aedTopic.onMessageReceived = function (message) {
alert("Message!");
};
aedTopic.connect();
Full JSDOC located on the REAS server here:
/opt/cisco/<version>/CSDK/Core_SDK/JavaScript_SDK/jsdoc
Expert Assist Co-Browse Only
assistSDK.startSupport({
"correlationId": sipUser,
"cobrowseOnly": "true",
});
Remote Expert Application Server (REAS)
• Not Covered
• IM & presence – Extends IM and presence capability
from a CUPS server to mobile and web. Requires
CUPS.
• Palettes – Uses various adaptors to exchange context
with external systems such as UCCE/UCCX.
Application Server
AED
Finesse
Gadget
Web
Console
Web Gateway
IM&P Proxy
Phone
Expert Assist
Palettes

More Related Content

PDF
DEVNET-2011 Jabber Guest - Android SDK Live Coding Tutorial
PDF
Vbrownbag container networking for real workloads
PDF
Comparison of Current Service Mesh Architectures
PPTX
DEVNET-1122 Integrating Cisco Collaboration into Web Apps
PDF
DevConf.CZ 2020 @ Brno, Czech Republic : WebAuthn support for keycloak
PPTX
Microservice Pattern Launguage
PDF
Going Serverless Using the Spring Framework Ecosystem
PDF
Mobile SDK: Considerations & Best Practices
DEVNET-2011 Jabber Guest - Android SDK Live Coding Tutorial
Vbrownbag container networking for real workloads
Comparison of Current Service Mesh Architectures
DEVNET-1122 Integrating Cisco Collaboration into Web Apps
DevConf.CZ 2020 @ Brno, Czech Republic : WebAuthn support for keycloak
Microservice Pattern Launguage
Going Serverless Using the Spring Framework Ecosystem
Mobile SDK: Considerations & Best Practices

What's hot (20)

PDF
Securing k8s With Kubernetes Goat
PDF
Securing Your Apps & APIs in the Cloud
PDF
You and your containers: strumenti di automazione in Cloud (parte 2) - Gabrie...
PDF
WebRTC with Java
PDF
Demystifying AuthN/AuthZ Using OIDC & OAuth2
PDF
Secure, Strengthen, Automate, and Scale Modern Workloads with Red Hat & NGINX
PPTX
Microservices and containers networking: Contiv, an industry leading open sou...
PDF
Istio service mesh introduction
PPTX
Video production in the cloud for live streaming
PPTX
Cloud Based Video Production and Editing
PDF
How to Build a Custom Plugin in Rundeck
PDF
Security Patterns for Microservice Architectures - SpringOne 2020
PDF
Identity Server on Azure: A Reference Architecture
PPTX
Building a scalable microservice architecture with envoy, kubernetes and istio
PPTX
Server-side WebRTC Infrastructure
PDF
Application Security with NGINX
PDF
Enterprise Java on Azure: From Java EE to Spring, we have you covered
PDF
Secured APIM-as-a-Service
PDF
API Gateway Use Cases​ for Kubernetes​
PDF
Voxxed Days Minsk. Microservices:
 The phantom menace
. Istio Service Mesh: 
...
Securing k8s With Kubernetes Goat
Securing Your Apps & APIs in the Cloud
You and your containers: strumenti di automazione in Cloud (parte 2) - Gabrie...
WebRTC with Java
Demystifying AuthN/AuthZ Using OIDC & OAuth2
Secure, Strengthen, Automate, and Scale Modern Workloads with Red Hat & NGINX
Microservices and containers networking: Contiv, an industry leading open sou...
Istio service mesh introduction
Video production in the cloud for live streaming
Cloud Based Video Production and Editing
How to Build a Custom Plugin in Rundeck
Security Patterns for Microservice Architectures - SpringOne 2020
Identity Server on Azure: A Reference Architecture
Building a scalable microservice architecture with envoy, kubernetes and istio
Server-side WebRTC Infrastructure
Application Security with NGINX
Enterprise Java on Azure: From Java EE to Spring, we have you covered
Secured APIM-as-a-Service
API Gateway Use Cases​ for Kubernetes​
Voxxed Days Minsk. Microservices:
 The phantom menace
. Istio Service Mesh: 
...
Ad

Viewers also liked (10)

PPTX
DEVNET-1121 Customizing Cisco Video Access for Guests
PPTX
Global leadership ( A Presentation By Ebele Mogo, DrPH)
DOCX
3 d printing doc
PDF
Fullah Sugah Franchise Book
PDF
Flare - tech-intro-for-paris-hackathon
PPTX
Training for Building Course Elements in Blackboard Learn LMS
PDF
ใบงานสำรวจตนเอง M6
PDF
Create B2B Exchanges with Cisco Connected Processes: an overview
PDF
ใบงานที่6 8
PPTX
Naizak presentation
DEVNET-1121 Customizing Cisco Video Access for Guests
Global leadership ( A Presentation By Ebele Mogo, DrPH)
3 d printing doc
Fullah Sugah Franchise Book
Flare - tech-intro-for-paris-hackathon
Training for Building Course Elements in Blackboard Learn LMS
ใบงานสำรวจตนเอง M6
Create B2B Exchanges with Cisco Connected Processes: an overview
ใบงานที่6 8
Naizak presentation
Ad

Similar to DEVNET-2010 Remote Expert Mobile Web/Android/iOS SDK Live Coding Tutorial and Demonstration (20)

PDF
Solaiemes WebRTC Telco GW
PPTX
Eudata wcs new features 2014 - Customer engagement and real time communicatio...
PPTX
Web Contact System Overview - Cisco Integration
PDF
WebRTC-SIP Gateway
PPTX
2Ring Gadgets for Cisco Finesse 3.4 (UCCX / UCCE)
PPTX
Splicecom-I-A_SALES_ELEVATOR_PITCH_2015
PPT
2009 Eudata En
PDF
Enhance your Collaboration Experience by Enabling Pervasive Video on your Cis...
PDF
Ucc 2015 forthnet c2 presentation final
PDF
How WebRTC is Altering the Landscape for Mobile UC & BYOD
PDF
Webrtc for Telcos Workshop Berlin from Juan Mateu
PDF
Advantage2000ucs-Profile
PDF
Advantage2000ucs version 1-2 International
PDF
WebRTC-Telco Monetization Webinar by Solaiemes
PDF
In a New World – At Work and Play –Intelligent Visual Engagement is Key
PPTX
en_perfect_pitch_training_2015.pptx
PPT
Parsec Appl &amp; Soln V 5.0 011110
PDF
WebRTC for Telcos by Solaiemes
PPTX
Presentacion inConcert Allegro 2015
PDF
Workshop web rtc customers and use cases
Solaiemes WebRTC Telco GW
Eudata wcs new features 2014 - Customer engagement and real time communicatio...
Web Contact System Overview - Cisco Integration
WebRTC-SIP Gateway
2Ring Gadgets for Cisco Finesse 3.4 (UCCX / UCCE)
Splicecom-I-A_SALES_ELEVATOR_PITCH_2015
2009 Eudata En
Enhance your Collaboration Experience by Enabling Pervasive Video on your Cis...
Ucc 2015 forthnet c2 presentation final
How WebRTC is Altering the Landscape for Mobile UC & BYOD
Webrtc for Telcos Workshop Berlin from Juan Mateu
Advantage2000ucs-Profile
Advantage2000ucs version 1-2 International
WebRTC-Telco Monetization Webinar by Solaiemes
In a New World – At Work and Play –Intelligent Visual Engagement is Key
en_perfect_pitch_training_2015.pptx
Parsec Appl &amp; Soln V 5.0 011110
WebRTC for Telcos by Solaiemes
Presentacion inConcert Allegro 2015
Workshop web rtc customers and use cases

More from Cisco DevNet (20)

PPTX
How to Contribute to Ansible
PPTX
Rome 2017: Building advanced voice assistants and chat bots
PPTX
How to Build Advanced Voice Assistants and Chatbots
PPTX
Cisco Spark and Tropo and the Programmable Web
PPTX
Device Programmability with Cisco Plug-n-Play Solution
PPTX
Building a WiFi Hotspot with NodeJS: Cisco Meraki - ExCap API
PPTX
Application Visibility and Experience through Flexible Netflow
PPTX
WAN Automation Engine API Deep Dive
PPTX
Cisco's Open Device Programmability Strategy: Open Discussion
PPTX
Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)
PPTX
NETCONF & YANG Enablement of Network Devices
PPTX
UCS Management APIs A Technical Deep Dive
PPTX
OpenStack Enabling DevOps
PPTX
NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...
PPTX
Getting Started: Developing Tropo Applications
PPTX
Cisco Spark & Tropo API Workshop
PPTX
Coding 102 REST API Basics Using Spark
PPTX
Cisco APIs: An Interactive Assistant for the Web2Day Developer Conference
PPTX
DevNet Express - Spark & Tropo API - Lisbon May 2016
PPTX
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
How to Contribute to Ansible
Rome 2017: Building advanced voice assistants and chat bots
How to Build Advanced Voice Assistants and Chatbots
Cisco Spark and Tropo and the Programmable Web
Device Programmability with Cisco Plug-n-Play Solution
Building a WiFi Hotspot with NodeJS: Cisco Meraki - ExCap API
Application Visibility and Experience through Flexible Netflow
WAN Automation Engine API Deep Dive
Cisco's Open Device Programmability Strategy: Open Discussion
Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)
NETCONF & YANG Enablement of Network Devices
UCS Management APIs A Technical Deep Dive
OpenStack Enabling DevOps
NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...
Getting Started: Developing Tropo Applications
Cisco Spark & Tropo API Workshop
Coding 102 REST API Basics Using Spark
Cisco APIs: An Interactive Assistant for the Web2Day Developer Conference
DevNet Express - Spark & Tropo API - Lisbon May 2016
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016

Recently uploaded (20)

DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
Machine Learning_overview_presentation.pptx
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
A Presentation on Artificial Intelligence
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPT
Teaching material agriculture food technology
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
The AUB Centre for AI in Media Proposal.docx
Machine Learning_overview_presentation.pptx
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
Unlocking AI with Model Context Protocol (MCP)
The Rise and Fall of 3GPP – Time for a Sabbatical?
Reach Out and Touch Someone: Haptics and Empathic Computing
MYSQL Presentation for SQL database connectivity
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Programs and apps: productivity, graphics, security and other tools
A Presentation on Artificial Intelligence
Mobile App Security Testing_ A Comprehensive Guide.pdf
Per capita expenditure prediction using model stacking based on satellite ima...
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Teaching material agriculture food technology
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Encapsulation_ Review paper, used for researhc scholars
sap open course for s4hana steps from ECC to s4
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf

DEVNET-2010 Remote Expert Mobile Web/Android/iOS SDK Live Coding Tutorial and Demonstration

  • 1. • Solution Overview • Remote Expert Mobile Components • Overview of SDKs • Supported Browsers and Platforms • Code walkthrough and SDK deep dive Remote Expert Mobile Developer’s Overview
  • 2. Internet Enterprise UC Infrastructu re Remote Expert Mobile Media Convert WebRTC to Enterprise Communications Signaling Features and Functionality • Enables web and mobile apps to make voice and video calls into legacy SIP networks, ie. Cisco Unified Communications or Cisco Contact Center. Extended Featureset • Co-browsing within an REM enabled web page or app. • Addition of data channel to pass context and drive appication events
  • 3. Remote Expert Mobile High Level Architecture • The REAS is the core-signaling component that communicates securely to web browsers and mobile apps (via https and WSS) • Hosts client SDKs • Handles session provisioning and management • Handles RTP media streams • CSDK handles media negotiation so you don’t have to
  • 4. Remote Expert Application Server (REAS) • Server Side Services • Web Gateway – converts webRTC to SIP • Finesse Gadgets – Enables Expert Assist Agent SDK within Finesse • Expert Assist Web Console -Enables co-browse and video outside of Contact Center Environment • CSDK • CSDK Phone – Overlays webRTC framework to simplify development of voice and video applications • Application Event Distribution (AED) – Creates data channel allowing text and application events to be sent over the web socket, providing opportunities for a more customizable, feature rich experience. • Expert Assist • Consumer – Enables client to co-browse webpage or mobile application, view forms pushed to page, and co-fill forms. • Agent – Allows agent to view webpage or application, push forms and co-fill forms. Application Server AED Finesse Gadget Web Console Web Gateway Phone Expert Assist
  • 7. Expert Assist • Expert Comprehensive • Expert Assist can by used for a stand alone co- browse session or in comprehensive mode with voice/video and co- browse kicked off at once. • Comprehensive mode uses the Expert Assist SDK, AED, and CSDK Phone features to create an all-in-one interaction with minimal code to implement. • Disadvantage is what you gain in simplicity you lose in customization.
  • 8. Expert Assist Comprehensive Import Script: <script src=“../assistserver/sdk/web/consumer/assist.js"></script> Start Support: AssistSDK.startSupport({ "destination": destination }); Exclude Elements if Desired: <div id="sensitive-details" class="assist-no-show">content</div> Property Default Value Description destination Username of agent or agent group if that agent or agent group is local to the web gateway; otherwise full SIP URI of agent or queue videoMode "full" Sets whether and from which parties video should be shown. Allowed values are "full", "agentOnly", and "none". correlationId ID of the co-browsing session url Base URL of the Remote Expert Mobile Applications Server (REAS), including only scheme, hostname, and port number. sdkPath URL of the base directory of the consumer SDK, if not deducible from src attribute of HTML script tag which loads the "assist.js" file. popupCssUrl Set URL of CSS stylesheet containing styles for the Expert Assist popup window in the web page sessionToken Web gateway session token (if required)
  • 9. Demo and Code Walk Through Code Available On Dev Net: https://communities.cisco.com/docs/DOC-58760
  • 10. CSDK Phone call = UC.phone.createCall(numberToDial); call.onRemoteMediaStream = function (remoteMediaStream) { var remoteVideo = document.getElementById(‘remoteVideoElement'); $(remoteVideo).attr('src', window.URL.createObjectURL(remoteMediaStream)); }; call.onLocalMediaStream = function (localMediaStream) { var localVideo = document.getElementById(‘localVideoElement'); $(localVideo).attr('src', window.URL.createObjectURL(localMediaStream)); }; call.onEnded = function () { //end functions }; call.onCallFailed = function () { alert("Call Failed"); }; call.onDialFailed = function () { alert("Dial Failed"); }; call.dial(); Full JSDOC located on the REAS server here: /opt/cisco/<version>/CSDK/Core_SDK/JavaScript_SDK/jsdoc
  • 11. AED aedTopic = uc.aed.createTopic(topicId); //overwrite topic methods aedTopic.onConnectSuccess = function () { alert(“Connected!”); }; aedTopic.onMessageReceived = function (message) { alert("Message!"); }; aedTopic.connect(); Full JSDOC located on the REAS server here: /opt/cisco/<version>/CSDK/Core_SDK/JavaScript_SDK/jsdoc
  • 12. Expert Assist Co-Browse Only assistSDK.startSupport({ "correlationId": sipUser, "cobrowseOnly": "true", });
  • 13. Remote Expert Application Server (REAS) • Not Covered • IM & presence – Extends IM and presence capability from a CUPS server to mobile and web. Requires CUPS. • Palettes – Uses various adaptors to exchange context with external systems such as UCCE/UCCX. Application Server AED Finesse Gadget Web Console Web Gateway IM&P Proxy Phone Expert Assist Palettes