IP Library › Granted Patent US 11,803,398
Granted Patent B2
US 11,803,398 · App. 17/448,531 · Granted Oct 31, 2023

Computing device and associated methods providing browser launching of virtual sessions in an application

Inventors: Georgy Momchilov (Parkland, FL); Hubert Divoux (Parkland, FL); Santosh Gummunur Chiranjeevi Sampath (Bangalore, IN); Deepak Sharma (Bangalore, IN)
G06F9/452G06F16/958H04L63/0428H04L65/1069H04L65/401
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,803,398
App. No.
17/448,531
Granted
Oct 31, 2023
Kind
B2
Abstract

A computing device may include a memory and a processor configured to cooperate with the memory to run a browser configured to generate a user interface to display a virtual session from a host computing device, and an application configured to establish a connection with the host computing device. The processor may further run code configured to cause the browser to connect with the host computing device using the connection established by the application to display the virtual session within the user interface.

Claims (31)

1. A computing device comprising:

a memory and a processor configured to cooperate with the memory to run

a browser configured to generate a user interface,

a native application configured to establish a connection with a host computing device configured to provide a virtual session, and

a browser extension configured to cause the native application to establish the connection with the host computing device responsive to initiation by the browser, and cause the browser to display the virtual session via the connection between the native application and the host computing device;

wherein the native application is configured to store a connection lease bound to the native application in the memory, and

establish the connection based upon the connection lease; and the browser extension is further configured to synchronize the connection lease with a connection lease service.

2. The computing device of claim 1 wherein the browser has a browser type associated therewith; and wherein the processor is further configured to run a messaging host associated with the browser type for relaying communications between the browser extension and the native application.

3. The computing device of claim 2 wherein the browser comprises a plurality of browsers having different browser types; wherein the messaging host comprises a different message host associated with individual browser types; and wherein the native application comprises a common connection manager configured to communicate with the different message hosts.

4. The computing device of claim 1 wherein the connection lease has a private/public key pair associated therewith comprising a private key and a public key; wherein the connection lease is generated based upon the public key; and wherein the native application is configured to access.

5. The computing device of claim 1 wherein the native application stores a connection ticket in the memory and establishes the connection with the host computing device based upon the connection ticket.

6. The computing device of claim 1 wherein the native application is configured to determine a capability associated with the browser extension, and communicate with the browser extension based upon the determined capability.

7. The computing device of claim 1 wherein the browser is configured to generate the user interface based upon a user interface cache; and wherein the native application is configured to obtain the user interface cache from a resource.

8. The computing device of claim 7 wherein the native application is further configured to store the user interface cache in the memory, obtain updates to the user interface cache from the resource, and provide the stored user interface cache to the browser through the browser extension responsive to unavailability of a cloud authentication store to provide updates.

9. The computing device of claim 1 wherein the browser is configured to generate the user interface responsive to the native application establishing the connection based upon the browser extension.

10. A method comprising:

running a browser at a computing device configured to generate a user interface;

running a native application at the computing device configured to establish a connection with a host computing device configured to provide a virtual session; and

running a browser extension at the computing device configured to cause the native application to establish the connection with the host computing device responsive to initiation by the browser, and cause the browser to display the virtual session via the connection between the native application and the host computing device;

wherein the native application is configured to store a connection lease bound to the native application in a computer memory, and establish the connection based upon the connection lease; and

the browser extension is further configured to synchronize the connection lease with a connection lease service.

11. The method of claim 10 wherein the browser has a browser type associated therewith; and further comprising running a messaging host associated with the browser type at the computing device for relaying communications between the browser extension and the native application.

12. The method of claim 11 wherein the browser comprises a plurality of browsers having different browser types; wherein the messaging host comprises a different message host associated with individual browser types; and wherein the native application comprises a common connection manager configured to communicate with the different message hosts.

13. The method of claim 10 wherein the connection lease has a private/public key pair associated therewith comprising a private key and a public key; wherein the connection lease is generated based upon the public key; and wherein the native application is configured to access the private key and validate the connection lease based upon the private key.

14. A non-transitory computer-readable medium having computer-executable instructions for causing a computing device to perform steps comprising:

running a browser at a computing device configured to generate a user interface;

running a native application at the computing device configured to establish a connection with a host computing device configured to provide a virtual session; and

running a browser extension at the computing device configured to cause the native application to establish the connection with the host computing device responsive to initiation by the browser, and cause the browser to display the virtual session via the connection between the native application and the host computing device;

wherein the native application is configured to store a connection lease bound to the native application in a memory of the computing device, and establish the connection based upon the connection lease; and

the browser extension is further configured to synchronize the connection lease with a connection lease service.

15. The non-transitory computer-readable medium of claim 14 wherein the browser has a browser type associated therewith; and further comprising computer-executable instructions for causing the computing device to run a messaging host associated with the browser type at the computing device for relaying communications between the browser extension and the native application.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
SECURITY INTEREST Recorded Sep 30, 2022
From: CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 062079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2021
From: MOMCHILOV, GEORGY; DIVOUX, HUBERT; SAMPATH, SANTOSH GUMMUNUR CHIRANJEEVI; SHARMA, DEEPAK
To: CITRIX SYSTEMS, INC.
Reel/Frame 057575/0024 →
Continuity (2)
Provisional Application 63149807 · Feb 16, 2021
Related Publication 20220261260A1 · Aug 18, 2022