IP Library Granted Patent US 10,565,013
Granted Patent B1
US 10,565,013 · App. 15/722,533 · Granted Feb 18, 2020

Task processing utilizing queues

Inventor: Jason Daniel Petit (Rochester, IL)
Assignee: ALLSCRIPTS SOFTWARE, LLC
G06F9/50G06F19/00G06Q10/06311G06Q10/063114G06Q50/00G06Q50/22H04L43/00H04L43/103H04L47/70H04L63/10
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,565,013
App. No.
15/722,533
Granted
Feb 18, 2020
Kind
B1
Abstract

A system includes a plurality of queues configured to hold tasks and state information associated with such tasks. The system further includes a plurality of listeners configured to query one of the plurality of queues for a task, receive, in response to querying one of the plurality of queues for a task, a task together with state information associated with the task, effect processing of the received task, and communicate a result of the received task to another queue of the plurality of queues, the another queue of the plurality of queues being selected based on the processing of the received task.

Claims (48)

1. A method comprising:

(a) polling, by a first queue listener loaded on a first server, a first queue;

(b) receiving, at the first queue listener loaded on the first server in response to the polling by the first queue listener of the first queue, a first task and state information associated with the first task;

(c) executing, at the first server, the first task utilizing the state information associated with the first task;

(d) communicating, from the first server to a second queue, a first result of the first task, the first result including state information associated with the first task;

(e) polling, by a second queue listener loaded on a second server, the second queue;

(f) receiving, at the second queue listener loaded on the second server in response to the polling by the second queue listener of the second queue, a second task based on the first result communicated from the first server to the second queue, together with state information associated with the second task that is based on the state information included in the first result;

(g) executing, at the second server, the second task utilizing the state information associated with the second task;

(h) communicating, from the second server to a third queue, a second result of the second task, the second result including state information associated with the second task;

(i) polling, by a third queue listener loaded on a third server, the third queue;

(j) receiving, at the third queue listener loaded on the third server in response to the polling by the third queue listener of the third queue, a third task based on the second result communicated from the second server to the third queue, together with state information associated with the third task that is based on the state information included in the second result;

(k) executing, at the third server, the third task utilizing the state information associated with the third task; and

(l) communicating, from the third server to a fourth queue, a third result of the third task.

2. The method of claim 1 , wherein the first server comprises an electronic device.

3. The method of claim 1 , wherein the first server comprises one or more electronic devices.

4. The method of claim 1 , wherein the second server comprises an electronic device.

5. The method of claim 1 , wherein the second server comprises one or more electronic devices.

6. The method of claim 1 , wherein the third server comprises an electronic device.

7. The method of claim 1 , wherein the third server comprises one or more electronic devices.

8. The method of claim 1 , wherein the method further comprises communicating a confirmation of completion of the first task.

9. The method of claim 1 , wherein the method further comprises displaying, at a display associated with an electronic device, information to a user based on the third result.

10. The method of claim 1 , wherein the method further comprises displaying, at a display associated with an electronic device, a notification to a user based on the third result.

11. The method of claim 1 , wherein the method further comprises displaying, at a display associated with an electronic device, a notification associated with a patient health care order to a user based on the third result.

12. The method of claim 1 , wherein the method further comprises displaying, at a display associated with an electronic device, a notification of a rule violation of a patient health care order to a user based on the third result.

13. The method of claim 1 , wherein the method further comprises displaying, at a display associated with an electronic device, a notification associated with a patient health care order to a user.

14. The method of claim 1 , wherein the method further comprises displaying, at a display associated with an electronic device, a notification of a rule violation of a patient health care order to a user.

15. The method of claim 1 , wherein executing, at the third server, the third task utilizing the state information associated with the third task comprises determining whether a rule of a health care order has been violated.

16. The method of claim 1 , wherein executing, at the third server, the third task utilizing the state information associated with the third task comprises effecting communication of a notification.

17. The method of claim 1 , wherein executing, at the third server, the third task utilizing the state information associated with the third task comprises effecting communication of a notification that a rule of a health care order has been violated.

18. The method of claim 1 , wherein executing, at the third server, the third task utilizing the state information associated with the third task comprises effecting communication of a notification that a patient is non-compliant with a health care order.

19. A method comprising:

(a) polling, by a first queue listener loaded on a first server, a first queue;

(b) receiving, at the first queue listener loaded on the first server in response to the polling by the first queue listener of the first queue, a first task and state information associated with the first task;

(c) executing, at the first server, the first task utilizing the state information associated with the first task;

(d) communicating, from the first server to a second queue, a first result of the first task, the first result including state information associated with the first task;

(e) polling, by a second queue listener loaded on a second server, the second queue;

(f) receiving, at the second queue listener loaded on the second server in response to the polling by the second queue listener of the second queue, a second task based on the first result communicated from the first server to the second queue, together with state information associated with the second task that is based on the state information included in the first result;

(g) executing, at the second server, the second task utilizing the state information associated with the second task; and

(h) communicating, from the second server, a result of the second task.

20. A non-transitory computer readable medium containing computer executable instructions for performing a method comprising:

(a) polling, by a first queue listener loaded on a first server, a first queue;

(b) receiving, at the first queue listener loaded on the first server in response to the polling by the first queue listener of the first queue, a first task and state information associated with the first task;

(c) executing, at the first server, the first task utilizing the state information associated with the first task;

(d) communicating, from the first server to a second queue, a first result of the first task, the first result including state information associated with the first task;

(e) polling, by a second queue listener loaded on a second server, the second queue;

(f) receiving, at the second queue listener loaded on the second server in response to the polling by the second queue listener of the second queue, a second task based on the first result communicated from the first server to the second queue, together with state information associated with the second task that is based on the state information included in the first result;

(g) executing, at the second server, the second task utilizing the state information associated with the second task; and

(h) communicating, from the second server, a result of the second task.

Assignments (2)
GRANT OF SECURITY INTEREST IN PATENT RIGHTS Recorded May 16, 2022
From: ALLSCRIPTS SOFTWARE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 060073/0613 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 19, 2019
From: PETIT, JASON DANIEL
To: ALLSCRIPTS SOFTWARE, LLC
Reel/Frame 049527/0094 →
Continuity (4)
Continuation 14942596 · Nov 16, 2015
Continuation 14320309 · Jun 30, 2014
Provisional Application 61943424 · Feb 23, 2014
Provisional Application 61943375 · Feb 22, 2014