Long running workflows for robotic process automation
Systems and methods for executing a robotic process automation (RPA) workflow are provided. The RPA workflow is executed by a first robot. The execution of the RPA workflow is suspended by the first robot. A current context of the RPA workflow is serialized at a time of the suspension and the current context of the RPA workflow is stored. The execution of the RPA workflow is resumed by a second robot based on a triggering condition by retrieving the current context of the RPA workflow. The first robot and the second robot may be the same robot or different robots.
1. A computer-implemented method for executing a robotic process automation (RPA) workflow comprising:
executing the RPA workflow by a first robot;
suspending the execution of the RPA workflow by the first robot by storing a current context of the RPA workflow at a time of the suspending; and
resuming the execution of the RPA workflow by a second robot based on a triggering condition by retrieving the current context of the RPA workflow.
2. The computer-implemented method of claim 1 , wherein the triggering condition comprises completion of another RPA workflow.
3. The computer-implemented method of claim 1 , wherein the RPA workflow comprises a robot activity and a user activity.
4. The computer-implemented method of claim 3 , further comprising:
generating a user request requesting user input for the user activity; and
transmitting the user request to a user.
5. The computer-implemented method of claim 4 , wherein the triggering condition comprises receipt of the user input for the user activity from the user.
6. The computer-implemented method of claim 3 , further comprising:
transmitting a notification to a user indicating that user input for the user activity is requested.
7. The computer-implemented method of claim 3 , wherein the user activity comprises at least one of a validation activity or an approval activity.
8. The computer-implemented method of claim 1 , further comprising:
maintaining a log recording states of the RPA workflow.
9. The computer-implemented method of claim 1 , wherein the first robot and the second robot are the same robot.
10. The computer-implemented method of claim 1 , wherein the first robot and the second robot are different robots.
11. The computer-implemented method of claim 1 , wherein the executing, the suspending, and the resuming are performed by one or more computing devices implemented in a cloud computing system.
12. A system for executing a robotic process automation (RPA) workflow comprising:
a memory storing computer instructions; and
at least one processor configured to execute the computer instructions, the computer instructions configured to cause the at least one processor to perform operations of:
executing the RPA workflow by a first robot;
suspending the execution of the RPA workflow by the first robot by storing a current context of the RPA workflow at a time of the suspending; and
resuming the execution of the RPA workflow by a second robot based on a triggering condition by retrieving the current context of the RPA workflow.
13. The system of claim 12 , wherein the triggering condition comprises completion of another RPA workflow.
14. The system of claim 12 , wherein the RPA workflow comprises a robot activity and a user activity.
15. The system of claim 14 , the operations further comprising:
generating a user request requesting user input for the user activity; and
transmitting the user request to a user.
16. The system of claim 15 , wherein the triggering condition comprises receipt of the user input for the user activity from the user.
17. The system of claim 14 , the operations further comprising:
transmitting a notification to a user indicating that user input for the user activity is requested.
18. The system of claim 14 , wherein the user activity comprises at least one of a validation activity or an approval activity.
19. The system of claim 12 , the operations further comprising:
maintaining a log recording states of the RPA workflow.
20. The system of claim 12 , wherein the first robot and the second robot are the same robot.
21. The system of claim 12 , wherein the first robot and the second robot are different robots.
22. The system of claim 12 , wherein the system is implemented in a cloud computing system.
23. A non-transitory computer-readable medium storing computer program instructions for executing a robotic process automation (RPA) workflow, the computer program instructions when executed by at least one processor cause the at least one processor to perform operations comprising:
executing the RPA workflow by a first robot;
suspending the execution of the RPA workflow by the first robot by storing a current context of the RPA workflow at a time of the suspending; and
resuming the execution of the RPA workflow by a second robot based on a triggering condition by retrieving the current context of the RPA workflow.
24. The non-transitory computer-readable medium of claim 23 , wherein the triggering condition comprises completion of another RPA workflow.
25. The non-transitory computer-readable medium of claim 23 , wherein the RPA workflow comprises a robot activity and a user activity.
26. The non-transitory computer-readable medium of claim 25 , the operations further comprising:
generating a user request requesting user input for the user activity; and
transmitting the user request to a user.
27. The non-transitory computer-readable medium of claim 26 , wherein the triggering condition comprises receipt of the user input for the user activity from the user.
28. The non-transitory computer-readable medium of claim 25 , the operations further comprising:
transmitting a notification to a user indicating that user input for the user activity is requested.
29. The non-transitory computer-readable medium of claim 25 , wherein the user activity comprises at least one of a validation activity or an approval activity.
30. The non-transitory computer-readable medium of claim 23 , the operations further comprising:
maintaining a log recording states of the RPA workflow.
31. The non-transitory computer-readable medium of claim 23 , wherein the first robot and the second robot are the same robot.
32. The non-transitory computer-readable medium of claim 23 , wherein the first robot and the second robot are different robots.
33. The non-transitory computer-readable medium of claim 23 , wherein the at least one processor is implemented in one or more computing devices and the one or more computing devices are implemented in a cloud computing system.