Browser/HTML friendly protocol for real-time communication signaling
US-9331967-B2 · May 3, 2016 · US
US9769214B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9769214-B2 |
| Application number | US-201314071896-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 5, 2013 |
| Priority date | Nov 5, 2013 |
| Publication date | Sep 19, 2017 |
| Grant date | Sep 19, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Embodiments include providing reliable Session Initiation Protocol (SIP) signaling for Web Real Time Communications (WebRTC) interactive flows, and related methods, systems, and computer-readable media. In one embodiment, a method for providing reliable SIP signaling for WebRTC interactive flows comprises establishing, via a stateless SIP user agent executing on a first web server, a WebRTC interactive flow between a WebRTC client executing on a computing device and a remote endpoint. The method further comprises receiving, by the WebRTC client, a call state from the stateless SIP user agent, the call state indicating a current state of the WebRTC interactive flow. The method also comprises storing, by the WebRTC client, the call state. In this manner, the call state of the WebRTC interactive flow may be accessible for restoring the WebRTC interactive flow in the event of an unexpected termination of the WebRTC client and/or the stateless SIP user agent.
Opening claim text (preview).
What is claimed is: 1. A method for providing reliable Session Initiation Protocol (SIP) signaling for Web Real-Time Communications (WebRTC) interactive flows, comprising: establishing, via a stateless SIP user agent executing on a first web server, a WebRTC interactive flow between a remote endpoint and a WebRTC client executing on a computing device separate from the first server and the remote endpoint; receiving, by a call state management agent of the WebRTC client, a call state from the stateless SIP user agent, the call state indicating a current state of the WebRTC interactive flow; storing, by the call state management agent of the WebRTC client, the call state; and responsive to a termination of the WebRTC interactive flow, restoring, by the stateless SIP user agent, the WebRTC interactive flow between the WebRTC client and remote endpoint using the stored call state from the call state management agent of the WebRTC client. 2. The method of claim 1 , further comprising, responsive to a termination of the WebRTC client: restarting the WebRTC client; accessing, by the call state management agent of the WebRTC client, the stored call state; providing, by the call state management agent of the WebRTC client, the stored call state to the stateless SIP user agent; and restoring, by the stateless SIP user agent, the WebRTC interactive flow between the WebRTC client and the remote endpoint based on the stored call state provided by the call state management agent of the WebRTC client. 3. The method of claim 1 , further comprising, responsive to a termination of the stateless SIP user agent: contacting, by the call state management agent of the WebRTC client, an alternate stateless SIP user agent; accessing, by the call state management agent of the WebRTC client, the stored call state; providing, by the call state management agent of the WebRTC client, the stored call state to the alternate stateless SIP user agent; and restoring, by the alternate stateless SIP user agent, the WebRTC interactive flow between the WebRTC client and the remote endpoint based on the stored call state provided by the call state management agent of the WebRTC client. 4. The method of claim 1 , wherein storing, by the call state management agent of the WebRTC client, the call state comprises storing the call state in a local persistent data store as a browser cookie accessible to the call state management agent of the WebRTC client. 5. The method of claim 1 , wherein storing, by the call state management agent of the WebRTC client, the call state comprises storing the call state in a network persistent data store. 6. The method of claim 1 , wherein storing, by the call state management agent of the WebRTC client, the call state comprises storing the call state in a serialized base64 text representation. 7. The method of claim 1 , where the call state comprises SIP dialog information, SIP transaction information, or a Hyper Text Transfer Protocol (HTTP) session identifier, or a combination thereof. 8. A system for providing reliable Session Initiation Protocol (SIP) signaling for Web Real-Time Communications (WebRTC) interactive flows, comprising: at least one communications interface; a first web server executing a stateless SIP user agent; and a computing device associated with the at least one communications interface and communicatively coupled to the stateless SIP user agent, the computing device executing a WebRTC client comprising a call state management agent, the WebRTC client configured to establish a WebRTC interactive flow with a remote endpoint via the stateless SIP user agent, the call state management agent configured to receive a call state from the stateless SIP user agent, the call state indicating a current state of the WebRTC interactive flow, and store the call state, and wherein the SIP user agent, in response to a termination of the WebRTC interactive flow, restores the WebRTC interactive flow between the WebRTC client and the remote endpoint using the stored call state from the call state management agent of the WebRTC client. 9. The system of claim 8 , wherein the WebRTC client is further configured to, responsive to a termination of the WebRTC client, restart the WebRTC client; wherein the call state management agent is further configured to, responsive to restarting the WebRTC client: access the stored call state; and provide the stored call state to the stateless SIP user agent; and wherein the stateless SIP user agent is further configured to restore the WebRTC interactive flow between the WebRTC client and the remote endpoint based on the stored call state provided by the call state management agent of the WebRTC client. 10. The system of claim 8 , further comprising a second web server executing an alternate stateless SIP user agent; wherein the WebRTC client is further configured to, responsive to a termination of the stateless SIP user agent, contact the alternate stateless SIP user agent; wherein the call state management agent is further configured to: access the stored call state; and provide the stored call state to the alternate stateless SIP user agent; and wherein the alternate stateless SIP user agent is configured to restore the WebRTC interactive flow between the WebRTC client and the remote endpoint based on the stored call state provided by the call state management agent of the WebRTC client. 11. The system of claim 8 , wherein the call state management agent is configured to store the call state by storing the call state in a local persistent data store as a browser cookie accessible to the WebRTC client. 12. The system of claim 8 , further comprising a network persistent data store; wherein the call state management agent is configured to store the call state by storing the call state in the network persistent data store. 13. The system of claim 8 , wherein the call state management agent is configured to store the call state by storing the call state in a serialized base64 text representation. 14. A non-transitory computer-readable medium having stored thereon computer-executable instructions to cause a processor to implement a method, comprising: establishing, via a stateless SIP user agent executing on a first web server, a WebRTC interactive flow between a remote endpoint and a WebRTC client executing on a computing device separate from the first server and the remote endpoint; receiving, by a call state management agent of the WebRTC client, a call state from the stateless SIP user agent, the call state indicating a current state of the WebRTC interactive flow; storing, by the call state management agent of the WebRTC client, the call state; and responsive to a termination of the WebRTC interactive flow, restoring, by the stateless SIP user agent, the WebRTC interactive flow between the WebRTC client and remote endpoint using the stored call state from the call state management agent of the WebRTC client. 15. The non-transitory computer-readable medium of claim 14 having stored thereon the computer-executable instructions to cause the processor to implement the method, further comprising, responsive to a termination of the WebRTC client: restarting the WebRTC client; accessing, by the call state management agent of the WebRTC client, the stored call state; providing, by the call state management agent of the WebRTC client, the stored call state to the stateless SIP user agent; and restoring, by the stateless SIP user agent, the WebRTC interactive flow between the WebRTC client and the remote endpoint based on the stored call state provided
Electricity · mapped topic
Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms · CPC title
Electricity · mapped topic
Web based protocols, e.g. webRTC · CPC title
Session initiation protocol [SIP] · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.