Integrate your voice bot with your Contact Center as a Service (CCaaS) provider
When you integrate a Contact Center as a Service (CCaaS) provider into
your Ada bot, you can manage handoffs from your bot to human support.
There are several tools and user experiences you can serve your callers
with them.
When you're configuring call transfers between your Ada bot and your
CCaaS provider, you can choose to do those transfers using the phone
network or over the internet. Which is best for your organization
depends on your organization's needs and what your CCaaS provider
supports.
Because PSTN transfers only happen over the phone, you just need to
provide a phone number and don't need to configure anything else.
Benefits | Drawbacks |
---|
Easy to configure - to make a call or transfer, you just need to dial a phone number Supported by all CCaas providers | More expensive - the per-minute fee that Twilio charges for inbound PSTN calls is higher than the fee for SIP. Each call can involve up to three transfers between systems, and for each transfer, there's an ongoing per-minute fee that both the sending and receiving services charge for the rest of the call Not possible to include metadata with calls |
If your CCaaS provider supports SIP transfers, you can take advantage of
the cost savings and additional features that are possible when
transferring calls over the internet. For more information, see the
Configure Session Initiation Protocol (SIP) transfers
section of this topic.
Benefits | Drawbacks |
---|
More cost efficient - Twilio charges a lower per-minute fee after each transfer Can sometimes include metadata with call transfers, depending on what your CCaaS provider supports | Not supported by all CCaaS providers Configuration can be more complicated in CCaaS platforms |
To configure PSTN transfers in your bot, you have to start by
configuring your Ada bot, then connect your Ada bot with your Contact
Center as a Service (CCaaS) provider.
In your bot settings, make sure your bot is using the Phone Number
setting instead of SIP Address. For more information, see Configure a phone number with your bot.
This section takes you through Zendesk Talk and Aircall configurations,
as well as more generalized instructions for using other tools. Click a
section to expand the full instructions.
Integrate Voice with Zendesk Talk
This section takes you through how to transfer calls between Ada and
Zendesk Talk.
There are two ways you can get calls into Ada from Zendesk Talk: you can
provide a menu option in Zendesk Talk in your Interactive Voice Response
(IVR) system, or you can route all of your calls to Ada.
If you put a menu option in your Zendesk Talk IVR, callers will only get
routed to Ada if they select certain options from a touchtone menu. For
example, this option is useful if you only want to route calls related
to specific use cases to Ada.
When you route to an external number via an IVR, Zendesk Talk doesn't
record or create a ticket for that call.
Benefits | Drawbacks |
---|
Allows you to control which calls are sent to Ada and which are not Allows a more limited initial rollout of Ada | Callers will need to interact with a touch tone menu in order to get to Ada, rather than use their own words to describe their issue and have Ada’s AI respond based on their issue |
-
Add a route to a new or existing IVR menu in Zendesk Talk. You can
learn how to do this at Creating an IVR menu
at Zendesk Talk's documentation.
-
Update your greeting to refer to your new route! For information on
how to do that, see Creating a custom greeting and assigning it to numbers
at Zendesk Talk's documentation.
If you route all calls from Zendesk Talk to Ada, the caller can skip
directly to speaking with your bot, without having to interact with a
touch tone menu.
Benefits | Drawbacks |
---|
Ada acts as the “front door” for all calls. Callers use their own words to describe their issue and have Ada’s AI respond based on their issue | None |
-
Add your Ada bot's phone number as an overflow number to Zendesk
Talk. For information to do this, see Adding an overflow number (for phone lines)
at Zendesk Talk's documentation.
-
Create a group with no agents in it, so agents will never be
available and Zendesk Talk forwards all callers to your Ada number.
To learn how to do this, see Creating groups
at Zendesk Talk's documentation.
-
Finally, route all inbound calls to this group. Each time a call
comes in, Zendesk Talk will see that there are no available agents
in this group and route calls to your Ada number instead. For
information on how to do this, see Routing incoming calls to groups of agents
at Zendesk Talk's documentation.
If a caller using your bot needs to escalate to a human agent, you can
hand them off directly to a number you have associated with a particular
agent group, using the Transfer Phone Call block. Transferring the
caller directly to a human provides the best experience, so they don't
have to go through the frustration of going through a second menu after
they get transferred.
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.
-
Configure a number for an agent group. To do this, see Routing incoming calls to groups of agents
at Zendesk Talk's documentation.
-
Put that phone number into an Answer using a Transfer Phone Call
block. For more information on how to use this block, see Transfer phone calls.
Integrate Voice with Aircall
This section takes you through how to transfer calls between Ada and
Aircall.
In Aircall, you can forward calls to an external number to send inbound
calls to your Ada bot. For more information, see Using Aircall's Forward to External Number Feature at
Aircall's documentation.
If a caller using your bot needs to escalate to a human agent, you can
hand them off directly to a number you have associated with a particular
agent group, using the Transfer Phone Call block. Transferring the
caller directly to a human provides the best experience, so they don't
have to go through the frustration of going through a second menu after
they get transferred.
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.
-
Configure your agent number in Aircall. To learn how to do this, see
Creating a New Number in Aircall
at Aircall's documentation.
-
Put that phone number into an Answer using a Transfer Phone Call
block. For more information on how to use this block, see Transfer phone calls.
Integrate Voice with a different CCaaS provider
You can use a variety of CCaaS providers with Voice. This section
contains general instructions on how to set them up.
In this scenario, callers call a phone number associated with your CCaaS
provider. Then, you can use your CCaaS provider to transfer calls to our
Ada bot's phone number.
Benefits | Drawbacks |
---|
Callers can continue to call the existing customer service phone number that's already set up in your CCaaS The whole call will be reflected in your CCaaS platform’s analytics Allows you to control which calls are sent to Ada and which are not (e.g., if you only want to send certain call types or a set percentage of calls to Ada) | Your CCaaS may charge an ongoing per-minute fee for these calls |
In this scenario, callers directly call the phone number you purchased
in your Twilio account to use with Ada.
Benefits | Drawbacks |
---|
Ada acts as the “front door” for all calls You won’t be charged an ongoing per minute fee by your CCaaS for these calls unless an escalation to a human agent is required | If you have an existing customer service phone number, you need to replace that number with the new number that you purchased in Twilio for your bot |
This scenario is identical to option 2a, but instead of requiring
callers to call a new customer service phone number, you port an
existing phone number to Twilio. you can find instructions on how to do
this at Porting a Phone Number to Twilio
at Twilio's documentation.
Benefits | Drawbacks |
---|
Ada acts as the “front door” for all calls You won’t be charged an ongoing per minute fee by your CCaaS for these calls unless an escalation to a human agent is required Callers can continue to call your existing customer service phone number | Porting a phone number can take up to four weeks On your porting date, you have to coordinate configuring the phone number with your Ada account to avoid interrupted service |
To configure SIP transfers in your bot, you have to start by configuring
your Ada bot and your Twilio account, followed by your SIP provider.
In your bot settings, make sure your bot is using the SIP Address
setting instead of Phone Number. For more information, see Configure a SIP address with your bot.
Configure SIP authentication for your domain, which determines how
Twilio accepts SIP traffic.
This procedure takes you through configuring IP Access Control Lists
(ACLs), so Twilio only accepts SIP traffic that originates from your
specified IPs, but you can also choose to configure credential lists
instead, so it only accepts traffic from specific usernames and
passwords. For more information, see Inbound - Sending SIP to Twilio
at Twilio's documentation.
-
Log into Twilio Console.
-
In your Twilio account, go to Develop > Voice > Manage
> IP access control lists, then click Create new Access
Control List. The Create new Access Control List window opens.
-
In the Create new Access Control List window, fill in the following
fields:
-
Under ACL Friendly Name, enter a name (e.g.,
All IP addresses
).
-
Under IP Address Range Friendly Name, enter a name (e.g.,
0.0.0.0 - 127.255.255.255
).
-
Under CIDR Network Address, enter 0.0.0.0
.
-
Under Range, enter 1
.
-
Click Create new ACL to save the list and close the window.
Then, click Create new IP Address Range to add an additional IP
range to the list. The Add Ip Address Range window opens.
-
In the Add Ip Address Range window, fill in the following fields:
-
Under CIDR Network Address, enter 128.0.0.0
.
-
Under Range, enter 1
.
-
Under IP Address Range Friendly Name, enter a name (e.g.,
128.0.0.0 - 255.255.255.255
).
-
Click Add IP Address Range to save the range and close the
window.
-
Next, configure authentication for your SIP domain. Go to
Develop > Voice > Manage > SIP domains. You
should see the SIP domain that you entered when you configured SIP
in your Ada settings. Click the domain.
-
Under Voice Authentication, beside IP Access Control Lists,
select the IP Access Control List you created.
-
Under Secure Media, click the toggle so it says Enabled.
-
Click Save.
You can also transfer calls from your Ada bot to a SIP address using the Transfer Call block. For information on how to do this, see Transfer phone calls.
The configuration steps to connect your SIP provider to your bot vary
depending on SIP provider. Click a section to expand the full
instructions, or contact Ada if you need assistance with a different
provider.
Configure SIP transfers from Genesys Cloud
-
Log into your Genesys Cloud account, then go to the Admin tab.
-
Under Telephony, click Trunks.
-
On the External Trunks tab, click Create New. The Create
External Trunk page opens.
-
On the Create External Trunk page, fill in the following fields:
-
Under External Trunk Name, enter a name (e.g.,
Ada Voice trunk
).
-
Under Type, select BYOC Carrier and Generic BYOC
Carrier.
-
Under Protocol, select TLS.
-
In the Inbound section, fill in the following fields:
-
Under Number Plan Site, select your main Genesys site. For
more information, see About sites at
the Genesys Cloud Resource Center.
-
Under Inbound SIP Termination Identifier, enter a name
(e.g., ada-voice
).
-
You can leave the Inbound SIP Termination Header field
blank.
-
In the Outbound section, fill in the following fields:
-
Under Outbound SIP Termination FQDN, enter your SIP domain.
-
Under Outbound SIP DNIS, enter admin
.
-
Under SIP Servers or Proxies, in the Hostname or IP
Address field, enter your SIP domain, and in the Port
field, enter 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.
168.86.128.0/18
54.172.60.0/30
54.172.60.0/23
34.203.250.0/23
54.244.51.0/30
54.244.51.0/24
54.171.127.192/30
54.171.127.192/26
52.215.127.0/24
35.156.191.128/30
35.156.191.128/25
3.122.181.0/24
54.65.63.192/30
54.65.63.192/26
3.112.80.0/24
54.169.127.128/30
54.169.127.128/26
3.1.77.0/24
54.252.254.64/30
54.252.254.64/26
3.104.90.0/24
177.71.206.192/30
177.71.206.192/26
18.228.249.0/24
-
Click the Protocol section of the page to expand it. Then, under
User to User Information (UUI), do the following:
-
Click the UUI Passthrough toggle so it's Enabled.
-
Under Type, select User-to-User PD Attribute.
-
Under Encoding Format, select Ascii.
-
Under Transfer, click the Take Back and Transfer and
Release Link Transfer (RLT) toggles so they're both Enabled.
-
Click Save External Trunk.
-
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 Number Plans tab, click New Number Plan.
-
On the page that opens, fill in the following fields:
-
Under Number Plan Name, enter a name.
-
Under Match Type, select E.164 Number List.
-
Under Numbers, enter the range of numbers that, when dialed
from your system, will transfer to Ada Voice. These can be
placeholders, and they can be the same number to indicate that
the range only contains one phone number.
-
Under Classification, choose a classification.
-
Click Save Number Plans.
-
On the Outbound Routes tab, click New Outbound Route.
-
On the page that opens, fill in the following fields:
-
Under Outbound Route Name, enter a name.
-
Under Classifications, choose one or more classifications.
-
Under External Trunks, click Select External Trunks and
select the SIP trunk you created.
-
Under Classifications, add a classification for your Outbound Route. This must match the Classification that you used for
your Number Plan.
-
Click Save Outbound Routes.
-
In Genesys Cloud, on the Admin tab, click Architect.
-
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 callers to Ada
Voice. The New Task pane opens.
-
Under Toolbox, click Data to expand it, then drag the Set
UUI Data action into the New Task pane, into the Drag action
here box. The Set UUI Data pane opens.
-
In the Set UUI Data pane, under Outgoing UUI Data, beside the
Enter value field, click the menu that has an icon of a document
on it, and select String Builder.
-
Click the same menu again and click Expression. The String
Builder window opens. In the String Builder window, under
Expression, enter this string:
Append("phone_number=", Replace(Call.Ani, "tel:", ""))
This is a Genesys expression that extracts the caller'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 Number, enter the number you added in your number plan
earlier.
-
Under Perform release link transfer, select True.
-
Under Audio, under Pre-Transfer Audio and Failed
Transfer Audio, enter messages for Genesys to play to callers
before transferring them and to let them know the transfer
failed, respectively.
-
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.
Have any questions? Contact your Ada team—or email us at [email protected].