Click here to Skip to main content
Click here to Skip to main content

Tagged as

Integrating Plantronics Call Control with WebRTC

, 12 Feb 2013
Integrating Plantronics Call Control with WebRTC

Editorial Note

This article is in the Product Showcase section for our sponsors at CodeProject. These reviews are intended to provide you with information on products and services that we consider useful and of value to developers.

One of the big things that I think will radically transform the communications industry is an emerging technology called WebRTC.  In a nutshell WebRTC will provide web browser vendors standards-based signaling protocols, codecs and security for interoperable real-time voice and video (and data) communications.  What this means for web developers is that the barriers for introducing real time communications will be significantly lowered and will no longer require the use of a browser plugin.

To find out more about what WebRTC is and the current state of the standards development, I would recommend watching this video by Cisco Fellow Cullen Jennings http://vimeo.com/47682405.

Recently at the WebRTC Expo (http://www.webrtcworld.com/conference/) Joe Burton and I demonstrated how Plantronics can seamlessly integrate our headset devices into a WebRTC call flow. The demo consisted of three parts. 

The first part was a node.js sever application that will serve as a rendezvous point for setting up a simple WebRTC call.  To build the server app we modified code we borrowed from an existing demo that Anant Narayanan put together called Gupshup.  The code for the server project can be found and downloaded from github (carybran/webrtc-server · GitHub .  The server code is relatively painless to use once you have node.js installed.

To run the server navigate to the webrtc-server project

  • Run the node package manager in the directory as follows: "npm install app.js", this will download the dependent packages for the application
  • Start node as follows: AUDIENCE="http://youripaddress:8000" node app.js
  • The server is now ready to go.

The second part is using a nightly build of Mozilla Firefox.  You should use the same version on each machine and I would recommend building your own copy of the nightly. To see what we used for the demo check out this file: webrtc-server/WebRTCExpo2012-demo-machine-config.txt at master · carybran/webrtc-server · GitHub Note: this demo was written for use with Mozilla but could easily be modified to work with Google Chrome.

The third part is the Plantronics client side code also on Github: carybran/PlantronicsWebRTC · GitHub.  This code connects the Plantronics headset functionality to the web browser using websockets.  For more information on how to build and use the code - check out the readme on Github

PlantronicsWebRTC/README.md at master · carybran/PlantronicsWebRTC · GitHub

Once you have the server up and running and your Mozilla nightly configured to run WebRTC applications you should be able to connect to the node.js application and login with the username of your choice.

If you have questions or comments about getting the demo running please let me know.

This article was written by Cary Bran. Cary works for Plantronics out of his backyard shed located in Seattle, Washington. His job title is Senior Director, Advanced Software and Architecture. What that translates to is he leads the research and development of next generation software and device concepts.

He's been developing solutions in the unified communications and collaboration space since 1998. In recent history, he's served as a software architect, technical strategist and contributor to the IETF and W3C WebRTC standardization efforts. He has a BS in Computer Science and an MBA from the Foster School of Business at the University of Washington.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Plantronics

United States United States
Today’s smart devices and applications have untapped potential in the realm of context-aware computing. Plantronics is making it possible for its audio devices to deliver contextual information to a range of applications through Plantronics headsets. The Plantronics Spokes SDK allows developers to create a range of business applications that will have the power to change the way we communicate and collaborate.

Please check out our DevZone for more info on the Spokes SDK:
http://developer.plantronics.com/community/devzone

Comments and Discussions

 
BugCan't watch your site! PinmemberSperneder Patrick12-Mar-13 1:00 
Im running IE10 on W7...
I guess your server is simply misinterpreting my user Agent...
It says my browser is out of date and so the site doesnt work. What a shame, i'm really interrested in exploring the sdk...
 
regards
Patrick
GeneralRe: Can't watch your site! PinmemberPlantronics25-Mar-13 10:08 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Mobile
Web01 | 2.8.140827.1 | Last Updated 12 Feb 2013
Article Copyright 2013 by Plantronics
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid