P
US10491685B2ActiveUtilityPatentIndex 65

Session transfer between resources

Assignee: MICROSOFT TECHNOLOGY LICENSING LLCPriority: Mar 31, 2015Filed: Mar 31, 2015Granted: Nov 26, 2019
Est. expiryMar 31, 2035(~8.7 yrs left)· nominal 20-yr term from priority
Inventors:Khayrudinov AntonOSOBOV SERGEIPOTRA ADRIANELAND HUGH ALEXANDER PROSSER
H04L 67/142H04L 67/148G06Q 10/10H04L 67/02H04L 65/1083G06F 9/461H04L 29/06319H04L 65/1094H04L 65/1066
65
PatentIndex Score
3
Cited by
65
References
19
Claims

Abstract

Techniques for session transfer between resources are described in which session data for communication sessions is transferred between distinct web-based resources to enable continuation of the communication sessions as navigation between the resources occurs. In one approach, shared session storage accessible to authorized resources is employed to facilitate the transfer of session data. Code embedded in pages for different resources rendered by a browser (or other communication module) operates to store session data for communication sessions in the shared storage. When navigation occurs between different pages, authorizations of the different resources to utilize the shared session storage are determined and communication sessions that are active are maintained across page reloads for the authorized resources. This involves retrieving session data stored in the shared session storage and passing the session data that is retrieved to a communication service to reconnect to the communication sessions after navigation occurs.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method implemented by a computing device, the method comprising:
 loading a first page associated with a first resource, the first resource including a first main functionality and an associated first communication functionality; 
 initiating a communication session between the computing device and at least one client device in conjunction with the first communication functionality of the loaded first page, the communication session being associated with a user account; 
 obtaining session data for the communication session, the session data including one or more parameters useable to initiate the communication session using the first communication functionality; 
 storing the session data; 
 upon navigation to a second page associated with a second resource that is different from the first resource, the second resource including a second main functionality different from the first main functionality and an associated second communication functionality, separate from the first communication functionality, maintaining the communication session at the second page by:
 validating the second resource as a resource authorized to access the session data for the communication session from shared session storage, wherein the validating includes determining that the computing device is signed in to the user account; 
 accessing, through the second page, the stored session data; and 
 connecting to the communication session via the second communication functionality associated with second page using the accessed session data. 
 
 
     
     
       2. A method as described in  claim 1 , wherein the first page is associated with a first source and the second page is associated with a second source that is different from the first source. 
     
     
       3. A method as described in  claim 1 , wherein the session data for the communication session is obtained via code embedded in the first page, the embedded code being implemented via an in-line frame (iframe) for the first page, the iframe configured to access content from an external source that is different from a source associated with the first page. 
     
     
       4. A method as described in  claim 1 , wherein the session data comprises parameters used to setup the communication session via a communication service include one or more of a user identifier, a session identifier, an identification of client endpoints for the communication session, a session URL, or session security credentials. 
     
     
       5. A method as described in  claim 1 , wherein the shared session storage is implemented via local storage at the computing device. 
     
     
       6. A method as described in  claim 1 , wherein the shared session storage is implemented via remote storage that enables roaming of the session data between different devices authenticated to the user account. 
     
     
       7. A method as described in  claim 1 , wherein validating the second page includes ascertaining whether the second page is included in a trust list that specifies trusted resources authorized to use the shared session storage. 
     
     
       8. A computing device comprising:
 a processing system; and 
 one or more computer readable media storing instructions that, when executed by the processing system, cause the computing device to perform operations comprising: 
 storing, in a shared session store, session data for a communication session between the computing device and at least one client device, the communication session associated with a user account and initiated via a first communication functionality associated with a first page that is associated with a first resource; and 
 responsive to detecting a navigation from the first page to a second page, associated with a second resource that is different from the first resource, the second page being associated with a second communication functionality, separate from the first communication functionality: 
 maintaining the communication session by: 
 validating the second resource as a resource authorized to access the session data for the communication session from the shared session store, wherein the validating includes determining that the computing device is signed in to the user account; 
 retrieving the session data from the shared session store; and 
 communicating the retrieved session data for use by the second communication functionality associated with the second page to maintain the communication session. 
 
     
     
       9. The computing device of  claim 8 , the computing device further comprising local storage configured to implement the shared session store and facilitate transfer of the session data between different pages. 
     
     
       10. The computing device of  claim 8 , wherein the shared session store is implemented at a storage location that is remote from the computing device. 
     
     
       11. The computing device of  claim 8 , wherein maintaining the communication session is further performed by determining authorizations of the second page to access the shared session store via a trust list configured to distinguish between authorized and unauthorized pages for accessing the shared session store. 
     
     
       12. The computing device of  claim 8 , wherein storing the session data and maintaining the communication session is performed using code embedded in iframes of the first and second pages. 
     
     
       13. The computing device of  claim 8 , further comprising disconnecting from the communication session in response to determining that the second page is not authorized to access the shared session store. 
     
     
       14. A computing system comprising:
 a processing system having one or more hardware devices; and 
 one or more computer readable media storing instructions that, when executed by the processing system, cause the computing system to perform operations comprising: 
 communicating a first page associated with a first resource for output by a client device, the first page including a display area for a first communication functionality associated with the first resource; 
 creating the communication session using the first communication functionality to enable online collaboration between the client device and at least one computing device in connection with the first page, the communication session being associated with a user account; 
 causing storage of session data for the communication session at a shared session store by communicating the session data to the shared session store; 
 receiving a request from the client device to navigate from the first page to a second page associated with a second resource that is different from the first resource; and 
 responsive to receiving the request: 
 communicating the second page for output by the client device, the second page including a display area for a second communication functionality associated with the second page and separate from the first communication functionality; and 
 maintaining the communication session by: 
 validating the second resource as a resource authorized to access the session data from the shared session store, wherein the validating includes determining that the computing device is signed in to the user account; and 
 retrieving the session data from the shared session store and communicating the retrieved session data for use by the second communication functionality associated with the second page to maintain the communication session. 
 
     
     
       15. A computing system as recited in  claim 14 , wherein the shared session store is implemented in storage of the client device. 
     
     
       16. A computing system as recited in  claim 14 , wherein the shared session store is implemented at a storage location that is remote from the client device. 
     
     
       17. A computing system as recited in  claim 14 , wherein the display areas of the first and second pages are each configured as an iframe to effectuate storage and transfer of session data for the maintaining of the communication session via the shared session store. 
     
     
       18. A computing system as recited in  claim 14 , the operations further comprising disconnecting a connection between the first communication functionality and the first resource responsive to receiving the request. 
     
     
       19. A computing system as recited in  claim 14 , the operations further comprising communicating a trust list to the client device responsive to receiving the request, the trust list including information describing one or more resources authorized to access the shared session store, the trust list being useable to validate pages prior to transfer of session data between the first and second pages.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.