If I have and RDA process running on a machine being used by employee who perform call agent duties, there are interuptions that can occur due to calls that appear on the machine, and/or skype messages, etc..
How can I prevent a user from interrupting a process midway, through a user mouse click, focus switching, or popup from process-external applications (like skype, outlook, etc..)
I have asked if users can change the natural behavior to ignoring popup applications, but this is unrealistic for a call agent to not pay attention to popup for a call..
If you don't use SendKeys to interact with applications the automations will be less susceptible to interruption due to loss of focus. However, if you are fighting with the user over the same application there isn't a lot you can do. I have seen some cases where a transparent window is placed over the screen and made topmost. This allows the user to see what is happening but not click into the screen. This will prevent the user from interrupting the automation but can have cause them to feel that the automation is preventing them from working. The best solution usually involves designing the automation around the user's workflow - for instance if a call comes in assist the user to answer the call and give them the option to cancel the automation or allow it to continue.
Ya, the topmost window has been mentioned, and I'm not the biggest fan of that. Do you have any guidelines you use to judge is too long for a bot to be in control. One of the vendors I'm using is suggesting some processes may run 1-2 minutes which I think is very unreasonable for person (agent) to give up their control to a RDA process..
I don't have a rule of thumb for what is too long. I believe that the answer is based on the use case. If you perform automation when a call is received to collect information for the user, the automation should be short enough to allow them to start working once they have done their initial talk off. If the automation performs a complex multi step process that the user would need to do manually otherwise, it can take as long as it needs to as long as it does it quicker and more accurately than the user. If the use case overlaps the end of a call and the start of the next call, you will have to determine an acceptable amount of after call work to allow for automation.