KB-2118 How to upgrade a!twilioField from version 1 to version 2


This article provides instructions on how to upgrade the a!twilioField component plug-in from version 1 to version 2. The upgrade is required when upgrading from Appian 19.2 and earlier to Appian 19.3 and later, but can also be performed on Appian 19.2 in advance of an upgrade to prevent service disruptions.

The upgrade is not necessary for the ICC Baseline application version 5 and later, as these versions natively utilize twilioField version 2.


Deploying the New Plug-Ins

In an self-managed Appian installation, perform the following steps:

  1. Uninstall the twilioField-v1_*.zip and twilioServlets-v1_*.jar plug-ins from <APPIAN_HOME>/_admin/plugins by moving them to a different directory or adding a .bak extension to the files.
  2. Install the latest ICC Components following the Downloading ICC Documentation.

For Appian Cloud installations, contact Appian Technical Support to request the above steps to be performed in the Appian Cloud environment.

Upgrading the Twilio Component

After the new plug-ins have been deployed, the a!twilioField component needs to be updated in the SAIL code. Perform the following steps to update the component:

  1. In Appian Designer, create a new Connected System object and select the Twilio Connected System. Provide all required fields. If the original API key secret has been lost, it may be necessary to create a new API key via the Twilio Console.
  2. Create a constant pointing to the Twilio Connected System object created in step 1.
  3. Find all interfaces containing the twilioField. In the standard ICC application, the two interfaces using a!twilioField are named ICC_CP_twilioField and ICC_RT_twilioAioReport. An expression search may also be performed for any references to twilioField to find references. Steps 4-8 should be performed for each interface identified.
  4. Change twilioField_v1 to twilioField.
  5. Change the value of the twilioConnectedSystem parameter to the constant created in step 2.
  6. If used, rename parameter twilioTransferWorkflowSid to twilioWorkflowSid while keeping the same value.
  7. Remove the redundant parameters: twilioTwiMLAppSidtwilioWorkspaceSidtwilioChatConnectedSystem and twilioChatServiceSid.
  8. Save and test the interface(s).

After completing the above steps, the differences in code should look similar to the following example:

Old Code

twilioConnectedSystem: cons!ICC_CS_TWILIO_SUBACCOUNT,
twilioWorkspaceSid: cons!ICC_VAL_TWIL_WORKSPACE_SID,
twilioChatConnectedSystem: cons!ICC_CS_REST_API,
twilioChatServiceSid: cons!ICC_VAL_TWIL_CHAT_SERVICE_SID,
twilioTransferWorkflowSid: cons!ICC_VAL_TWIL_WORKFLOW_SID
/* other unchanged twilioField inputs here */

Upgraded Code

twilioConnectedSystem: cons!ICC_CS_TWILIO,
twilioWorkflowSid: cons!ICC_VAL_TWIL_WORKFLOW_SID
/* other unchanged twilioField inputs here */

Affected Versions

This article applies to Appian 19.2 and later using the ICC baseline application version 4 and earlier.

Last Reviewed: May 2020