Cisco Remote Expert Mobile Developer's Guide Release 10.6(1)
Total Page:16
File Type:pdf, Size:1020Kb
Cisco Remote Expert Mobile Developer’s Guide - 10.6(1) First Published: June 26, 2015 Cisco Systems, Inc. www.cisco.com 1 Cisco Remote Expert Mobile Developer’s Guide - 10.6(1) THE SPECIFICATIONS AND INFORMATION REGARDING THE PRODUCTS IN THIS MANUAL ARE SUBJECT TO CHANGE WITHOUT NOTICE. ALL STATEMENTS, INFORMATION, AND RECOMMENDATIONS IN THIS MANUAL ARE BELIEVED TO BE ACCURATE BUT ARE PRESENTED WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. USERS MUST TAKE FULL RESPONSIBILITY FOR THEIR APPLICATION OF ANY PRODUCTS. THE SOFTWARE LICENSE AND LIMITED WARRANTY FOR THE ACCOMPANYING PRODUCT ARE SET FORTH IN THE INFORMATION PACKET THAT SHIPPED WITH THE PRODUCT AND ARE INCORPORATED HEREIN BY THIS REFERENCE. IF YOU ARE UNABLE TO LOCATE THE SOFTWARE LICENSE OR LIMITED WARRANTY, CONTACT YOUR CISCO REPRESENTATIVE FOR A COPY. The Cisco implementation of TCP header compression is an adaptation of a program developed by the University of California, Berkeley (UCB) as part of UCB’s public domain version of the UNIX operating system. All rights reserved. Copyright © 1981, Regents of the University of California. NOTWITHSTANDING ANY OTHER WARRANTY HEREIN, ALL DOCUMENT FILES AND SOFTWARE OF THESE SUPPLIERS ARE PROVIDED “AS IS” WITH ALL FAULTS. CISCO AND THE ABOVE-NAMED SUPPLIERS DISCLAIM ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, THOSE OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OR ARISING FROM A COURSE OF DEALING, USAGE, OR TRADE PRACTICE. IN NO EVENT SHALL CISCO OR ITS SUPPLIERS BE LIABLE FOR ANY INDIRECT, SPECIAL, CONSEQUENTIAL, OR INCIDENTAL DAMAGES, INCLUDING, WITHOUT LIMITATION, LOST PROFITS OR LOSS OR DAMAGE TO DATA ARISING OUT OF THE USE OR INABILITY TO USE THIS MANUAL, EVEN IF CISCO OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental. All printed copies and duplicate soft copies are considered un-Controlled copies and the original on-line version should be referred to for latest version. © 2015 Cisco Systems, Inc. All rights reserved. 2 Cisco Remote Expert Mobile Developer’s Guide - 10.6(1) Preface Preface Change History Changes Date Initial release 10.6(1) June 26, 2015 About this guide This document outlines the steps to develop mobile and web applications that leverage Cisco Remote Expert Mobile (RE Mobile). Developers using this guide should have experience in JavaScript, Objective C or Java depending on the application type. ■ Web - It is assumed that the developer will have a familiarity with JavaScript, HTML and CSS. ■ iOS - It is assumed that the developer will have a familiarity with iOS, Apple Xcode and Objective-C ■ Android - It is assumed that the developer will have a familiarity with Android, Java, the Android SDK and Eclipse This guide also assumes that you are familiar with basic contact center and unified communications terms and concepts. Successful deployment of Remote Expert Mobile also requires familiarity with the information presented in the Cisco Collaboration Systems Solution Reference Network Designs (SRND). To review IP Telephony terms and concepts, see the documentation at the preceding link. Cisco and the Cisco logo are trademarks or registered trademarks of Cisco and/or its affiliates in the U.S. and other countries. To view a list of Cisco trademarks, go to this URL: www.cisco.com/go/trademarks. Third-party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. Organization of This Guide This guide includes the following sections: Introduction Introduction & brief overview of Remote Expert Mobile. Technologies Description of the technologies used by Remote Expert Mobile. Developer Overview Describes the general components of the solution, provides an understanding and sequencing for Establishing a RE Mobile Sessions, Using Anonymous and Restricted Client Access as well as invoking co-browse only mode. CSDK Security Highlights for Developers A general overview of security concerns for developers. Remote Expert Mobile – CSDK for Web (Java Quick start and specifics for embedding CSDK in web applications. Script) Also includes details for masking and hiding sensitive information within co-browse sessions. Remote Expert Mobile – CSDK for iOS (Objective Quick start and specifics for embedding CSDK in Apple iOS C) applications. Also includes details for masking and hiding sensitive information within co-browse sessions. Remote Expert Mobile – CSDK for Android (Java) Quick start and specifics for embedding CSDK in Android applications. Also includes details for masking and hiding sensitive information within co-browse sessions. Acronym List Lists some common industry and Cisco specific acronyms relevant to Remote Expert Mobile. 3 Cisco Remote Expert Mobile Developer’s Guide - 10.6(1) Introduction Obtaining Documentation and Submitting a Service Request For information on obtaining documentation, using the Cisco Bug Search Tool (BST), submitting a service request, and gathering additional information, see What’s New in Cisco Product Documentation at: http://www.cisco.com/c/en/us/td/docs/general/whatsnew/whatsnew.html. Subscribe to What’s New in Cisco Product Documentation, which lists all new and revised Cisco technical documentation, as an RSS feed and deliver content directly to your desktop using a reader application. The RSS feeds are a free service. Cisco has more than 200 offices worldwide. Addresses, phone numbers, and fax numbers are listed on the Cisco website at www.cisco.com/go/offices. Documentation Feedback To provide comments about this document, send an email message to the following address: [email protected]. We appreciate your comments. Conventions This document uses the following conventions. Convention Indication bold font Commands and keywords and user-entered text appear in bold font. italic font Document titles, new or emphasized terms, and arguments for which you supply values are in italic font. [ ] Elements in square brackets are optional. {x | y | z } Required alternative keywords are grouped in braces and separated by vertical bars. [ x | y | z ] Optional alternative keywords are grouped in brackets and separated by vertical bars. string A nonquoted set of characters. Do not use quotation marks around the string or the string will include the quotation marks. courier font Terminal sessions and information the system displays appear in courier font. < > Nonprinting characters such as passwords are in angle brackets. [ ] Default responses to system prompts are in square brackets. !, # An exclamation point (!) or a pound sign (#) at the beginning of a line of code indicates a comment line. Introduction Cisco Remote Expert Mobile is a software solution that enables personal and actionable customer interactions within mobile & web applications. These interactions range from simple click-to call to a complete voice, video and Expert Assist customer engagement session interconnected to a full contact center environment. For example, Cisco Remote Expert Mobile can connect individual investors to the next available financial advisor within a mobile trading app (B2C – Business to Consumer) or a field employee’s mobile app routing into an internal helpdesk (B2E – Business to Employee). Features With Cisco Remote Expert Mobile developers can deliver voice, video and Expert Assist co-browse and application sharing in mobile or web applications. Cisco Remote Expert Mobile is designed specifically for remote collaboration services provided through Cisco Unified Communications Manager, Cisco Unified Contact Center Enterprise (Unified CCE) and / or Cisco Unified Contact Center 4 Cisco Remote Expert Mobile Developer’s Guide - 10.6(1) Introduction Express (Unified CCX). Remote Expert Mobile offers the following features and options that are pre-sized within core components. Core component features are: ■ In-app voice & video communications (Over-the-Top WebRTC communications) — High definition video and audio — Bi-directional or one-way video — Mute audio, video or both — Client side call control ■ WebRTC to SIP gateway (trunking into Cisco Unified Border Element and Unified Communications Manager) ■ Expert Assist — Web co-browse — Mobile app sharing — Remote app control — Expert form editing and completion — Annotation by expert — Expert document push — Expert URL sharing — Protect sensitive data with field and data masking ■ Media Handling: — STUN server (RFC 5389) for client external IP identification — UDP port multiplexing — Media encryption / decryption — Bidirectional audio — High definition video (H.264 or VP8 in CIF (352x288), nHD (640x360), VGA (640x480), 720p (1280x720) — High definition and narrowband audio codec support (Opus, G.711 ulaw or G.711 alaw) — Opus, G.711 ulaw, G.711 alaw & G.729a audio transcoding into the enterprise network — H.264 & VP8 video transcoding SDKs Cisco Remote Expert Mobile includes Software Development Kits (SDKs) to provide voice over IP, video over IP and expert assist (app share & web co-browse, annotation and document push) features within pre-existing