IP Library › Granted Patent US 12,190,135
Granted Patent B2
US 12,190,135 · App. 17/643,741 · Granted Jan 7, 2025

On-demand cloud robots for robotic process automation

Inventors: Tarek Madkour (Sammamish, WA); Bo-Ying Fu (Edmonds, WA); Andrew Hall (Charlottesville, VA)
Assignee: UiPath, Inc.
G06F9/452G06F9/45558G06F2009/45562G06F2009/45595
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 12,190,135
App. No.
17/643,741
Granted
Jan 7, 2025
Kind
B2
Abstract

Systems and methods for implementing robotic process automation (RPA) in the cloud are provided. An instruction for managing an RPA robot is received at an orchestrator in a cloud computing environment from a user in a local computing environment. In response to receiving the instruction, the instruction for managing the RPA robot is effectuated.

Claims (55)

1. A computer-implemented method comprising:

receiving, at an orchestrator in a cloud computing environment from a user in a local computing environment, a command for executing a job for performing a robotic process automation (RPA) workflow in the cloud computing environment, the command comprising an instruction for managing an RPA robot;

in response to receiving the command for executing the job, effectuating the instruction for managing the RPA robot;

performing a task by the RPA robot executing in the cloud computing environment; and

transmitting results of the task from the RPA robot executing in the cloud computing environment to the user in the local computing environment.

2. The computer-implemented method of claim 1 , wherein the instruction for managing the RPA robot comprises an instruction for creating the RPA robot, the method further comprising:

generating an image of a virtual machine; and

creating one or more new virtual machines for executing the RPA robot on based on the image.

3. The computer-implemented method of claim 2 , wherein the virtual machine is configured by the user via remote desktop protocol.

4. The computer-implemented method of claim 2 , wherein the virtual machine is configured with a virtual private network to enable the RPA robot to access data behind a firewall of a local network in the local computing environment.

5. The computer-implemented method of claim 4 , wherein creating one or more new virtual machines for executing the RPA robot on based on the image comprises:

automatically creating the one or more new virtual machines based on a workload.

6. The computer-implemented method of claim 1 , wherein the RPA robot is part of a robot pool, the method further comprising:

automatically updating RPA robots of the robot pool during a maintenance window, wherein the RPA robots are automatically set to not accept new jobs during the maintenance window.

7. The computer-implemented method of claim 6 , wherein automatically updating RPA robots of the robot pool during a maintenance window comprises:

during a first period of time of the maintenance window, automatically updating a first portion of the RPA robots of the robot pool while a second portion of the RPA robots of the robot pool continues to accept jobs; and

in response to the updating of the first portion being completed, during a second period of time of the maintenance window, automatically updating the second portion of the RPA robots while the first portion of the RPA robots accepts jobs.

8. A cloud computing environment comprising:

a processor;

a memory;

a cloud orchestrator executing in the cloud computing environment for:

receiving, from a user in a local computing environment, a command for executing a job for performing a robotic process automation (RPA) workflow in the cloud computing environment, the command comprising an instruction for managing one or more RPA robots, and

in response to receiving the command for executing the job, effectuating the instruction for managing the RPA robot; and

a cloud robot pool comprising the one or more RPA robots for:

performing a task in the cloud computing environment for the user in the local computing environment, and

transmitting results of the task from the one or more RPA robots executing in the cloud computing environment to the user in the local computing environment.

9. The cloud computing environment of claim 8 , wherein the instruction for managing the one or more RPA robots comprises an instruction for creating the one or more RPA robots, the cloud orchestrator further for:

generating an image of a virtual machine; and

creating one or more new virtual machines for executing the one or more RPA robots on based on the image.

10. The cloud computing environment of claim 9 , wherein the virtual machine is configured by the user via remote desktop protocol.

11. The cloud computing environment of claim 9 , wherein the virtual machine is configured with a virtual private network to enable the one or more RPA robots to access data behind a firewall of a local network in the local computing environment.

12. The cloud computing environment of claim 11 , wherein creating one or more new virtual machines for executing the one or more RPA robots on based on the image comprises:

automatically creating the one or more new virtual machines based on a workload.

13. The cloud computing environment of claim 8 , the cloud orchestrator further for:

automatically updating the one or more RPA robots of the cloud robot pool during a maintenance window, wherein the one or more RPA robots are automatically set to not accept new jobs during the maintenance window.

14. The cloud computing environment of claim 13 , wherein automatically updating the one or more RPA robots of the cloud robot pool during a maintenance window comprises:

during a first period of time of the maintenance window, automatically updating a first portion of the one or more RPA robots of the cloud robot pool while a second portion of the one or more RPA robots of the cloud robot pool continues to accept jobs; and

