I want to know how can I schedule a robot. (We don’t want to use nodered for scheduling)
I read this Scheduling Robot documention and understood windows scheduler is best option I tried to schedule openrpa.exe but suppose I have multiple workflows how can I schedule them separately
It’s not scheduling per se, but openflow workitem queues can activate a robot when new items get added. But besides that, only other clients can activate a robot (if they have the right permission) most commonly that would be nodered or other robots.
So if a robot is not connected to an openflow, you can only run workflows by calling the .exe or using power shell. Calling the .exe is NOT the best option, power shell is, since here you can also get the result back. If you call the .exe it will check if openrpa is already running, and if it is, it “sends” the command line parameters to the already running instance and closes down, so also here, its better to use power shell that uses a named pipe to talk to openrpa and start’s it, if it’s not running.
Generally all the above is a bad idea, the best way to do this, if you refuse to use openflow, is to create a state machine or flow diagram with a delay activity that wakes up once in a while and check if it needs to do some work.
So pick one of the options from the link you found, depending on what makes the most sense for you. There is no right or wrong solution, but there are solutions that is more resilient and easier to monitor and troubleshoot than others, but you should always pick what fits your use case best.
I understand why you’re saying to use powershell and not .exe. But we’ve almost 30-40 scripts which we will convert to individual robots and they might run in parallel or in different intervals. Correct me if I’m wrong, what I understood of using power shell is I’ll have to run these scripts manually using ‘Invoke-OpenRPA -Filename ‘SDEMO\AddRobotTag.xaml’’ command for each robot(workflow). This will add extra manual task which we want to eliminate. That is the reason we want to schedule these robots that will run automatically.
Also, we will be using openFlow so is there any better way to achieve this ?
If you installed openflow using npm you can set domain to the ip address of the server, and use that when seting up nodered. If you used docker to install nodered, you need to setup 2 dns records as explained in the documentation under custom domains.