This section takes you through how to integrate your contact center platform with Ada Voice. If you don’t see your contact center platform listed here, you can contact your Ada team to determine the best way to integrate. Ada Voice can integrate with any contact center platform.
This section takes you through how to integrate Ada with your SIP infrastructure.
<your_domain_name>.sip.twilio.com. This needs to be a unique domain name that is not currently being used in Twilio.You must allow all of Twilio’s following IP address ranges and ports on your firewall for SIP signaling traffic. Please also note that these IP addresses are provided for firewall configuration purposes only and not all of these IP addresses will host active gateways at a given time. Customers should also avoid sending traffic directly to these IP addresses and instead use your SIP domain.
Global Media IP Gateway
The Public Connections Destination IP Ranges and Port Ranges are now identical across all locations:
Regional Signaling IP Gateways
Port
5061 (TLS)
North America Virginia Gateways
North America Oregon Gateways
Europe Ireland Gateways
Europe Frankfurt Gateways
Asia-Pacific Tokyo Gateways
Asia-Pacific Singapore Gateways
Asia-Pacific Sydney Gateways
South America São Paulo Gateways
When sending SIP to Ada, you must send the end user’s phone number in the SIP UUI header:
You can send additional metadata to Ada Voice, such as name, language, account number — or any other information you choose — as key-value pairs using the SIP UUI header.
Any data sent will be available as a purple metavariable in Ada to help personalize the conversation.
If an end user using your bot needs to escalate to a human agent, you can hand them off using a SIP REFER transfer to your SIP infrastructure.
phone_number.phone_number metavariable.This section takes you through how to transfer calls between Ada and Aircall.
To have your bot handle inbound calls originating in Aircall, configure an Aircall Smartflow that connects calls to your Ada Twilio Application:
When a call reaches the Ada Voice Smartflow widget in your Aircall Smartflow, it’s automatically routed to your bot in Ada.
If an end user using your bot needs to escalate to a human agent, you can transfer the call back to an Aircall team.
You will continue to receive phone calls using an Amazon Connect provisioned phone number, and you will transfer phone calls from Amazon Connect to your Ada bot’s phone number using the Amazon Connect Transfer to phone number module.
If you have not done so already, configure a Twilio phone number for your bot to use. For more information, see Set up your Twilio account in Get started with Voice at Ada’s Help Docs.
Log into your Amazon Connect account.
Create a new flow in Amazon Connect for inbound phone calls that you want to transfer to Ada.
In order to track the end user across Amazon Connect and your Ada bot, you will need to create an AWS Lambda function in the AWS Instance associated with your Amazon Connect account. This function will retrieve an Ada Call UUID for the call from Ada prior to the call being transferred to Ada.


bot-handle with your bot’s handle:After creating, allow your Amazon Connect instance to access the Lambda.
Use the Invoke an AWS Lambda function block to call your newly created AWS Lambda function and to retrieve the uuid from Ada for your call. Enter the following property values:
Use the Transfer to phone number block to transfer the call to Ada. Enter the following property values:
If an end user using your bot needs to escalate to a human agent, Ada will disconnect from the call and your Amazon Connect flow will resume where you left off.

In Amazon Connect, after the Transfer to phone number block that you set-up in Step 9 of Get calls into Ada above, you will need to invoke another AWS Lambda function. This function will retrieve a destinationQueue value for the call — you can use this to determine which queue in Amazon Connect to route the call to.


bot-handle with your bot’s handle:After creating, allow your Amazon Connect instance to access the Lambda:
Use the Invoke an AWS lambda function block to call your newly created AWS Lambda function and to retrieve the destinationQueue from Ada for your call. Enter the following property values:
Use the destinationQueue value that is returned in this Lambda function to determine what queue to send the end user to.
If you want your bot to answer all calls that are made to a phone number, the best option is to configure your bot to use that phone number. For more information, see Set up your Twilio account.
If you don’t want your bot to answer all calls that are made to a phone number, then you can choose to just forward certain calls from Twilio Flex to Ada using Twilio Studio and a SIP INVITE transfer:
phone_number field, and set the value to the end user’s phone number.If an end user using your bot needs to escalate to a human agent, you can hand them off using a SIP INVITE transfer to Twilio Flex. You can pass information about the end user and the conversation using the User-to-User header, such as the queue that you want to send the end user to or the language of the end user.
To do this, make sure you have the following:
Set up a basic trigger in Twilio Studio
voice-twilio-flex-flow.

