Method and system for managing and using sessions as RESTful web services

US9509776B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9509776-B2
Application numberUS-97887310-A
CountryUS
Kind codeB2
Filing dateDec 27, 2010
Priority dateJun 2, 2010
Publication dateNov 29, 2016
Grant dateNov 29, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Disclosed herein are systems, methods, and non-transitory computer-readable storage media for managing and using sessions as RESTful web services. A session is exposed as a resource having an associated Uniform Resource Identifier (URI), and the session is composed with other services. For example, a client sends an HTTP POST request to a web server to create a session, an HTTP GET request to retrieve a representation of the session, an HTTP PUT request to update the representation of the session, and an HTTP DELETE request to delete the session so that resources within the session are reclaimed. Since the sessions are resources, the resources can be shared among clients, and the web servers knows the client states while still being stateless, making them robust and scalable. Composing web services with the common RESTful session service reduces complexity and enhances interoperability.

First claim

Opening claim text (preview).

We claim: 1. A method comprising: in response to a first user agent request to create a session for communication of data between user agents, allocating data storage of an origin server to a representation of the session, the data storage being allocated for storing session state information of the session, and the representation of the session having an associated uniform resource identifier, wherein the session is configured to preserve session state information via the data storage, wherein the session state information comprises a session timer for the session, and wherein the session is configured to expire in response to expiration of the session timer; in response to a second user agent request to update the session state information of the session, updating the session state information based on a first determination that the second user agent request to update the session state information comprises the associated uniform resource identifier; in response to a third user agent request to retrieve the session state information, retrieving the session state information from the data storage based on a second determination that the third user agent request to retrieve the session state information comprises the associated uniform resource identifier; and terminating the session by de-allocating the data storage; and wherein the session comprises a web-based collaboration in which a first human user of the first user agent communicates, in real-time, with a second human user of the second user agent. 2. The method as claimed in claim 1 , wherein each step in the method is compliant with all constraints of a representational state transfer. 3. The method as claimed in claim 1 , wherein the first user agent request to create a session is a hypertext transfer protocol POST request, and wherein allocating the data storage comprises finding that the POST request includes a uniform resource identifier identifying a session factory service of the origin server, and creating the session upon finding that the POST request includes the uniform resource identifier identifying the session factory service of the origin server. 4. The method as claimed in claim 1 , wherein updating the session state information comprises finding that the second user agent request to update the session is a hypertext transfer protocol PUT request including the associated uniform resource identifier, and wherein retrieving the session state information comprises finding that the third user agent request to retrieve session state information is a hypertext transfer protocol PUT request including the associated uniform resource identifier. 5. The method as claimed in claim 1 , wherein updating the session state information comprises updating session state information to set an event listener for the session and for a user agent having originated the second user agent request to update session state information, and wherein terminating the session comprises sending a notification of a session terminated event to the user agent having originated the second user agent request to update session state information. 6. The method as claimed in claim 1 , wherein terminating the session is performed in response to a fourth user agent request to delete the session upon finding that the fourth user agent request to delete the session includes the associated uniform resource identifier. 7. The method as claimed in claim 1 , wherein terminating the session is performed in response to an expiration of the session timer and wherein the session includes an exchange of voice or video data between the user agents in real-time. 8. A system comprising: a processor; and a computer-readable storage medium having stored therein instructions which, when executed by the processor, cause the processor to perform operations comprising: responding to a first user agent request to create a session for exchanging data between user agents in real-time by allocating data storage associated with an origin server to a representation of the session for storing session state information of the session, the representation of the session having an associated uniform resource identifier, wherein the session preserves session state information via the data storage, wherein the session state information comprises a session timer for the session, and wherein the session expires in response to expiration of the session timer; in response to a second user agent request to update session state information, updating the session state information in the data storage allocated to the representation of the session upon finding that the user agent request to update the session includes the associated uniform resource identifier; in response to a third user agent request to retrieve the session state information, retrieving the session state information from the data storage based on a second determination that the third user agent request to retrieve the session state information includes the associated uniform resource identifier; and terminating the session by de-allocating the data storage; and wherein the session comprises a web conference in which a first human user of the first user agent communicates at least one of voice and video with a second human user of the second user agent. 9. The system as claimed in claim 8 , wherein each of the operations is compliant with all constraints of representational state transfer. 10. The system as claimed in claim 8 , wherein the first user agent request to create a session is a hypertext transfer protocol POST request, and allocating the data storage includes finding that the POST request includes a uniform resource identifier identifying a session factory service of the origin server, and creating the session upon finding that the POST request includes the uniform resource identifier identifying the session factory service of the origin server. 11. The system as claimed in claim 8 , wherein updating the session state information includes finding that the second user agent request to update a session is a hypertext transfer protocol PUT request including the associated uniform resource identifier, and wherein retrieving the session state information includes finding that the third user agent request to retrieve session state information is a hypertext transfer protocol PUT request including the associated uniform resource identifier. 12. The system as claimed in claim 8 , wherein updating the session state information includes updating session state information to set an event listener for the session and for a user agent having originated the second user agent request to update session state information, and terminating the session further includes sending a notification of a session terminated event to the user agent having originated the user agent request to update session state information. 13. The system as claimed in claim 8 , wherein terminating the session is performed in response to a fourth user agent request to delete a session upon finding that the fourth user agent request to delete a session including the associated Uniform Resource Identifier. 14. The system as claimed in claim 8 , wherein terminating the session is performed in response to an expiration of the session timer. 15. A non-transitory computer-readable storage medium having stored therein instructions which, when executed by a processor, cause the processor to perform operations comprising: in response to a first user agent request to create a session for exchanging data between user agents in real-time, allocating data storage of an origin server to a representation of the se

Assignees

Inventors

Classifications

  • based on web technology, e.g. hypertext transfer protocol [HTTP] · CPC title

  • H04L67/14Primary

    Session management (for real-time applications in data packet communications networks H04L65/1066) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9509776B2 cover?
Disclosed herein are systems, methods, and non-transitory computer-readable storage media for managing and using sessions as RESTful web services. A session is exposed as a resource having an associated Uniform Resource Identifier (URI), and the session is composed with other services. For example, a client sends an HTTP POST request to a web server to create a session, an HTTP GET request to r…
Who is the assignee on this patent?
Chou Wu, Li Li, Avaya Inc
What technology area does this patent fall under?
Primary CPC classification H04L67/14. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Nov 29 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).