IP Library › Granted Patent US 10,623,508
Granted Patent B2
US 10,623,508 · App. 16/129,240 · Granted Apr 14, 2020

Systems and methods for integrated service discovery for network applications

Inventor: Abhishek Chauhan (Santa Clara, CA)
Assignee: Citrix Systems, Inc.
H04L67/16H04L12/4641H04L12/66H04L63/0823H04L67/02
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 10,623,508
App. No.
16/129,240
Filed
Sep 12, 2018
Granted
Apr 14, 2020
Kind
B2
Examiner
NGUYEN, TU T
Art Unit
2453
USPC
709/223
Abstract

Embodiments described include systems and methods for integrating use of a cloud discovery service into a client application for a network application is provided. A client application can establish, for a user, one or more sessions with one or more network applications via an embedded browser within the client application. A request to access a uniform resource locator (URL) from a network application accessed via the embedded browser can be intercepted. The client application can communicate with a cloud discovery service to determine a location for which to send the URL for the user. The cloud service can select the location from a plurality of locations based at least on a context of the user. The client application can receive, from the cloud discovery service, the location for the URL and, responsive to the request, transmit the URL to the location selected by the cloud discovery service.

Claims (31)

1. A method for integrating use of a cloud discovery service into a client application for a network application, the method comprising:

(a) establishing, by a client application, for a user one or more sessions with one or more network applications via an embedded browser within the client application;

(b) intercepting, by the client application, a request to access a uniform resource locator (URL) from a network application of the one or more network applications accessed via the embedded browser;

(c) communicating, by the client application, with a cloud discovery service to determine a location for which to send the URL for the user, wherein the cloud service selects the location from a plurality of locations based at least on a context of the user;

(d) receiving, by the client application, from the cloud discovery service the location for the URL selected by the cloud discover service for the user; and

(e) transmitting, by the client application responsive to the request, the URL to the location selected by the cloud discovery service.

2. The method of claim 1 , wherein (b) further comprise intercepting the request to access the URL from a web page being displayed for the network application in the embedded browser.

3. The method of claim 2 , wherein the request is initiated responsive to an interaction by the user with the web page.

4. The method of claim 1 , wherein (c) further comprises identifying, by the client application, for the context of the user one or more of the following: identify of the user, a home location of the user, information about a client device executing the client application, information about the network application, information about an entity associated with the user.

5. The method of claim 1 , wherein (c) further comprises communicating, by the client application, the context of the user to the cloud discovery service.

6. The method of claim 1 , wherein (c) further comprises communicating, by the client application, a second request to resolve the URL to the location via a proxy domain of the cloud discovery service.

7. The method of claim 1 , wherein (c) further comprises communicating, by the client application, a second request to resolve the URL to the location via an application programming interface (API) call to the cloud discovery service.

8. The method of claim 1 , wherein the URL corresponds to the network application.

9. The method of claim 1 , wherein (d) further comprises receiving the location selected from the plurality of locations corresponding to multiple points of presence of the network application.

10. The method of claim 1 , wherein (d) further comprises receiving the location selected from the plurality of locations as the location performing better than other locations of the plurality of locations.

11. A system for integrating use of a cloud discovery service into a client application for a network application, the system comprising:

a client application executable on one or more processors of a client device and configured to:

establish or a user one or more sessions with one or more network applications via an embedded browser within the client application;

intercept a request to access a uniform resource locator (URL) from a network application of the one or more network applications accessed via the embedded browser;

communicate with a cloud discovery service to determine a location for which to send the URL for the user, wherein the cloud service selects the location from a plurality of locations based at least on a context of the user;

receive from the cloud discovery service the location for the URL selected by the cloud discover service for the user; and

transmit, responsive to the request, the URL to the location selected by the cloud discovery service.

12. The system of claim 11 , wherein the client application is further configured to intercept the request to access the URL from a web page being displayed for the network application in the embedded browser.

13. The system of claim 12 , wherein the request is initiated responsive to an interaction by the user with the web page.

14. The system of claim 11 , wherein the client application is further configured to identify for the context of the user one or more of the following: identify of the user, a home location of the user, information about the client device, information about the network application, information about an entity associated with the user.

15. The system of claim 11 , wherein the client application is further configured to communicate the context of the user to the cloud discovery service.

16. The system of claim 11 , wherein the client application is further configured to communicate a second request to resolve the URL to the location via a proxy domain of the cloud discovery service.

17. The system of claim 11 , wherein the client application is further configured to communicate a second request to resolve the URL to the location via an application programming interface (API) call to the cloud discovery service.

18. The system of claim 11 , wherein the URL corresponds to the network application.

19. The system of claim 11 , wherein the client application is further configured to receive the location selected from the plurality of locations corresponding to multiple points of presence of the network application.

20. The system of claim 11 , wherein the client application is further configured to receive the location selected from the plurality of locations as the location performing better than other locations of the plurality of locations.

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 Mar 7, 2019
From: CHAUHAN, ABHISHEK
To: CITRIX SYSTEMS, INC.
Reel/Frame 048527/0568 →
Continuity (1)
Related Publication 20200084284A1 · Mar 12, 2020
Cited By (1)
US 12,238,101