The State of IT Automation: New Pressures Invite New Opportunities Read Report

See How to Integrate Slack or Microsoft Teams with Resolve

Powerful self-service capabilities result from combining ChatOps with a robust and scalable intelligent automation platform.

Ready to See it in Action in Your Environment?

As supporting channel shift and improving digital experience continue to be critical initiatives for IT leaders, ChatOps offer a compelling path to success — especially when combined with automation. These solutions provide remote users and customers alike with multichannel, self-service options to complete service requests on their own (and in doing so improve satisfaction), while easing the burden on thinly stretched service desks.

In this video, we demonstrate how existing tools like Microsoft Teams and Slack can be transformed into powerful self-service agents.

Resolve Chatbot Integration with Microsoft Teams


Okay, so with the move to self-service in mind, in this part of the demonstration I will start by showing you an example of chatbot-driven automation using my company's collaboration messaging platform, which in this case is Slack. So here, there are two ways in which we can drive the power of automation. The first of those is by using an automation chatbot built right here in Slack.

So, you can see here in my Slack interface, I have my Resolve bot chatbot on the left-hand side, and we can access the chatbot and I'm going to start immediately engaging with that chatbot. So I'd type hi, it will respond back and essentially I'm going to describe my request or my problems. So I'm going to say, "I have a problem with Citrix" and the chatbot would ask for a little bit more detail, of course. "So can you describe your problem to me?" I'm going to say, "I cannot log in." And once the chatbot has enough detail, then it will go now and trigger an automation in the background, transparent to me as an end user to go in and initiate and execute some diagnostic validations or some diagnostic checks.

So you can see, it's checking my Active Directory user. It's enabled, it's not locked, and it doesn't seem to be a problem with my Active Directory account. It's then moved on to check Citrix. There does seem to be a session active for my user. And indeed the automation has discovered that the last session potentially was not closed properly. So Citrix may still think that I'm logged in already. Now it's asking me if I want the remediation action to be performed. "So do you want me to release it so that you can log in again?"

And of course I'm just going to type yes. So immediately again, an automation will be executed in the background to go and release that session. And then let me know when that's been done so that I can go in and attempt to log back into Citrix, and validate that the problem has indeed been solved. "So the active session for your user has been closed. Please try to log in again. Is it working now?" Yes, it is absolutely working now. So, a simple but powerful example of chatbot-driven automation right here in our fingertips.

Now, in this example, the commands that I was typing can either be passed directly to resolve and mapped to automations to be executed, or they could also potentially be first passed to your chosen third-party NLP engine to maybe interpret the text before being passed to Resolve Actions for automation execution. Now, I mentioned at the beginning that there were two ways that we can drive automation here and the second of those is by using the built-in Slack command functionality. So here we don't necessarily need to be engaged with our chatbot, actually from anywhere within the Slack interface. I can simply start typing the action I wanted to perform and then select the command I wanted to execute.

So for example, I can start typing AWS, and I get some options here. I want to view my AWS dashboard, create a new instance in AWS, delete an instance, restore a snapshot. So let's select for example, create instance. Let's execute this command and immediately I get a pop-up dialog asking me to provide some attributes for the instance. Now, these attributes would ultimately become the inputs or the parameters passed into the automation, which will do the actual provisioning process in the background. Okay?

So I can give my instance a name. Let's call it demo JD2021. And I can modify any of the additional parameters as well, but for now let's just click create. And of course, immediately an automation will be triggered in the background. An automation that looks just like this one. So in both of the examples I've shown, we're illustrating the ease essentially in which resolve actions can integrate with your chosen collaboration platform. And the goal here being to supercharge self-service to transform the way service requests are fulfilled. The automated fulfillment of those requests is each time being performed by extremely powerful, robust, scalable automation. And that automation is transparent to the end user as you could see in the demonstration. And the automation on the screen is a good example of exactly that.

Now, moving away from Slack for a moment, let's take a look at what chatbot-driven automation looks like in Microsoft Teams. So the concept is the same, although the way in which users interact is likely different. So here in Microsoft Teams, I will select my chatbot application over here on the left-hand side. And I'm going to start to engage with the chatbot. So just like the previous demonstration, I'm going to type “hi,” and I will be essentially presented with a series of menu options.

Now, Microsoft Teams allows us to integrate using these rich, dynamic adaptive cards that enhance the end user experience. So, there's lots and lots we can do with these adaptive cards in terms of presenting information to end users in terms of allowing end users to select options and to provide attributes and parameters, and to go through a slightly richer journey from the chatbot in an automation perspective. So I've been presented with this menu here with some information that I can read. But more importantly, a list of options down here at the bottom.

So, these are the typical service requests that I might want to fulfill using my chatbot, and I can pick whichever one is appropriate to me. So maybe I want to list all of my open tickets for example. An automation will be executed in the background. As soon as I click that button, it will go and retrieve all of the open tickets assigned to me and present them to me again in an interactive adaptive card right here in Microsoft Teams.

Now, of course I can take it a step further and I can go and perform actions on each one of these individual tickets, but for now let's select one or two of the other options that are available to us. So for example, maybe I want to work with some access requests to specific systems or applications within the organization. So immediately I'm presented with a menu of Active Directory network shares, email distribution lists, other applications, access rights. And of course we can add to this list depending on the service requests that we want to provide to our end users via automation.

In addition, I could select access management for example. When I click access management, again, I'd be presented with a menu of options, distribution list management, server access requests or application access. So here I'm going to select distribution list management and I'd be presented with some further options. So you can see how these adaptive cards in Microsoft Teams and the integration with these adaptive cards can enrich the end user experience.

Remember, all of these adaptive cards that you see in the Microsoft Teams interface are being generated by the Resolve automations in the background depending on the request that's being fulfilled and the options which are being selected. So there's a back and forth conversation going on between Microsoft Teams and the automation platform to take the end-user through this request fulfillment journey.

So for example, I could add a new distribution list. I can add users to the distribution list. I can remove users from a distribution list or I can delete a distribution list. Under server access requests, I can select from multiple options, request new access, reboot a server, change server ownership. So here, I'm essentially looking for approval for some action via self-service.

We can talk about application access. And again, options presented to me that I can select from and that I can use to drive back-end automation. So you can see how these rich adaptive cards can be used to present multiple paths through this request fulfillment journey to allow the end user to specify the attributes and the parameters that they require, and that are important to whatever their request is. And ultimately, again, those will be passed to the back-end automations, which will perform the actual fulfillment of the requests.

It's important to note that every step of the way the automations will update the end user. Messages will be sent back regarding status of the automations, regarding the outputs of the automations, regarding the success or failure of the automations. Of course, we can implement significant error handling capabilities in here, so if there is a failure, or if there is a failure to fulfill the request, we can maybe reassign the ticket, we can create a ticket, we can inform the end user, we can escalate and notify and so on.

So again, each of these examples we've clicked on here in Microsoft Teams are demonstrating that powerful self-service capability as a result of combining ChatOps with robust and scalable automation.

Share This Video

Joe Doyle

About the Author, Joe Doyle:

Joe Doyle, Director of Sales Engineering at Resolve, brings more than 15 years experience designing and delivering large scale software solutions across the globe. With a background in integration and implementation of OSS/BSS systems, Joe built on those skills to move into the world of automation, particularly in IT operations and network operations, where he has spent the last ten years helping customers navigate their automation journey and to achieve the successful outcomes that enable organisations across multiple sectors to move faster and do more with less. Joe has helped deliver digital transformation through automation for many of the world’s largest network service providers.

Follow Joe Doyle: