Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 

Introduction:


SAP’s two most powerful platforms – SAP Conversational AI and SAP Robotics Process Automation – have their own uniqueness.
In this blog, I am going to explain how developers can leverage the functionalities that these platforms offer and trigger an SAP Intelligent RPA Bot using an SAP CAI Bot.

An SAP CAI bot can be accessed using a simple chat window and allows users to send external commands using webhooks, whereas SAP Intelligent RPA has the capability to run end to end business processes on the click of a button. Let’s try to run a creation of “Goods Receipt” process using “Robotic Process Automation + AI-based chatbots”.

Below is the simple architecture diagram using which we will complete our integration process.


 

For this development, following are the prerequisites:

  1. SAP CAI Bot (How to build first CAI Bot -Blog post)

  2. SAP Intelligent RPA Bot (Sample Blog post)

    • API trigger and notifiers in SAP Intelligent RPA – Blog post



  3. SAP Cloud Platform (for the deployment of our webhook service)


 

SAP Intelligent RPA Bot Details:


After the successful deployment of the SAP Intelligent RPA Bot on the cloud factory, create an API trigger and copy the URL and irpa-trigger-token from the fields shown in the below image.


 

For access of any SAP Intelligent RPA cloud factory bot, it requires OAuth 2.0 type of authentication and for the same we would require the following parameters from the service instance of SAP Intelligent RPA cloud tenant, as highlighted in the image below:


For more information, follow this help guide and get the url , client id, and client secret.

With this, we now have the following parameters to proceed with:

  1. URL- (Service Instance URL)

  2. Client ID

  3. Client Secret ID

  4. URL – (Cloud factory IRPA API Trigger URL)

  5. SAP Intelligent RPA Header Token


Note: You can also try to trigger your SAP Intelligent RPA bot via postman for the testing, using the above parameters.

Node Service on Cloud Foundry:


This is a simple 3 method-based node service which will do our work of communication between SAP CAI and SAP Intelligent RPA bots. So, let’s start with our first method for getting OAuth token for SAP Intelligent RPA tenant access.

1st Method -


In this method we will use parameters - #1, #2, #3 retrieved in the  above section of “SAP Intelligent RPA Bot Details”.


 

2nd Method –


In this method, we will use the authorization token retrieved from the above method plus parameters - #4,#5 from the section of “SAP Intelligent RPA Bot Details”.



3rd Method:


In our last method we will consecutively call the above methods.


After successful implementation of the above three methods, deploy this node application on cloud foundry and get the URL which we can use further as a web hook in SAP CAI.

(If you are new to the deployment process of node services on cloud, I would recommend that you follow this blog post.)

SAP Conversational AI Bot:


For the Webhook Configuration, here we can use the service without any authentication. You can also put the authentication on your node service and the same can be configured using SAP CAI.

For this example, I have used no authentication.

Now we can use your node application deployment URL here in the webhook directly.




As you can see, it worked successfully.

Conclusion:


Now that we know how to successfully integrate bots from these two platforms, we can try several use cases as it is now fairly easy to send data from CAI and get data in SAP Intelligent RPA.
Again, this might not be the ideal way to do the integration between CAI and Intelligent RPA, but this is one of the possible ways. With each release, SAP CAI and SAP Intelligent RPA are becoming more flexible in terms of integration and data exchange.

Do check out this blog post where we can also avoid node service implementation.
7 Comments