IP Library Granted Patent US 10,826,861
Granted Patent B1
US 10,826,861 · App. 15/878,581 · Granted Nov 3, 2020

System and method for managing notifications from published applications

Inventors: Marco Borg (Sliema, MT); Nikolay Dobrovolskiy (Moscow, RU); Serguei M. Beloussov (Costa Del Sol, SG)
Assignee: Parallels International GmbH
H04L51/24H04L67/26H04L67/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,826,861
App. No.
15/878,581
Granted
Nov 3, 2020
Kind
B1
Abstract

Disclosed are systems and methods for managing notifications from published applications. The described system provides a remote application server that listens for notifications from one or more published applications launched by a user at a client device, detects a notification from the one or more published applications, forms an intercepted notification packet containing information from the notification, determines whether the client device has enabled polling and adding the notification packet to a queue of notifications when polling is enabled, pushes the queue of notifications when a polling request is received from the client device; and pushes the intercepted notification packet when polling is not enabled. The described system further includes.

Claims (65)

1. A method for managing notifications from published applications, comprising:

listening, at a remote application server, for notifications from one or more published applications launched by a user at a client device;

detecting a notification from the one or more published applications;

forming an intercepted notification packet containing information from the notification;

determining whether the client device has enabled polling and adding the intercepted notification packet to a queue of notifications when polling is enabled;

pushing the queue of notifications when a polling request is received from the client device; and

pushing the intercepted notification packet when polling is not enabled.

2. The method of claim 1 , further comprising:

determining whether a virtual channel with the client device exists, and

creating the virtual channel with the client device when the virtual channel does not exist.

3. The method of claim 2 , further comprising:

storing notifications from the published application in a database; and

sending the notification to the user using a delivery other than the virtual channel between the remote application server and the client device.

4. The method of claim 3 , wherein the delivery of the notification is an email address of the user.

5. The method of claim 1 , wherein the intercepted notification packet is pushed to the client device over an remote desktop protocol (RDP) virtual channel.

6. The method of claim 1 , wherein the one or more published application are launched using a terminal session from the client device.

7. The method of claim 1 , wherein the one or more published application are launched using a web browser.

8. The method of claim 1 , further comprising:

sending administrative messages from the remote application server using the intercepted notification packet.

9. A method for receiving native notifications, comprising:

submitting a polling request to a remote application server when polling is enabled;

receiving, at a client device, a notification packet from the remote application server, wherein a terminal session is established between the client device and the remote application server;

extract notification type information from the notification packet;

creating a native notification based on the notification type information and client device information; and

pushing the native notification to a local operating system of the client device.

10. The method of claim 9 , wherein the native notification is one of a TOAST notification and an Action Center notification.

11. The method of claim 9 , further comprising:

receiving a request to enable notifications from the remote application server;

creating a native notification using a web notifications API based on the notification packet;

displaying the native notification to a user at the client device while the web browser is one or more of minimized, closed or in a background.

12. The method of claim 11 , further comprising:

making a native API call to create the native notification and display the native notification.

13. A system comprising:

a remote application server comprising:

a hardware processor; and

memory, coupled to the hardware processor, comprising computer-executable instructions that when executed by the hardware processor causes the remote application server to:

listen for notifications from one or more published applications launched by a user at a client device;

detect a notification from the one or more published applications;

form an intercepted notification packet containing information from the notification;

determine whether the client device has enabled polling and adding the intercepted notification packet to a queue of notifications when polling is enabled;

push the queue of notifications when a polling request is received from the client device; and

push the intercepted notification packet when polling is not enabled; and

the client device comprising:

a hardware processor; and

memory, coupled to the hardware processor, comprising computer-executable instructions that when executed by the hardware processor, causes the client device to:

receive the intercepted notification packet from the remote application server, wherein a terminal session is established between the client device and the remote application server;

extract notification type information from the intercepted notification packet;

create a native notification; and

pushing the native notification to a local operating system of the client device.

14. The system of claim 13 , wherein the instructions executed by the remote application server further comprise:

determining whether a virtual channel with the client device exists, and

creating the virtual channel with the client device when the virtual channel does not exist.

15. The system of claim 14 , wherein the instructions executed by the remote application server further comprise:

storing notifications from the published application in a database; and

sending the notification to the user using a delivery method other than the virtual channel between the remote application server and the client device.

16. The system of claim 15 , wherein the delivery method of the notification is an email address of the user.

17. The system of claim 13 , wherein the intercepted notification packet is pushed to the client device over an remote desktop protocol (RDP) virtual channel.

18. The system of claim 13 , wherein the native notification is one of a TOAST notification and an Action Center notification.

19. The system of claim 13 , wherein the instructions executed on the client device further comprise:

receiving a request to enable notifications from the remote application server;

creating a native notification using a web notifications API based on the intercepted notification packet;

displaying the native notification to a user at the client device while the web browser is one or more of minimized, closed or in a background.

20. The system of claim 19 , wherein the instructions executed on the client device further comprise:

making a native API call to create the native notification and display the native notification.

21. A non-transitory computer-readable medium with instructions stored thereon that when executed perform a method for managing notifications from published applications, the method comprising: listening, at a remote application server, for notifications from one or more published applications launched by a user at a client device; detecting a notification from the one or more published applications; forming an intercepted notification packet containing information from the notification; determining whether the client device has enabled polling and adding the intercepted notification packet to a queue of notifications when polling is enabled; pushing the queue of notifications when a polling request is received from the client device; and pushing the intercepted notification packet when polling is not enabled.

Assignments (4)
RELEASE OF SECURITY INTEREST Recorded Jul 18, 2019
From: UBS AG, STAMFORD BRANCH, AS ADMINISTRATIVE AND COLLATERAL AGENT
To: COREL CORPORATION; CLEARSLIDE, INC.; PARALLELS INTERNATIONAL GMBH
Reel/Frame 049787/0073 →
RELEASE OF SECURITY INTEREST RECORDED AT : REEL 047973 FRAME 0797 Recorded Jul 17, 2019
From: UBS AG, STAMFORD BRANCH
To: PARALLELS INTERNATIONAL GMBH
Reel/Frame 049773/0590 →
SECURITY INTEREST Recorded Dec 21, 2018
From: PARALLELS INTERNATIONAL GMBH
To: UBS AG, STAMFORD BRANCH
Reel/Frame 047973/0797 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2018
From: BORG, MARCO; DOBROVOLSKIY, NIKOLAY; BELOUSSOV, SERGUEI M
To: PARALLELS INTERNATIONAL GMBH
Reel/Frame 044712/0349 →
Cited By (4)
US 12,278,795 US 12,278,852 US 12,289,308 US 12,316,697