Pass information in the User-to-User (UUI) header.
HEX-to-ASCIIui/getUUIHeadershttps://hex-to-ascii-3794.twil.io/getUUIHeadersUUI_Headers to {{trigger.call.SipHeader_User-to-User}}
This section takes you through how to transfer calls between Ada and Dixa.
If an end user using your bot needs to escalate to a human agent, you can hand them off using a SIP INVITE transfer to Dixa.
<DID>@<DIXA_SIP_DOMAIN>, where:
<DID>: The destination number in Dixa that is being reached, in E164 format with a leading +.<DIXA_SIP_DOMAIN>: Dixa’s SIP domain, which you got from the Dixa team.phone_number.phone_number metavariable.If required, you can assign different phone numbers to different departments. For example, you can configure one number for handoffs related to billing issues, and another one related to sales inquiries. To learn how to do this, see Buy a Phone Number at Dixa’s documentation.
You will continue to receive phone calls using a Genesys Cloud provisioned phone number, and you will transfer phone calls from Genesys Cloud to your Ada bot using a SIP INVITE made to your bot’s SIP domain.
If you have not done so already, configure a Twilio SIP domain for your bot to use. For more information, see Set up your Twilio account in Get started with Voice at Ada’s Help Docs.
Log into your Genesys Cloud account, then go to the Admin tab.
Under Telephony, click Trunks.


On the Create External Trunk page, fill in the following fields:
Ada Voice trunk).
In the Inbound section, fill in the following fields:
ada-voice).
In the Outbound section, fill in the following fields:
admin.5061. Then, click the + icon to add it.
Under SIP Access Control, in the Add an IP or CIDR address field, enter each of the following CIDR addresses, one at a time, and click the + icon to add it.
These are all of Twilio’s SIP IP addresses. For more information, see IP Addresses for Elastic SIP Trunking Services at Twilio Docs.

Click the Protocol section of the page to expand it. Then, under User to User Information (UUI), do the following:


Under Transfer, click the Take Back and Transfer and Release Link Transfer (RLT) toggles so they’re both Enabled.
Click Save External Trunk.
If you have not done so already, configure a Twilio SIP domain for your bot to use. For more information, see Set up your Twilio account in Get started with Voice at Ada’s Help Docs.
In Genesys Cloud, go to Telephony > Sites and select your main site. For more information, see About sites at the Genesys Cloud Resource Center.


On the page that opens, fill in the following fields:

Click Save Number Plans.
On the Outbound Routes tab, click New Outbound Route.

On the page that opens, fill in the following fields:


Select the call flow you want to transfer to Ada Voice. The Inbound Call Flow page opens.
On the Inbound Call Flow page, under Toolbox, click Task to expand it, then drag the Task action into your Starting Menu. This creates the task we use to transfer end users to Ada Voice. The New Task pane opens.



Click the same menu again and click Expression. The String Builder window opens. In the String Builder window, under Expression, enter this string:
This is a Genesys expression that extracts the end user’s number and
adds it to the UUI header in the format Ada Voice expects (e.g.,
phone_number=+14035555555).

Click Save to save the string and close the String Builder window.
Under Toolbox, click Transfer to expand it, then drag the Transfer to Number action into the New Task pane, under the Set UUI Data action you just added. The Transfer to Number pane opens.

In the Transfer to Number pane, do the following:

