Enterprises migrating their contact center infrastructure to the cloud have an opportunity to adopt a WebRTC interface for agent communications, instead of continuing to use legacy SIP-based protocol stacks to access the CCaaS provider. In my last blog I reviewed the compelling business advantages of the WebRTC-based approach. In this blog I’ll look at some of the key functional differences between SIP and WebRTC, which continue to argue in favor of moving your voice services to the browser.
I’ll also note a few technical considerations for migrating an on-premises IP contact center to the cloud and using WebRTC for communications. If you’re aware of the differences and plan accordingly, you’ll be very happy you made the switch to WebRTC.
On-Prem Contact Centers are Costly and Complicated
Legacy contact centers are inherently costly and complex to deploy and operate. Most enterprise IP contact centers use SIP (Session Initiation Protocol) to establish and manage real-time communications sessions. This standards-based signaling protocol is based on a distributed architecture with distinct “user agent clients” and “user agent servers.” A typical SIP implementation includes a variety of components including endpoints, various network elements and communications services (e.g. SIP trunks). The figure below depicts an on-premises IP contact center, composed of:
Agent endpoints using special-purpose SIP handsets or softphones
Core functional infrastructure such as Interactive Voice Response (IVR) and Automatic Call Distributor (ACD) systems
Session Border Controllers (SBCs) for terminating and securing SIP trunks
SIP trunks for PSTN connectivity
WebRTC Simplifies Contact Center Communications
WebRTC is an industry-standard, open project that delivers real-time communications capabilities like HD audio, video and screen-sharing natively in a browser. Based on a peer-to-peer model, a WebRTC implementation is much simpler and more cost-effective to deploy and operate than a SIP implementation. WebRTC eliminates special-purpose endpoints and client software, avoids intermediary network elements (no “user agent servers” as with SIP) and enables inherently secure communications directly over the public internet.
The figure below depicts a CCaaS implementation using WebRTC. Compare this with the diagram above and you immediately notice how the CCaaS solution eliminates the cost and overhead of enterprise IVRs, ACDs, SBCs. Instead, the CCaaS provider offers equivalent functions within its cloud service with much greater efficiency and economies of scale.
WebRTC eliminates all the hassles, costs and constraints of special-purpose SIP handsets and softphone clients. It allows contact center agents to work from any location, using the device of their choice—laptop, smartphone, tablet.
WebRTC can eliminate SIP trunk expenses because agents connect directly to the CCaaS provider over the public internet. Legacy SIP clients don’t have the congestion control or security features required to establish reliable communications over the top.
Download the Whitepaper: How WebRTC Can Improve Your Contact Center Communications
Optimizing Call Quality for WebRTC-Based Communications
A WebRTC-based CCaaS solution can help you slash operating expenses and optimize contact center performance. However, when you migrate to the cloud you need to take a fresh look at service quality. Most on-prem IP contact centers connect to the PSTN via a SIP trunking service that provides an SLA. When you move to the public internet, you lose your service level guarantees, and may have to contend with network congestion and packet loss.
These days most public internet connections are optimized for streaming HD video (think Netflix) and can easily handle multiple megabits of bandwidth. The Opus codec used by WebRTC, consumes only about 20 kbps of bandwidth, so network capacity is rarely an issue. But streaming video and interactive audio have very different latency tolerances. Unlike streaming video traffic, WebRTC traffic is susceptible to packet loss and delays, which can degrade call quality and impair user satisfaction. To optimize the user experience you need to minimize network latency and packet loss.
Many callstats.io customers have successfully deployed WebRTC-based CCaaS solutions. Based on our experience, we recommend the following steps to optimize call quality over the public internet:
First, test your ISP’s performance with real WebRTC traffic. Many callstats.io customers use our Smart Connectivity Test feature to perform a site survey before opening a new contact center location. It’s a great way to compare multiple providers using the full WebRTC stack.
Second, buy extra bandwidth. WebRTC will likely share the same pipe with your website traffic, streaming video and other applications. So, make sure you add at least the same amount of bandwidth that is provisioned on your SIP trunk, plus some extra margin.
Next, apply DiffServ priorities to the WebRTC traffic. The endpoints will automatically mark the packets with a code point based on IETF recommendations for WebRTC (they are different than those used for legacy SIP communications). Make sure your switches and routers are configured to handle these code points.
Finally, monitor call quality metrics on an ongoing basis to ensure users are experiencing satisfactory audio quality. callstats.io is a great solution because it captures hundreds of WebRTC performance metrics from each agent’s browser, in real time, and analyzes them using artificial intelligence to identify problems.
Securing WebRTC-Based Communications over the Public Internet
With a WebRTC-based CCaaS solution you can connect agents over the public internet without compromising security. Unlike SIP, all WebRTC traffic is automatically secured using strong DTLS (Datagram Transport Layer Security) encryption to prevent eavesdropping, hijacking and impersonation. With SIP, security is a rarely used communications option.
The last leg of the call between the CCaaS provider and customer is typically delivered unencrypted over the PSTN, just like any other call on the public telephone network. However, WebRTC presents enterprises with options to improve communications security. For example, you can add a click-to-call interface to a mobile app or website that enables your end-customers to establish a secure end-to-end WebRTC connection with your agents. This can help reduce the need for multi-factor authentication solutions or other special-purpose security clients, while ensuring compliance with electronic data privacy mandates like HIPPA.
The Time is Ripe for WebRTC
A WebRTC-based CCaaS solution can help you improve contact center performance, streamline operations and increase business agility. You can eliminate expensive premises-based equipment and SIP trunk services. But moving agent communications to the public internet can introduce congestion and packet loss, which can impair service quality. Careful network planning and thorough ISP performance testing are critical for a successful migration. The recommendations presented in this blog can help you optimize WebRTC call quality and ensure a smooth migration.
In my next blog, I’ll take a closer look at WebRTC call quality and provide tips for identifying and isolating faults, errors and performance issues that can impair the user experience and hinder CCaaS adoption.