This section will walk you through how to configure ICC to integrate with Twilio, Genesys Engage, and Google Dialogflow.
If you haven't already, please download the ICC Application zip from the Downloads tab on MyAppian.
Prior to importing the application, open the import customization file and modify the following fields:
ICC_ENV_USE_TWILIO_TOGGLE
: Set to false.ICC_VAL_IS_CLOUD_SITE
: Set to true or false depending on whether the app is being imported on an Appian Cloud site. Please note that sentiment analysis will not work for self-managed installations.ICC_ENV_GEN_BASE_URL
: Set to the base URL of the PureEngage server.ICC_ENV_GEN_API_URL
: Set to the URL you would like to use for API calls to Genesys. Depending on your Genesys configuration, this could be the same as the base URL.ICC Genesys API Credentials
: Set the connected system username and password fields to a Genesys admin account.ICC_VAL_GEN_QUEUE_ID_LIST
: Set to the queue IDs that have been set up in Genesys, separating each with a semicolon.ICC_VAL_GEN_QUEUE_NAME_LIST
: Set to the queue names that have been set up in Genesys, separating each with a semicolon.After making the appropriate modifications to the properties file, go through the following steps to properly import the app and ensure usability.
ICC_Schema_Creation.sql
in your Appian environment’s data store*
Prior to importing the application, open the import customization file and modify the following fields:
ICC_ENV_USE_TWILIO_TOGGLE
: Set to true.ICC_VAL_IS_CLOUD_SITE
: Set to true or false depending on whether the app is being imported on an Appian Cloud site. Please note that sentiment analysis will not work for self-managed installations.ICC_VAL_AI_FEATURE_TOGGLE
: Set to true or false depending on whether you want to use Dialogflow.ICC_VAL_CURRENT_ENVIRONMENT_URL
: Update the value to the site you are importing the app into. Must be in the format of subdomain.appiancloud.com
.ICC_VAL_TWIL_SUBACCOUNT_NAME
: Update the value to something that will identify this environment in the Twilio console.ICC_VAL_ISO3166_COUNTRY_TO_FIND_PHONE_NUMBER
: Set the value to the 2 character country code in which you want to purchase a phone number. Please refer to Twilio's list of supported countries.
If you have an already existing Twilio subaccount that you would like the imported app to use, further modifications to parameters in the properties file can be made.
After making the appropriate modifications to the properties file, go through the following steps to properly import the app and ensure usability.
ICC_Schema_Creation.sql
in your Appian environment’s data store*
An Appian service account must be created to authenticate requests to Appian. An API key will be used for the authentication process and this service account will be the means by which Twilio and Google Dialogflow call Appian web APIs. The service account is not meant to be used as an agent. Follow the steps below to properly set up the service account.
The Initialize Twilio Configuration action in the ICC application is an easy way to set up all of the necessary objects and connections with Twilio to get up and running quickly. This should be done if you want to set up a Twilio subaccount from scratch.
If you would like to change the default names of any of these objects that will be created through the setup, you can modify the constants referred to in this document.
Once the service account is properly set up, the configuration is ready to be run. This section will walk you through each step of the configuration process and the Twilio objects that are created or configured at each step.
The first step of the configuration is to specify the parent-level Twilio account that will be used for the rest of the setup process.
You can find the Account SID and Auth Token on the main page of your Twilio account.
Appian will now display the newly created subaccount credentials, which you will need to store in a connected system. It is highly recommended that you also store these credentials outside of Appian in a secure manner.
ICC Twilio Subaccount Credentials
connected system.Once these values have been correctly entered into the connected system, navigate back to the setup and proceed to the next page.
In this step, you must copy the Twilio API key created for the service account in the creating service account section to the Twilio configuration. This will provide Twilio with the authenication to communicate to this Appian instance.
Once the credential are properly entered and the user clicks Create Twilio Objects, the following Twilio objects are created. As mentioned previously, you can modify the constants referred to below to change the default name of any of the objects that are created.
ICC_VAL_TWIL_TWIML_APPLICATION_NAME
)ICC_VAL_TWIL_WORKSPACE_NAME
)ICC_VAL_TWIL_TASKQUEUE_NAME_ONE
)ICC_VAL_TWIL_TASKQUEUE_NAME_TWO
)ICC_VAL_TWIL_WORKFLOW_NAME
)ICC_VAL_TWIL_CHAT_SERVICE_NAME
)Following creation of these objects, you can now create workers in Twilio, which need to be associated with Appian users. These workers can also now be assigned queues in which to receive calls and chats.
When clicking Next, the following occurs with the users specified on this screen:
Only Agents are created as Twilio workers since they require integration with Twilio for telephony capabilities. Any users added as Managers are not created as workers in Twilio, but rather just placed in the managers group in Appian for permissions to view the Manager Dashboard.
Following completion of this step, the Appian users which are associated with Twilio workers can be found in the ICC_WORKER
table.
At this point, the setup has created all of the necessary objects in Twilio for ICC. However, the ICC Twilio Credentials
connected system must be manually populated with these values for the Twilio component to properly communicate with Twilio. Please note that for security reasons, the setup process does NOT persist these values as constants or in the process model. It is highly recommended that you store these credentials outside of Appian in a secure manner. If you navigate away from this page prior to storing these credentials, you can navigate to your Twilio subaccount to retrieve them.
ICC Twilio Credentials
connected system.Click Test Connection to ensure the credentials are valid.
The Review screen will allow you to review all of the Twilio objects and IDs that were created, without exposing any sensitive information. You can also find this information in the Twilio Identifiers report.
If any part of the configuration process failed, you will receive an error on this screen.
If you are purchasing a non-US phone number and it failed to purchase, after you complete this section, follow the instructions in the Manual International Phone Number Purchase and Associate New Phone Number with Existing Application section. If a phone number appears in the review page, then the purchase was successful.
This section explains how to purchase a non-US phone number from the Twilio console. Note that this is only necessary if you see an error message in the phone number field on the review screen in the section above. If there is an error displayed, then it means that additional verifications are needed due to Twilio phone number regulations in your country.
Click Create an Identity.
Click Add new Address and enter in a corporate address.
Note that the following steps require a verified identity and a validated address.
Navigate to Manage Numbers and click on the + icon to buy a new number.
Now that you have purchased the phone number, follow the instructions in Associate New Phone Number with Existing Application to complete the set up.
After you have manually purchased a phone number, you will need to associate the new phone number with an existing application from the Twilio console.
To associate a new phone number with an existing application, in the Twilio console, configure the phone number to receive voice calls using TwiML APP. For TWIML App, enter the name of the ICC application.
If you would like to test your configuration to make sure it is set up properly, follow the steps below.
If the Twilio component dynamically updates, you are properly configured! If this test was not successful, please see below for some possible troubleshooting steps.
Additional steps are needed to configure the previously set up service account and API Key with Google Dialogflow if your ICC site uses Google Dialogflow. Perform the following steps to complete the Google Dialogflow initialization.
https://<your Appian ICC site>/suite/webapi/fulfillment