Co-browsing Framework for WebRTC Connection Stability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing WebRTC connections for voice communication over web pages are unreliable due to repeated connects and disconnects, leading to network resource reservation issues and security risks, especially when integrating web site services with call center services, and can result in poor user experience and vulnerability to denial-of-service attacks.
Innovation Solution
Establishing a WebRTC connection between a user device and an IVR system running a voice browser, with the voice content provided to the IVR system, and implementing a co-browsing framework to integrate HTML browser sessions with voice browser sessions, allowing for seamless navigation and interaction without reloading pages, using mechanisms like hidden frames or fetching scripts to maintain connections.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If WebRTC connections are established for each web page load, then voice communication can be enabled, but connection reliability deteriorates due to repeated connects and disconnects
Solution Approach 1:
The system performs preliminary actions by establishing the WebRTC connection when the HTML browser session is first created, before the user actually needs voice communication. This initial connection setup ensures that the communication channel is ready and stable, avoiding repeated connection attempts that would degrade reliability. The connection is maintained throughout the browser session lifecycle.
Solution Approach 2:
The WebRTC connection is designed to serve multiple web pages and multiple voice communication sessions within a single HTML browser session. Instead of creating separate connections for each page, the same connection infrastructure is reused across different pages and communication instances, improving both reliability and resource efficiency.
2Adaptability or versatility
If WebRTC connections are frequently disconnected and reconnected, then page navigation is possible, but network resource reservation issues occur
Solution Approach 1:
The system preliminarily establishes the WebRTC connection at the start of the HTML browser session, ensuring network resources are reserved and configured in advance. This preliminary setup allows subsequent page navigations to occur without triggering new connection establishments, thereby preventing network resource waste from repeated connection attempts.
Solution Approach 2:
The WebRTC connection maintains continuous operation throughout the HTML browser session, even as the user navigates between multiple web pages. The connection remains active and ready for voice communication, eliminating the need to repeatedly establish and tear down connections during normal browsing activities.
3Ease of operation
If traditional web page loading is used, then page changes are simple, but security risks increase due to connection disruptions
Solution Approach 1:
The system performs the security-critical action of establishing the WebRTC connection preliminarily, before page navigation occurs. This initial connection establishment creates a secure, authenticated communication channel that persists through page changes, preventing security vulnerabilities that would arise from repeated connection cycles.
Solution Approach 2:
The WebRTC connection acts as an intermediary layer that maintains secure communication between the user device and the application server throughout the browser session. This persistent connection infrastructure mediates all voice communication requests, ensuring security is maintained regardless of how many pages the user navigates to.
4Ease of operation
If WebRTC connections are maintained across page changes, then user experience improves, but connection management complexity increases
Solution Approach 1:
The system merges the WebRTC connection lifecycle with the HTML browser session lifecycle. By tying the connection's existence to the browser session rather than individual pages, the system simplifies management logic while maintaining continuous connectivity for improved user experience across page navigations.
Data Source
AI summary
A computer system may include logic configured to enable voice-enabled web pages. The logic may be configured to receive a request for a web page that includes Hypertext Markup Language (HTML) content and voice browser content from an HTML browser running on a user device; generate a co-browsing session identifier based on the received request; provide a response to the HTML browser, wherein the response includes the HTML content, the generated co-browsing session identifier, and an instruction to establish a Web Real-Time Communication (WebRTC) connection with an interactive voice response (IVR) system associated with the voice browser content; receive an indication from the IVR system that the WebRTC connection has been established for the co-browsing session identifier; and provide the voice browser content to a voice browser in the IVR system, in response to receiving the indication that the WebRTC connections has been established for the co-browsing session identifier.


