We have a scenario in Robotics where we have to open multiple webpages for multiple users from a single runtime installed on the server.
Pega robotics runtime will receive an service request and will launch a pega portal ,process the request and send back the response to the client.While a request is being processed another webpage is not getting opened.Can some body help me to know how to achieve this?
Hi ,The ask is when ever robotics receives a service reqeust from client we are launching a browser and sending the details from the opened web page.For instance if we recieve the name as XYZ we need to navigate through the webpages and send across the eligibility.
While robot is processing a request if another request is sent to robotics its not able to respond as its already being processed.
You are going to need to process these one by one at least on one machine (if you could queue these requests through some other means like the RPA console or your own database, then you could have multiple bots handling requests). You can use a LockObject to effectively hold an automation at one spot until the lock is released, but you need to be very careful as an unreleased lock will effectively block everything else forever (until Runtime is restarted).
You can't really clone an adapter and its associated automations, so to handle multiple requests for the same automation at the same time, would effectively mean that you'd need to write your automations and adapters and then copy the files, change all of their IDs, import them back in as copies of each other, and then come up with logic to track which one is busy and call the other. This obviously doesn't scale and also causes maintenance and maintainability issues.
If we use the queing process as you said will we be able to send the response instantly as and when we get the request? Am referring to this point below.
How can we have multiple bots handling the requests?Can you please explain in detail ?
"You are going to need to process these one by one at least on one machine (if you could queue these requests through some other means like the RPA console or your own database, then you could have multiple bots handling requests)"
If you have multiple bots awaiting these requests, then they would be handled near instantly. In your current example, request 1 and 2 would be handled instantly, but request 3 would need to wait for 1 or 2 to finish. If you queued these requests and had 3 bots working the queue, all three would be handled instantly. Item 4 would be handled once one of the bots was finished.