Voice and Video - Get Started
Add a browser-based softphone to your web application
The Jabber Voice and Video SDK (part of the Jabber SDK ) allows you to embed voice and video telephony into your web pages. Although the SDK is designed to hide as much of the underlying complexity as possible, this guide is designed to give you important background information that will help you to get started as well as to understand some of the SDK's more advanced features.
The Jabber SDK works with Cisco Unified Communications Manager software to provide voice and video functionality. You will either need access to your own Unified Communicaitons Manager infrastructure, or use the Shared Sandbox
Step 1: Download Add-on
You will also need to download the Cisco Jabber SDK browser add-on that is required for signaling and media termination.
However, if you have not purchased this software but would like to evaluate the functionality of the Voice & Video SDK please download an evaluation version of the Windows add-on from the Downloads and Docs page. Note that this is for evaluation purposes only and must not be redistributed. After you download the add-on, unzip it and run the installation file.
Step 2: Download SDK
Download the Jabber voice and video SDK from the Downloads and Docs page. You must run the SDK and Sample App contained therein on a web server while you develop and test your code. Running from the local file system is an unsupported configuration, and not all functionality may work. Simple way to run a web server is to use Python’s SimpleHTTPServer. In Terminal, navigate to “www” folder and type “
python –m SimpleHTTPServer”.
Step 3: Configure Device
Configure a suitable softphone device in Cisco Unified Communication Manager. This will enable the SDK to correctly connect and make calls.
- Open sample.html that comes with the SDK download.
- Enter your Unified Communications Manager username, password and IP address in the fields provided.
- Select SoftPhone as the mode.
- Click Login.
- Select the device and then click Connect. The Make Call button will be enabled once your soft phone registers with Unified Communicaitons Manager.
- Enter a number into the Number field and click Make Call.
- Finally, locate a colleague with whom you can make test calls and initiate some browser-to-browser video calls. Alternatively, or you can make calls to existing Cisco hardware and software voice and video products.
Supported OSs and Browsers
The Jabber Voice and Video SDK works on the following operating systems and browsers:
|Browser||Windows 7||Windows 8.1||Windows 10|
|32-bit and 64-bit|
|Chrome: Stable channel 55||32-bit|
|Firefox: Final release channel 50||32-bit|
|Internet Explorer 11||32-bit|
Mac OS X
|Browser||Mac OS X 10.10 Yosemite||Mac OS X 10.11 El Capitan||Mac OS X 10.12 Sierra|
|Chrome: Stable channel 55|
|Firefox: Final release channel 50|
- On April 8, 2014, Microsoft ended support and updates for Windows XP so Windows XP is no longer supported.
- Windows RT 8 is not supported
- Windows RT 8.1 is not supported
- We recommend that App Nap, a feature in Mac OS X 10.9 and 10.10. be disabled for all browsers supported by the Jabber SDK for Web
As Microsoft announced (http://blogs.msdn.com/b/ie/archive/2014/08/07/stay-up-to-date-with-internet-explorer.aspx), after January 12, 2016, only the most recent version of Internet Explorer available for a supported operating system will receive technical support and security updates. Jabber Web SDK releases after 11.0 will follow this support policy. Enterprise Mode for Internet Explorer 11 (http://blogs.msdn.com/b/ie/archive/2014/04/02/stay-up-to-date-with-enterprise-mode-for-internet-explorer-11.aspx), released in April 2014, offers enhanced backward compatibility and enables you to run many legacy Web apps during your transition to modern Web standards.
Ensure that your browser is not configured to prevent browser add-ons from running. In Internet Explorer browser add-ons are referred to as
ActiveX Controls. Chrome and Firefox uses the term
Web browsers using Jabber SDK on Windows 8 and later must run in Windows desktop mode. For IE, adding a
requiresActiveX "META" tag to your page will prompt users to reload IE in the traditional desktop mode if they are using IE in the new Windows UI.
The Browser Add-on
The Jabber Voice and Video SDK uses a browser add-on to implement its core functionality. Although the SDK makes it unnecessary to call the add-on directly, you will get the most from the SDK if you have a good understanding an understanding of it.
Important: When you initialize the SDK, the add-on object is inserted into the web page. This is important because this means that functionality of the SDK is only available while the web page is loaded by the browser.
- If you close the page you lose any existing calls and you are unable to receive calls.
- If you refresh the page, you lose existing calls and the voice and video functionality until the page has reloaded and the SDK is registered with CUCM.
Introduction to Cisco Voice and Video Infrastructure
This section is intended to be a high-level introduction to Cisco's Voice and Video architecture, particularly how it relates to the Jabber SDK. For more information, please visit the main Cisco Unified Communications Manager page on our web site.
In this diagram, users Dave and Lucy are both sitting at their PC using a Jabber SDK-based web application (the picture would be identical if they were using another Cisco Jabber voice and video product). In order to be able to make calls, their Jabber SDK instance has to be registered with Cisco Unified Communications Manager. This registration is important as it means that the application that they're using can be reached by other people who want to place a call to them.
Registration is managed on a per-device basis. Device in this context is usually associated with a user by an admin, and you need to make sure that a suitable device has been set up for your user(s) and that you know the device name before you start using the SDK. After your device is registered, Cisco Unified Communications Manager will contain a mapping between your device and your IP address, enabling calls, voice, and video to be routed to you.
Registration and call signaling is carried out using a protocol called SIP. In basic terms, SIP signaling is responsible for placing and ending the call, and for supporting mid-call features like hold and resume. However, once a call has been answered, voice and video is transmitted directly between the participants using a protocol called RTP.
The Jabber SDK hides the details of SIP and RTP, but understanding these basic concepts can be useful, especially when diagnosing any problems that may occur when you deploy your applications.
- Deploy the cwic.js and ciscobase.js files to your web server and add a softphone to your existing web application.
- Learn how to add video capability to your jabber softphone.
- Learn how to do more with voice and video
- Take a look at our server-side reference application that is built using node.js
- Add IM and Presence capabilities to your web app using Jabber Cisco Ajax XMPP Library (CAXL).