- 1 Custom Natural Language Menu Microapp
Custom Natural Language Menu Microapp
The Custom Natural Language Menu microapp allows you to perform custom integrations to bot frameworks like Google Dialogflow or Genesys Dialog Engine. These custom integrations are configured through scripting with special scripting screens provided to configure bot authentication and processing of utterances.
Differences between the Custom Natural Language Menu microapp and the existing Natural Language Menu microapp
- Custom Natural Language Menu is not restricted to bots supported by Intelligent Automation. You can connect to any bots which have an HTTP REST API. However, this requires scripting knowledge and is more suited to technical users. IA provides example scripts for connecting to Genesys Dialog Engine and Google Dialogflow but non-technical users are still advised to use the existing Natural Language Menu microapp.
- The flow for Custom Natural Language Menu is unlocked. This means that if any bot systems require additional scripting or processing outside of authentication and utterance capture, you can add more blocks to the flow.
- Custom Natural Language Menu has no options to configure paths for intents. Instead, you should manually add the required paths to the flow or to the Link block which has invoked the microapp.
Configuring Dialogflow Prerequisites
Google Dialogflow Agent Credentials
The Google Cloud Project ID for the Dialogflow Agent can be found on the General tab of the agent settings in your Google Console.
Creating a Google Cloud Service Account
Intelligent Automation connects to Google Cloud Project for your Dialogflow Agent using a Service Account P12 service account key. This key file can be generated once you have created a Service Account within the Google Cloud Project.
- Open the Google Cloud Console for your Dialogflow Agent Project and select Service Accounts and select CREATE SERVICE ACCOUNT.
- Create a new Service Account.
- Add the Dialogflow API Admin role to the new service account.
Generating the P12 Service Account Key
Once the Service Account is created,
- Generate the P12 Service Account Key file by selecting the Service Account from the Service Account list and select ADD KEY.
- Select the P12 format and select Create.
- Save the key file and also the Private Key Password that is displayed.
Configuring the Service Account Email
The CNLM feature also requires the email for the Service Account. This can be found on the Service Accounts list page. This email account is used to configure the feature.
If you are connecting to Dialogflow, you must provide additional information to connect to your Google Apps account. In addition, you have to provide a PK12 certificate and credentials if you are using Intelligent Automation 9.0.100 or later.
- Navigate to Administration > Default Server Settings.
- Edit the Resources.AllowedUploadContentTypes and add ",application/pkcs-12,application/x-pkcs12" to the end of the list.
Installing the microapp
- Navigate to Administration > Products.
- Scroll to the bottom of the page and select Import a Product.
- In the Import Products page, select Choose File and navigate to the Custom Natural Language Menu.product file.
- Select Import Product to import the microapp.
Importing the template
- Navigate to Templates > Import.
- Select the Custom Natural Language Menu Template.zip file and select Import.
Once the microapp and the template has been installed, you can create a new module using the template.
Configuring the Service Account Key Certificate Alias
Use the keytool command to integrate the Custom Natural Language Menu module with Google Dialogflow.
keytool -list -v -keystore <key file name> where the key file name is the P12 Service Account key created earlier.
Configuring a new Custom Natural Language Menu Module
Creating a new Custom Natural Language Menu Module
- Navigate to Applications and select Create a new Menu.
- Select the Custom Natural Language Menu Template.
- Enter a name for the new module and select Create.
- Select the new module.
The following video (from 01:30 to 02:00) shows how to configure a new CNLM module with Google Dialogflow.