IP Library › Granted Patent US 10,908,785
Granted Patent B2
US 10,908,785 · App. 16/182,191 · Granted Feb 2, 2021

Systems and methods for SaaS overlays using an embedded browser

Inventors: Vipin Borkar (Bengaluru, IN); Santosh Sampath (Bengaluru, IN); Deepak Sharma (Bengaluru, IN); Arvind SankaraSubramanian (Bengaluru, IN)
Assignee: Citrix Systems, Inc
G06F3/0483H04L67/22H04L67/42
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,908,785
App. No.
16/182,191
Granted
Feb 2, 2021
Kind
B2
Abstract

Embodiments described include systems and methods for displaying overlays for a network application. A client application on a client device can establish a session to a network application accessed via an embedded browser of the client application. The embedded browser of the client application may receive and display a web page of the network application. Based on one or more conditions and/or policies, the client application may identify and display overlay content over the web page in the embedded browser. The overlay content may include, but is not limited to, training videos, tutorials, social options (e.g., emoticons, likes), form help text, form autofill suggestions, and/or navigation assistance. Once the overlay content is presented, feedback can be received in order to modify the subsequent overlays.

Claims (30)

1. A method for displaying one or more overlays for a network application accessed via an embedded browser of a client application, the method comprising:

(a) establishing, by a client application on a client device, one or more sessions to one or more network applications accessed via an embedded browser of the client application, the client application maintaining a plurality of overlays;

(b) receiving, by the embedded browser of the client application, a web page of a network application of the one or more network applications;

(c) identifying, by the client application, from the plurality of overlays based at least on the network application, one or more overlays of the client application to be displayed over the web page of the network application in the embedded browser; and

(d) displaying, by the client application, the one or more overlays over the web page in the embedded browser.

2. The method of claim 1 , wherein the embedded browser is integrated into the client application.

3. The method of claim 1 , wherein the network application comprises an application hosted on a server accessed by the client device via a network, and wherein an entity of the server is different from an entity of the client device.

4. The method of claim 1 , wherein (b) further comprises identifying a form of the web page and wherein (c) further comprises identifying the one or more overlays of the client application based on the form of the webpage of the network application.

5. The method of claim 1 , wherein the one or more overlays comprises a navigation element prompting the user to interact with a portion of the web page.

6. The method of claim 1 , wherein (c) further comprises identifying the one or more overlays of the client application based on a policy for the network application.

7. The method of claim 1 , wherein (d) further comprising displaying, by the embedded browser, the one or more overlays.

8. The method of claim 1 , wherein the one or more overlays are provided to the client application via a second entity different from an entity of a server hosting the network application.

9. The method of claim 1 , further comprising (e) maintaining, by the client application in a data structure, statistics relating to the display of the one or more overlays over the web page in the embedded browser.

10. The method of claim 9 , further comprising (f) transmitting, by the client application, the statistics relating to the display of the one or more overlays to a second entity different from an entity of a server hosting the network application, the statistics used by the second entity to inform i) a provider of the network application to update the network application based on the statistics received from a plurality of client applications including the client application or ii) an entity generating the overlays to update one or more overlays based on the statistics received from a plurality of client applications including the client application.

11. A system for displaying one or more overlays for a network application accessed via an embedded browser of a client application, the system comprising:

a client application on a client device in communication with a first server of a first entity, via an embedded browser of the client application, the client application maintaining a plurality of overlays, and the client application configured to:

establish one or more sessions to one or more network applications accessed via an embedded browser of the client application;

receive, by the embedded browser of the client application, a web page of a network application of the one or more network applications;

identify, from the plurality of overlays based at least on the network application, one or more overlays of the client application to be displayed over the web page in the embedded browser; and

display the one or more overlays over the web page in the embedded browser.

12. The system of claim 11 , wherein the embedded browser is integrated into the client application.

13. The system of claim 11 , wherein the network application comprises an application hosted on a server accessed by the client device via a network, and wherein an entity of the server is different from an entity of the client device.

14. The system of claim 11 , wherein to identify based at least on the network application, one or more overlays of the client application to be displayed over the web page in the embedded browser, the client application is further configured to identify a form of the web page; and

wherein to identify a form of the web page, the client application is further configured to the one or more overlays of the client application based on the form of the webpage of the network application.

15. The system of claim 11 , wherein the one or more overlays comprises a navigation element prompting the user to interact with a portion of the web page.

16. The system of claim 11 , wherein to identify based at least on the network application, one or more overlays of the client application to be displayed over the web page in the embedded browser, the client application is further configured to identify the one or more overlays of the client application based on a policy for the network application.

17. The system of claim 11 , wherein to display the one or more overlays over the web page in the embedded browser the client application is further configured to display, by the embedded browser, the one or more overlays.

18. The system of claim 11 , wherein the one or more overlays are provided to the client application via a second entity different from an entity of a server hosting the network application.

19. The system of claim 11 , wherein the client application is further configured to maintain in a data structure, statistics relating to the display of the one or more overlays over the web page in the embedded browser.

20. The system of claim 19 , wherein the client application further configured to transmit the statistics relating to the display of the one or more overlays to a second entity different from an entity of a server hosting the network application, the statistics used by the second entity to inform i) a provider of the network application to update the network application based on the statistics received from a plurality of client applications including the client application or ii) an entity generating the overlays to update one or more overlays based on the statistics received from a plurality of client applications including the client 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 Nov 19, 2018
From: BORKAR, VIPIN; SAMPATH, SANTOSH; SHARMA, DEEPAK; SANKARASUBRAMANIAN, ARVIND
To: CITRIX SYSTEMS, INC.
Reel/Frame 047536/0572 →
Continuity (1)
Related Publication 20200142552A1 · May 7, 2020
Cited By (4)
US 12,407,730 US 12,413,624 US 12,445,493 US 12,452,306