Configuring and Troubleshooting WebRTC Connectivity for the NICE CXone Help System
What This Guide Covers
This guide details the configuration and troubleshooting steps required to establish stable WebRTC connectivity for NICE CXone softphone users. Successfully completing this guide will result in a fully functional softphone experience, allowing agents to make and receive calls directly from their browser without requiring additional client software. This guide focuses on the intricacies of the NICE CXone WebRTC implementation, highlighting common pitfalls and providing resolution steps.
Prerequisites, Roles & Licensing
- Licensing: CXone Professional, Premium, or Enterprise licensing tier. WebRTC functionality is included as a standard feature within these tiers.
- CXone Permissions: The user performing the configuration requires the following permissions:
WebRTC > Configuration > ViewWebRTC > Configuration > EditAgent > Configuration > ViewAgent > Configuration > Edit(for assigning WebRTC profile to agents)
- Browser Support: Latest versions of Google Chrome, Mozilla Firefox, Microsoft Edge, and Safari are supported. Older browsers may exhibit compatibility issues.
- Network Requirements: Stable internet connection with at least 1.5 Mbps upload/download bandwidth. Firewall must allow UDP traffic on ports 5060-5085 (typically).
- STUN/TURN Servers: CXone manages STUN/TURN servers. No direct configuration is required, but understanding their role is crucial for troubleshooting.
The Implementation Deep-Dive
1. WebRTC Profile Configuration
The WebRTC profile defines the parameters used for the WebRTC connection. This includes codec preferences, encryption settings, and STUN/TURN server information.
- Navigate to Admin > WebRTC > Profiles.
- Click Add Profile.
- Profile Name: Provide a descriptive name (e.g., “Standard WebRTC”).
- Codec Preference: Configure the preferred audio codecs. The Trap: Setting the codec preference to only a single codec (e.g., only G.722) can lead to call failure if the peer endpoint does not support that codec. Always include multiple codecs (G.711, G.722, Opus) in descending order of preference.
- Encryption: Ensure SRTP (Secure Real-time Transport Protocol) is enabled for secure audio transmission. This is the default and should remain enabled.
- STUN/TURN Servers: CXone automatically configures STUN/TURN servers. Do not manually enter server addresses.
- Save the profile.
2. Agent Profile Assignment
Once the WebRTC profile is created, it must be assigned to agent profiles.
- Navigate to Admin > Agents > Profiles.
- Select the target agent profile (e.g., “Standard Agent”).
- WebRTC Profile: Select the previously created WebRTC profile (“Standard WebRTC”).
- Save the profile.
- Important Note: Agent assignment takes time to propagate. Agents must log out and log back into CXone for the changes to take effect.
3. Browser Configuration and Permissions
Proper browser configuration is crucial for successful WebRTC connectivity.
- Microphone/Camera Permissions: Ensure the browser has permission to access the microphone and camera. The Trap: Users frequently block microphone access during initial browser prompts and then are unsure why their softphone is not working. Users must verify permissions are granted in browser settings.
- Firewall/Proxy Configuration: Firewalls and proxies can interfere with WebRTC connections. Ensure the firewall allows UDP traffic on ports 5060-5085. Proxies should be configured to handle WebRTC traffic appropriately.
- Browser Extensions: Certain browser extensions can conflict with WebRTC. Disable or uninstall any suspicious extensions.
Validation, Edge Cases & Troubleshooting
Edge Case 1: One-Way Audio
- Failure Condition: Agent can hear the caller, but the caller cannot hear the agent, or vice-versa.
- Root Cause: Incorrect microphone/speaker selection in browser settings or codec incompatibility.
- Solution:
- Verify the correct microphone and speaker devices are selected in the browser settings.
- Check the WebRTC profile codec preference. Ensure the codecs supported by the endpoint are included in the profile.
- Test with a different browser to isolate the issue.
Edge Case 2: Call Setup Failure (No Ringing)
- Failure Condition: The agent dials a number, but the call does not ring on the destination side.
- Root Cause: STUN/TURN server connectivity issues, firewall blocking UDP traffic, or incorrect dialing prefix.
- Solution:
- Verify firewall rules allow UDP traffic on ports 5060-5085.
- Use a network diagnostic tool (e.g.,
Wireshark) to confirm UDP traffic is flowing to and from the CXone STUN/TURN servers. - Ensure the correct dialing prefix is configured in the CXone system.
- Check CXone system health dashboards for any reported WebRTC service disruptions.
Edge Case 3: Intermittent Audio Quality/Dropouts
- Failure Condition: Audio quality is poor, with frequent dropouts or distortion.
- Root Cause: Network congestion, insufficient bandwidth, or codec negotiation issues.
- Solution:
- Verify agent’s internet connection stability and bandwidth.
- Monitor network latency and packet loss using network diagnostic tools.
- Review WebRTC profile codec preference. Consider prioritizing codecs with lower bandwidth requirements (e.g., G.711).
- Contact CXone support to investigate potential issues on their end.
Edge Case 4: Softphone Freezing/Crashing
- Failure Condition: The softphone interface becomes unresponsive or crashes.
- Root Cause: Browser incompatibility, excessive browser extensions, or memory leaks.
- Solution:
- Ensure the browser is up-to-date.
- Disable all browser extensions.
- Clear browser cache and cookies.
- Monitor browser memory usage.
- Test with a different browser.
Official References
- NICE CXone Help - WebRTC Configuration: https://help.nice-incontact.com/knowledge/knowledge-article/web-rtc-configuration/kbid/k16615
- NICE CXone Help - Troubleshooting WebRTC: https://help.nice-incontact.com/knowledge/knowledge-article/troubleshooting-web-rtc/kbid/k17886
- RFC 7864 - STUN: https://datatracker.ietf.org/doc/html/rfc7864
- RFC 8871 - WebRTC Media Negotiation: https://datatracker.ietf.org/doc/html/rfc8871