Under Toolbox, click Disconnect to expand it, then drag the Disconnect action into the New Task pane, under the Transfer to Number action you just added.
Click Publish.
At this point, you should be able to call your Genesys Cloud IVR and be successfully transferred to Ada Voice.
If an end user using your bot needs to escalate to a human agent, you can hand them off using a SIP REFER transfer to Genesys Cloud.
<DID>@admin.byoc.usw2.pure.cloud, where <DID> is the destination number in Genesys Cloud that is being reached, in E164 format with a leading +.phone_number.phone_number metavariable.This section takes you through how to transfer calls between Ada and Zendesk Talk. For more information about how to integrate a bot to Zendesk Talk, you can also reference the Connecting an external AI agent using a SIP-IN line article at Zendesk’s documentation.
If an end user using your bot needs to escalate to a human agent, you can hand them off using a SIP INVITE transfer to Zendesk Talk.
<USERNAME>@<YOUR-UNIQUE-NAME-zendesk.sip.twilio.com>, where:
<USERNAME>: A friendly username of your choice. We recommend using a unique username for Ada.<YOUR-UNIQUE-NAME-zendesk.sip.twilio.com>: The URI for your SIP-IN line.X-Zendesk-Ticket-Id=<TICKET_NUMBER> where:
<TICKET_NUMBER> - Is the number of the ticket you created.<USERNAME>@<YOUR-UNIQUE-NAME-zendesk.sip.twilio.com>?X-Zendesk-Ticket-Id=<TICKET_NUMBER>This section takes you through how to transfer calls between Ada and Gladly.
If an end user using your bot needs to escalate to a human agent, you can hand them off using a SIP INVITE transfer to Gladly.
<DID>@<GLADLY_SIP_DOMAIN>, where:
<DID>: The destination number in Gladly that is being reached, in E164 format with a leading +.<GLADLY_SIP_DOMAIN>: A unique SIP domain created by Gladly.<DID>@<GLADLY_SIP_DOMAIN>;transport=tls.X-Gladly-Caller-Id=<ANI> to your SIP address as a query parameter, where:
<ANI>: The end user’s phone number in E164 format with a leading +. You should use the phone_number metavariable in Ada for this.<DID>@<GLADLY_SIP_DOMAIN>;transport=tls?X-Gladly-Caller-Id=<ANI>X-Gladly-Routing-Selector=<topic> to your SIP address as a query parameter, where:
<topic>: The specific queue that you want to send a call to. This is a free-form, alphanumeric string identifying the specific queue to send a call to.<DID>@<GLADLY_SIP_DOMAIN>;transport=tls?X-Gladly-Caller-Id=<ANI>&X-Gladly-Routing-Selector=<topic>This section takes you through how to integrate Ada Voice with a Cisco CUBE.
<your_domain_name>.sip.twilio.com. This needs to be a unique domain name that is not currently being used in Twilio.You must allow all of Twilio’s following IP address ranges and ports on your firewall for SIP signaling traffic. Please also note that these IP addresses are provided for firewall configuration purposes only and not all of these IP addresses will host active gateways at a given time. Customers should also avoid sending traffic directly to these IP addresses and instead use your SIP domain.
Global Media IP Gateway
The Public Connections Destination IP Ranges and Port Ranges are now identical across all locations:
Regional Signaling IP Gateways
Port
5061 (TLS)
North America Virginia Gateways
North America Oregon Gateways
Europe Ireland Gateways
Europe Frankfurt Gateways
Asia-Pacific Tokyo Gateways
Asia-Pacific Singapore Gateways
Asia-Pacific Sydney Gateways
South America São Paulo Gateways
In order to route calls to Ada, you must make a SIP INVITE to Ada.
TO SIP address should be <DID>@<YOUR_ADA_SIP_DOMAIN>, where:
<DID>: The phone number that you used to receive the call.<YOUR_ADA_SIP_DOMAIN>: The Ada SIP domain for your Ada bot.FROM SIP address should be <ANI>@<YOUR_IP_ADDRESS> where:
<ANI>: The end user’s phone number.<YOUR_IP_ADDRESS>: The IP addresses of your SIP infrastructure.If a caller using your bot needs to escalate to a human agent, you can hand them off using a SIP REFER transfer to your SIP infrastructure.
<DID>@<YOUR_IP_ADDRESS>, where:
<DID>: The line or extension that you want to transfer the call to.<YOUR_ADA_SIP_DOMAIN>: The IP addresses of your SIP infrastructure.