Robot Assistants: A bot for every task
May 24, 2021, 3:00 AM EDT
May 24, 2021, 3:00 AM EDT
Wouldn’t life be easier with a robot assistant? It would be so nice to have a robot to cook, clean, and pick up your dry cleaning. While that kind of robot is still in the future, you can build robot assistants that will automate repetitive tasks at work.
A robot assistant is an attended robot that runs on a user’s desktop and assists them in completing their daily tasks. Developers build robots that can perform any number of functions, the end user hits “go,” and the robot does its thing. Generate reports, upload spreadsheets, copy and paste, and much more—we’ve got a bot for every task.
During the May 25th webinar, the Robocorp team will show you how these bots can make your team more productive and your life easier. During this webinar, you will learn:
It is two past so I’m going to go ahead and get started. My name is Nick, I lead the Marketing here at Robocorp. We're joined today by Hanna and Saana and who I’ll introduce in just a minute. Just want to again, say thank you to everybody for joining, thank you to our partners, Robocorp partners, Thank you to our developers and our developer community. I mean, you really make what we do possible, so thank you so much. Today's webinar, as we mentioned, is going to be focused on attended robots or robot assistance, as we call them here at Robocorp. Hanna leads our product team. And Saana who's our customer success lead will be discussing in giving us a presentation, giving us an overview, demonstration and use cases of our attended robots. Just a couple of logistical notes, we are recording this and the recording will be available, probably as of tomorrow, we'll have it and we'll send a link to the recording. And we also welcome your questions throughout the webinar. So as you have them, please feel free to type them in, you can either use the questions function or the chat function, we'll get them either way. We're going to wait until the end to answer them but please feel free to type them on in as you have them and we'll get to them at the end. And without further ado, I will hand it over to Hanna, who will be leading us through this the rest of the way. Thank you again.
Alright, thanks, Nick. Yeah, Nice to be here and talking about the robot assistance. So as Nick mentioned, the assistance are Robocorp’s answer to automating attended or human in the loop tasks. And we're going to cover today shortly what assistants are, why and when to use assistance? What types of challenges we've seen customers face with attendant automations, in general? And then we're going to end with a demo about how to configure and deploy an assistant and also how to use that.
So attended automation, the definition that we use is, we basically refer to automating employee tasks when we talk about attendance automations. So these are automations that sit on employee workstations, and they're basically ready and waiting to be activated by the employees. So they serve as kind of digital assistance. And often these used cases are smaller tasks that can't be scheduled or triggered by an API.
So for whatever reason, they require a human to either decide when the robot should be run, or to decide what type of input the robot should get on. Unattended automations, on the other hand, are processes that run without any human input or interaction. So these processes are usually considered at least more high value adding usually because they're either more suitable for mission critical processes and/or they run at really high volumes. And for unattended processes, many times the most value is created when you're actually re-engineering the process. So really thinking about how it should be implemented not just replicating how it's been done in the past. So while the business case for one single unattended process can be really, really good, the value of attended processes, I would argue comes really from the capability of scaling small automations to multiple different users. And both approaches are fine. It really depends on what you need. They come with slightly different considerations and requirements on the technology, for example. But today, we're going to be focusing just on the attended side and how Robocorp views these types of automations.
So before we jump into the typical assistant use cases, I just wanted to share this study which I found personally really insightful. It's done by Bain, and it was released just, I think a few weeks ago. So it's really about the reasons for automation. And while the traditional reasons have been really about lower costs and enhanced performance, according to this study, there's really a clear trend on the market due to COVID that it is shifting a bit. So there's more focus on risk reduction, more focused on ease of generating business insights. So I would say Master Data Management type of use cases, and also more value adding use cases, like improved customer experience, which is actually a really juicy use case for assistance.
So I'm going to let Saana talk a bit more about the use cases.
Okay, thank you, Hanna. So let's first go through some benefits of assistant robots. And the benefits I think assistants are largely the same as in RPA In general, for example, cost savings and eliminating repetitive work. But with assistant use cases, improved customer and employee experience get more emphasis, as well as reducing small human errors with tasks that need for example, manual typing. And an assistant that helps even with a small typing task can improve employee productivity, and therefore employee and customer satisfaction. And then let's go through some of the example use cases for assistance. So function wise, the assistance are used in same departments as unattended RPA robots. For example, contact centers, finance and accounting departments and HR departments are very good functions departments of use cases. Attended bots are very convenient for the contact centers, because they can offer real time guidance and assist employees involved in customer costs by for example, locating client data in one application and entering it into another. And the employee can then fully focused on the clients And they address and address their concerns without getting distracted by data searches. Companies in finance and accounting sector have also a lot of good use cases for assistance. For example, a lot of reporting and reporting usually takes a lot of time, and there are some errors easily, for example, invoice processing and reporting. And one bank in Finland, was actually able to decrease the total customer wait time by seven years by automating its customer service workflows. Okay, but what these use cases have in common? Is that what as I mentioned already, that they are usually triggered at hook. So it's not possible to trigger, to schedule our API. But there is an ad hoc need to perform a task and having an assistant to help you pick up the time or the employee.
Next, we wanted to show you a quick example of a successful assistant use case that came from our Danish partner, NyxTech. And NyxTech client is a logistic heavy Danish startup repairing mobile phones and they had one employee dedicated to a manual and time consuming task of order processing. And as the business was growing, it was hard for them to keep up with the orders. And after learning and documenting his clients process NyxTech built an assistant robot which replaced 95% of this one employees work, and the employee was able to focus on more valuable tasks. The entire project took only 15 hours for NyxTech to develop and deploy into production. And with this use case, we see that it's possible to achieve great benefits even if it's small development effort, making the time to market for the proper flow, and therefore, also the payback time shorter. We will share a link to this case study with you after this webinar in case you haven't seen it yet. And next Hanna will go through some typical challenges that we have faced with assistance and also Robocorp’s approach to these challenges.
Yeah, thanks. Just want to add that in case people listening in, if you have use cases for assistance that you'll be willing to just chalk down and share would be really interesting to hear those so just add them to the chat or let us know. It is always nice sharing these experiences, and use cases with others as well. Alright, so the attended automation movement, I guess, has gained really a lot of traction in the past few years. I would say both was a citizen developer story and with the introduction of Microsoft's power automate product maybe.
So according to our experiences, there are usually some challenges that organizations face when they are starting to implement assistance, especially in volume. So first of all, in general, the citizen developer approach may seem like a holy grail to scale the RPA initiative, without indefinitely scaling the RPA team. But we are hearing stories of companies that are putting in a lot of money to train their entire staff, only to have employees spend a lot of time, days and days training and learning to build bots And then then once they have that success, have challenges in actually maintaining that bot in in a functioning mode. So successes, of course, do happen with the attended cases but when you get these successful cases, the issue becomes how you share that to your colleagues. So once you have a working bot, anybody who could benefit, should be easily able to access it and enjoy its benefits. And on the other hand, if you do find a bug or a problem with one of the automations, you want to be able to distribute that hotfix very quickly, instead of doing that on individual desktop basis.
So the second challenge that we've seen is just a generic feeling of not being in control, usually by the RPA Team. So it can be difficult to understand the actual return. So what's the cost of developing, and maintaining and running these automations? Are they creating enough value for us? Who’s running them? Especially if you're sharing licenses, which assistance or attended automations are being run? What are the bots really doing? And so on. So just the feeling of control can be something that's lacking from the teams. And then finally, probably the biggest individual challenge here is the cost of user license prices that quite quickly spirals out of control if you're really trying to scale the attendant automations. So, with Robocop, we've really had, like three main principles in designing our product for the assistance. And first of all, since we really believe that the business value of assistance comes from scaling small automations to larger populations, then distributing and maintaining the assistant needs to be really easy and straightforward. So we've really wanted to make sure that you can focus on building high quality assistance with professional tools, and then the assistance that that that work and are robust, you can distribute easily to as many users as needed. And this centralized distribution ensures also that if there is a bug in the automation, you just need to fix the problem once and not on every desktop.
The second one is We wanted to create full transparency to the assistant users and use so have a centralized way to control and monitor the use of persistent detailed logs of what the robots have done, which will help you in maintaining those and doing bug fixes even remotely. And basically what you really want to do after all is you want to minimize the downtime of the assistants because it's very easy for the end users to lose trust in these automations. And that's of course something that we want to avoid. And finally, on the pricing side, consumption based pricing. So we did not want to create limits on who's using, how many users are using it, what they're using it for, how many assistants they're using, or any of the development part. So, our whole pricing philosophy also for the assistants has been that you just pay for how much you are using. So this is going to help you really see if an assistant is creating value for your organization, And if it's not a big risk for you to take financially to just let that assistant go. So before jumping into the demo, I just want to go over kind of implementation architecture and what it looks like in practice. So when you are setting up an assistant, you will have a person kind of creating the bot. So that developer can develop and maintain this implementation in Robocorp cloud.
And once they create an assistant within a given workspace, the way to control the distribution of that assistant is to control which users have access to that workspace. So you create the assistant and the users in the same workspace to allow for access. The end users for the first time will install the Robocorp assistant on their machines, and then they just need to log in once and link that assistant for the first time. And in the production phase, the Assistant user or users, if you usually have more than one, they can run the assistance locally on their own machine, they can check the results, if that's kind of built into the robot, And on the Robocorp cloud side, there is going to be a continuous way of monitoring the users, the usage, and the robot logs centrally. And also the cloud will push for any possible updates that you want to implement into the code.
So next, let's have a look at a demo. The demo is intending to show a bit of this process in practice as well. So in this demo, Saana and I are working for a company called Robot SpareBin Industries. The company might be familiar for those of you who have completed some of our courses and certifications. But in this organizations, the sales managers need to input sales figures to an ERP system every once in a while and Saana, as a sales manager and some of her colleagues or her team members would like to get an assistant to do this for them when needed. And luckily enough, we've actually already developed that robot. And now we just need to find a convenient way to distribute that to Saana and the others. So it's completely possible that Saana could do all of this on her own, and we would still retain full transparency of what's being done down to the robot logs. But in this demo, I'm just going to configure the bot for Saana and then we're going to see how Saana runs it on her laptop. So the process that Saana wants to have automated basically is about reading an Excel file with some names and sales figures, then logging into the ERP system, and starting to fill out these numbers. And once all of it is finished, she's going to see the system will give her kind of update on how many lines of data that we enter and just a brief report on the content that was entered. And what this robot basically will do is that whenever Saana launches it on her machine, she's asked to submit an Excel, she will submit the latest Excel, the robot will then read data from the Excel, it’s going to log into the ERP system. So in this case, this is a browser based system but it could be your SAP or Oracle or whatever. It's going to enter data from the Excel to the ERP and then Saana will just be informed and she can view the results. So we're going to start, not completely from scratch, as I mentioned, we already have the robot, but we're going to see how we're going to configure that in the Robocorp cloud. So this is my demo environment, and what I'm going to need to do is I'm going to first need to enter a new robot. And as mentioned, we already have a robot that works for this function, so we're actually going to go to GitHub where we maintain the code, and just copy the link here. So we're going to call this robot Excel to ERP robot.
And I'm just going to copy the URL from the public git here. Now, in a real life situation for a company probably would be using a private GitHub repo here, but this example is actually something that's live in our Robocop portal so you can actually go and download it yourself and try it out if you'd like. So now, we've added a robot to our robot inventory and we just need to create a new assistant. Let me get zoom out of the way, here we go. So this is the name that Saana is going to see in her assistant as well So we'll call this the “Sales Data From Excel To ERP Robot”, and we're going to attach this robot that we just brought into our inventory, to actually execute the code. And now we have a new assistant but the only thing we need to figure out is how we can actually give access to Saana for that. So as mentioned, the Assistant now lives in my demo workspace So I'm going to need to share this with Saana, and even though Saana works for Robots SpareBin Industries, she happens to have a Robocorp email address. So we're going to share this workspace with Saana and everything from the Robocop cloud side is now set to go. So what I'm going to do is I'll just hand over the sharing to Saana and she will walk you through what the workflow looks like for the end user.
Okay, thanks Hanna. So here, as a sales manager, I have already installed Robocorp assistant to my local computer and at the moment, I don't have any assistance available but I will refresh the view from here. As you can now see that assistance available in the workspace that Hanna just shared with me. So it's called Robocop demos. And I want to install the sales data from Excel to ERP, I sent to my use. Okay, so the install was successful and I can close this one. So now I have the assistance that I have installed here, available for me. And Hanna has already told me how this robot works so I'm confident in starting to run it. And I know that it will be a dialog window where it's asking me for the input data.
And here, I know that I need to give it an Excel file.
And I will give it that one. And the robot suit now start running. And it's opening a browser window, logging in, and now it's starting to add the data to ERP and here we can see that how many active sales people we have had and what are the expected sales and actual sales and the difference for them. And from this popup window, I remember that I have a robot running So because this is a browser based use case I could continue working with another browser window, But this pop up would remind me that there's a robot running and it's also telling me the status of the robot run. The robot is now finished, and now as the sales manager, I don't need to go to the cloud to view the logs or whatever the RPA team is looking at in the cloud. But what I as a salesman want to see is the output of this robot run. So I will go there and here are all the walks from the run, and what I'm interested in is the sales summary. So in this one, I just want to ensure that the robot has done what it should. So I knew that there were 50 active salespeople. And now I can see the difference between the expected and actual sales for this time period. So that is all that I, as sales manager had to do here on my local computer. And now Hanna will show you what it looks like for the RPA Team.
Yes. So going back to my workspace in Robocorp cloud, we see the assistant here (Here we go, I was getting a bit worried are we having a demo effect,) which now shows that Saana has completed one run, and it's completed successfully. So in theory, there's not really a need for me to go and dig deeper into this. But I do want to show you that in case there was a problem that Saana ran into, the same robot log file that is familiar to some of you, hopefully, from the robot workforce side, it's available for the assistance as well. So we can drill down into very detailed level of what the robot did, what happened, And if there was a failure, at which stage did the failure happen. So this is a very convenient way to do a lot of that debugging and end user support without needing to do a lot of investigation. So it comes in very handy.
So at the risk of repeating myself, recapping the demo quickly, what you guys saw here. So we had two different roles, we had the assistant creator, and then Saana was the assistant user. And the setup consisted of roughly four different steps So you would create the assistant, you would add that to that same workspace access to all of the users who you want to be able to use that assistant, and the end user, or the assistant user would then just need to one time, install the assistant on their machines and decide which assistance they actually want to download. So in operational phase, very simple, you choose the assistance you need to run, If you feel a need to check the results, depending on how the assistance has been done, you can go and check them. And the assistant creator or the RPA team will always have a possibility to centrally kind of monitor and maintain that robot. So that was the demo for today and I'd actually like to open the floor up for any questions that we might have at this stage.
Yeah, thank you Hanna, Thank you Saana. That was fantastic. As Hanna mentioned, we'll love to answer any questions for you, you can type them into the Q&A, you can type them into the chat, and we'll go ahead and answer those, keep the questions coming. The recording of this will be available, as I mentioned. So you can go back and watch the demo, we are also are going to send out some other resources, some other links to the documentation around the assistance. So make sure you have all that.
I also you know, if you want to jump in just a few lines on any features that you'd like to see as a part of the assistance in future releases, feel free to do that anytime. But this is a wonderful opportunity to do that and I'll definitely take those to the product teams and we'll see what we can do.
And we do have one question here. Saana you mentioned on the browser, you could continue to work in the background. What kind of capacity can your computer continue to run at while the assistant is running? Does it use all of your computer's capabilities capacity?
Yeah, it’s not definitely using whole capacity, but it really depends on the use case. So if you have, for example, image based locators, then the robot will need to be able to see the locators on the UI so that it's able to see where to click. So that is one reason why you might not be able to work while the robot is running. But usually, this assistant use cases are quite short so it shouldn't take you too much time in your work.
Great thank you. And we do have a question about the recording. And yes, it will be available after, we'll send it out by email.
Another question is, what about controlling what data goes into the cloud? Can I build a bot in a way that does not send any sensitive data to the cloud?
Yes, that's really kind of, I would say a generic question that's valid for both attended and unattended use cases. So this is really up to the developer on how you configure the work items that the robot is processing. And I need to check if we already have that article, like on the best practices of how to do that. But that's definitely been something that we've been intending to write up because it is a question that we get quite often. But short answer, developer is in full control of what is the data that gets sent to cloud.
Any other questions here? I think this just means that the demo was so clear that there are no questions left to ask. Again, we really appreciate, I think, what's really interesting for me to see in action is how easy it really is for the end user for Saana in this case, to run it without having to do any much of any setup. So that's was great to see.
We have a question here. Is there a best practice for the number of steps for an attendant bot?
It also depends a lot about the use case. So what kind of use case you have for the robot, but of course, depending on the use case, you might want to keep that in that robots quite short, so that you can continue working on your other tasks after that.
I would say that, you know, just think about the actual user who's going to trigger it. So if it's a very complicated process, it's always kind of nice for the user, if they have an understanding of what's happening at each stage. So if you are creating some potentially more complex processes, maybe throwing in a dialogue here or there might be good. It depends so much on the use case.
And I'm sure that, to the asker of that question, if there's a specific use case you'd like to talk about a specific instance or that you'd like to talk with our team? Sure, we'd be happy to talk through that with you on our Slack channel. Absolutely, you also send instructions to for joining the developer slack in the in the follow up email? Absolutely. We have another question here. I think the question here is about a web browser. So there's another instance of a web browser, Can you work in parallel while the agent is running on another browser tab? So I think you mentioned that Saana that you can work in another browser, tab, or window.
Yeah, so the robot is always opening a new browser window. So if I have one window open in this use case, for example, in the browser use case, I can continue working on the browser that I had available or open a new one
And just since we're talking about, is that not the case with a desktop?
Yeah, so it depends what kind of locators you have used. So if you have used browser locators, for example, the IDs and expats are, so they are okay to use. For example, desktop automations, it might be that you have used, for example, image based locators.
Great, thank you. And I hope that answered your question. Feel free to follow up if that did not.
Can the assistant work in stealth mode? And I assume that means in the browser, and still can use this to work in stealth mode.
Yeah, to my understanding, that works. Works, so should be okay to do that.
If you'd like more information about that, George, please feel free to follow up with us.
George asked that question followed up, he means that work in the background can be done in case they're sensitive data?
Ah, okay. I see. Now, I think I understand that the question a bit better. So I think that again, comes down really to how you are building the bot. So it is possible to configure the data, work items in such a way, depending a bit on your use case, but again, happy to kind of work through those with details with you over slack or something if you'd like to go through that in a bit more detail.
And we have another question here. What possibilities are there to trigger the assistant says for you know, API connections, or chatbot, or maybe screen or app recognition? And I guess the example there they're asking here is if there's a workflow is started, I mean, the Assistant reports in
Ah, yeah, so this is I guess, more about like a hybrid approach. So you have a workflow that’s kind of unattended, in a sense, and then you have a need for an assistant to be triggered in the midst of that workflow, if I understand this question correctly. And that should be doable. We don't have instructions for how to do that exactly, not yet available. So I would take that in a session with or in in the slack again, with some of our developers. But the primary use case that we see most often is the manual triggering. And then with the unattended use cases, it's really about the API triggering, but I think this is if I understand the question correctly, it's really going after a hybrid approach. And possibly requires a bit more configuration, And I think our developers are more fine-tuned at figuring out how to implement it than I am right now.
I hope that it's the question. Thank you, Hanna, for that. Do you have any other questions? We have time for one or two more questions, if anybody has any. If not…
I think it's actually a pretty good bridge. I mean, there was a lot of questions on the implementation of the bots itself. And we have a fairly, very good documentation. So Saana, maybe you can recap some of these.
Yeah, so we just want to summarize how you can get started with assistance if you are interested in. So we have plenty of ready to use examples in Robocorp portal that you can just go and try on your own computer. And if you want to start building your own assistant, we have videos and lots of documentation available. And in case you want to add the UI to a robot, you can do this with the RPA dialogues library. Of course, if you face any problems of workers [40:01] are about to share your robot, please join our pop up slack. Or you can ask on the forum and get help from our community. So you won't be alone.
Again, I'll thank everybody for joining today. Thank you to Hanna and Saana for giving us all the lowdown on the assistance and the demo. We have one more question coming in, if time to answer it, it was just a thank you. So we'll take that. Thank you for that. Again, Thanks, everybody for joining. Hope you have a great rest of your Tuesday. And we hope to hear from you again soon. Thanks everyone.