in response to the updating of the first portion being completed, during a second period of time of the maintenance window, automatically updating the second portion of the one or more RPA robots while the first portion of the one or more RPA robots accepts jobs.

15. A computer-implemented method comprising:

maintaining a cloud robot pool comprising one or more robotic process automation (RPA) robots in a cloud computing environment, the one or more RPA robots performing a task in the cloud computing environment for a user in a local computing environment and transmitting results of the task from the one or more RPA robots executing in the cloud computing environment to the user in the local computing environment; and

managing the cloud robot pool using a cloud orchestrator implemented in the cloud computing environment, the cloud orchestrator:

receiving, from a user in a local computing environment, a command for executing a job for performing an RPA workflow in the cloud computing environment, the command comprising an instruction for managing the one or more RPA robots, and

in response to receiving the command for executing the job, effectuating the instruction for managing the one or more RPA robots.

16. The computer-implemented method of claim 15 , wherein the instruction for managing the one or more RPA robots comprises an instruction for creating one or more additional RPA robots, the cloud orchestrator further:

generating an image of a virtual machine; and

creating one or more new virtual machines for executing the one or more additional RPA robots on based on the image.

17. The computer-implemented method of claim 16 , wherein the virtual machine is configured by the user via remote desktop protocol.

18. The computer-implemented method of claim 16 , wherein the virtual machine is configured with a virtual private network to enable the one or more RPA robots to access data behind a firewall of a local network in the local computing environment.

19. The computer-implemented method of claim 18 , wherein creating one or more new virtual machines for executing the one or more additional RPA robots on based on the image comprises:

automatically creating the one or more new virtual machines based on a workload.

20. The computer-implemented method of claim 15 , the orchestrator further:

automatically updating the one or more RPA robots of the cloud robot pool during a maintenance window, wherein the one or more RPA robots are automatically set to not accept new jobs during the maintenance window.

21. The computer-implemented method of claim 20 , wherein automatically updating the one or more RPA robots of the cloud robot pool during a maintenance window comprises:

during a first period of time of the maintenance window, automatically updating a first portion of the one or more RPA robots of the cloud robot pool while a second portion of the one or more RPA robots of the cloud robot pool continues to accept jobs; and

in response to the updating of the first portion being completed, during a second period of time of the maintenance window, automatically updating the second portion of the one or more RPA robots while the first portion of the one or more RPA robots accepts jobs.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 10, 2021
From: MADKOUR, TAREK; FU, BO-YING; HALL, ANDREW
To: UIPATH, INC.
Reel/Frame 058363/0631 →
Continuity (2)
Continuation In Part 16725706 · Dec 23, 2019
Related Publication 20220100539A1 · Mar 31, 2022
References Cited (57)
US 7861252B2 · Uszok et al. · 2010 [cited by applicant]
US 8793684B2 · Breitgand et al. · 2014 [cited by applicant]
US 9876676B1 · Sandham · 2018 [cited by applicant]
US 10042657B1 · Lauinger et al. · 2018 [cited by applicant]
US 10248445B2 · Khandekar et al. · 2019 [cited by applicant]
US 10264058B1 · Auinger et al. · 2019 [cited by applicant]
US 10564946B1 · Wagner et al. · 2020 [cited by applicant]
US 10860905B1 · Gligan et al. · 2020 [cited by applicant]
US 10931741B1 · Liguori et al. · 2021 [cited by applicant]
US 11032164B1 · Rothschild et al. · 2021 [cited by applicant]
US 11354164B1 · Dennis et al. · 2022 [cited by applicant]
US 20050246353A1 · Ezer et al. · 2005 [cited by applicant]
US 20100153482A1 · Kim et al. · 2010 [cited by applicant]
US 20100299366A1 · Stienhans et al. · 2010 [cited by applicant]
US 20120260118A1 · Jiang et al. · 2012 [cited by applicant]
US 20120266168A1 · Spivak et al. · 2012 [cited by applicant]
US 20150081885A1 · Thomas et al. · 2015 [cited by applicant]
US 20160294643A1 · Kim · 2016 [cited by applicant]
US 20170199770A1 · Peteva et al. · 2017 [cited by applicant]
US 20180089698A1 · Campana et al. · 2018 [cited by applicant]
US 20180096284A1 · Stets et al. · 2018 [cited by applicant]
US 20180189093A1 · Agarwal et al. · 2018 [cited by applicant]
US 20180203994A1 · Shukla et al. · 2018 [cited by applicant]
US 20180304471A1 · Tokuchi · 2018 [cited by applicant]
US 20180341527A1 · Ikkaku et al. · 2018 [cited by applicant]
US 20190155225A1 · Kothandaraman et al. · 2019 [cited by applicant]
US 20190286474A1 · Sturtivant · 2019 [cited by applicant]
US 20190303779A1 · Van Briggle et al. · 2019 [cited by applicant]
US 20200151650A1 · Rhodes et al. · 2020 [cited by applicant]
US 20200341852A1 · Chopra et al. · 2020 [cited by applicant]
US 20200348964A1 · Anand et al. · 2020 [cited by applicant]
US 20200364083A1 · Walby et al. · 2020 [cited by applicant]
US 20210073034A1 · Bliesner et al. · 2021 [cited by applicant]
US 20220300336A1 · Major et al. · 2022 [cited by applicant]
CN 109636504A · 2019 [cited by applicant]
JP 2018176387A · 2018 [cited by applicant]
JP 2019074889A · 2019 [cited by applicant]
“AutomationEdge RPA on Cloud,” retrieved online on Dec. 6, 2019, at https://automationedge.com/product/rpa-on-cloud/, 5 pgs. [cited by applicant]
“RPA as a Service,” Jul. 25, 2019, retrieved online on Dec. 6, 2019, at https://www.lateetud.com/blogs/rpa-as-a-service-, 5 pgs. [cited by applicant]
Zullo et al., “Robotics (RPA) as a Service,” Jun. 11, 2019, at https://www.eisneramper.com/robotics-rpa-cloud-computing-prts-0619/, 4 pgs. [cited by applicant]
“A Virtual Workforce in One Intelligent Automation Product,” retrieved online on Dec. 6, 2019, at https://thoughtonomy.com/intelligent-automation, 7 pgs. [cited by applicant]
International Search Report and Written Opinion mailed Dec. 22, 2020, in connection with International Patent Application No. PCT/US2020/049300, filed Sep. 4, 2020, 10 pgs. [cited by applicant]
“Automation Edge Industry's First RPA On Cloud Solution,” screenshots from video posted on https://www.youtube.com/watch?v=u_d2SXf2Mjl&feature=emb_logo, Jul. 18, 2019. [cited by applicant]
“Blue Prism Azure Trial,” retrieved online on Apr. 16, 2020, from https://digitalexchange.blueprism.com/dx/entry/3439/solution/blue-prism-on-azure-marketplace, 5 Pgs. [cited by applicant]
“CloudShell Pro Overview,” retrieved online on Apr. 16, 2020, from https://info.quali.com/hubfs/CloudShell%20Pro%20Datasheet.pdf, 2 pgs. [cited by applicant]
“Quali Joins Google Cloud Partnership Ecosystem,” retrieved online on Dec. 10, 2019 from https://www.prweb com/releases/quali_joins_google_cloud_partnership_ecosystem/prweb16749139.htm, 2 pgs. [cited by applicant]
“Virsoft Solution Demo as a Service”, Aug. 30, 2012, screenshots from video posted on https://www.youtube.com/watch?v=ISfwkgKQ9z4, 58 pgs. [cited by applicant]
VIRSOFT.net, “Demo as a Service,” retrieved online on Apr. 16, 2020 from https://virsoft.sharepoint.com/Documents/Virsoft%20Datasheet%20for%20web.pdf, 2 pgs. [cited by applicant]
“Robotic Process Automation (RPA) : Cloud Vs On-Premises”, 2019, XP055887589, Retrieved online on Feb. 4, 2022, from: https://digitalworkforce.com/rpa-news/robotic-process-automation-cloud-vs-premis es/, 5 pgs. [cited by applicant]
“Scaling RPA—Best Technological Practices to Scale RPA,” 2019, XP055887671, Retrieved online on Feb. 4, 2022, from: https://digitalworkforce.com/rpa-news/scaling-rpa-best-technological-practices-to-scale-enterprise-robo… [cited by applicant]
Extended European Search Report mailed Feb. 16, 2022, in connection with European Patent Application No. 20808274.3, filed Sep. 4, 2020, 10 pgs. [cited by applicant]
Extended European Search Report mailed May 6, 2022, in connection with European Patent Application No. 21215084.1, 10 pgs. [cited by applicant]
Non-Final Office Action mailed Feb. 14, 2023 in connection with U.S. Appl. No. 17/655,177, 12 pgs. [cited by applicant]
Non-Final Office Action mailed Dec. 6, 2023 in connection with U.S. Appl. No. 17/247,669, filed Dec. 18, 2020, 16 pgs. [cited by applicant]
Final Office Action mailed Jul. 16, 2024, in connection with U.S. Appl. No. 17/247,669, filed Dec. 18, 2020, 15 pgs. [cited by applicant]
Shindo Keiji, The Easiest RPA Textbook, Impress Corporation, 2019, 6 pgs. (including translation). [cited by applicant]
Notice of Reasons for Refusal mailed Sep. 25, 2024 in connection with Japanese Patent Application No. 2020-564879, 13 pgs. (including translation). [cited by applicant]