Greetings and Handoffs
When your AI Agent answers a phone call, it will start off the conversation with a Greeting.
If it needs to escalate the conversation to a human agent, it will do so using a Handoff.
You can use our structured flow builder to create your Greeting and your Handoff-which uses modular blocks to define the logic that you want your AI Agent to follow and exactly what it should say.
Build and adapt your Greeting and Handoff(s)
Are you ready to create your Voice AI Agent Greeting and Handoff? While there are some differences between how Messaging and Voice content work in Ada, you’ll notice that there are a lot of similarities between the two.
Understand how content is organized
In AI Agents that have Voice enabled, each Greeting and Handoff is divided into two tabs: Messaging and Voice. Under each tab, you can tweak the content for that specific channel.
Create a Greeting for Voice
In addition to greeting end users with a friendly and helpful AI Agent persona, make two things clear in your greeting:
- An AI Agent is speaking, not a human
- The call is being recorded
Follow these best practices to maximize caller engagement and prevent abandonment or premature escalation:
- Keep your Greeting short and to-the-point
- Avoid capturing information from the end user upfront unless absolutely critical
- Encourage the end user to ask an open ended, descriptive question to kick off the conversation
Block differences in Voice versus Messaging
This section details the differences between how some blocks work in Voice versus Messaging.
Capture block
When you’re capturing information using the Capture block, it’s important to think about the most accurate way of getting that information from the end user, and to communicate clearly what you want them to do.
There are four ways you can validate end user information. For all of them, make sure you mention the input you’re expecting so the end user knows what to do, along with any other guidelines they might need.
When end users are entering numbers into the dialpad, they can use the #
key to indicate that they’re done. Otherwise, your AI Agent assumes they’re
done five seconds after the last digit the end user entered.
Smart Capture block
In some cases, Voice AI Agents can struggle to accurately pick out responses from what end users say. You might find that your AI Agent saves a whole phrase and says something like “hello, my name is Rob” instead of “hello, Rob,” or that it has trouble accurately understanding the difference between a “b” or “p” when you’re trying to capture a booking reference number.
To increase the chances that your AI Agent can accurately understand how to pick relevant information out of what the end user says, you can use the Smart Capture block, which uses generative AI to understand what they said and save a more accurate output.
When you use the Smart Capture block, your AI Agent becomes better at picking out information from the end user’s response. When a end user says something like “‘a,’ as in ‘apple,’” it’s able to pick out the correct letter, and if they ask the AI Agent to repeat something, it’s smart enough to repeat it rather than try to parse their question as a response.
The Smart Capture block only proceeds when the end user has verified that what it captured is correct; if it isn’t, it tries again. Alternatively, if the end user wants to exit the capture state, they can ask an unrelated question to do something else.
The Smart Capture block is only available for Voice Greetings and Handoffs.
Here’s how to use the Smart Capture block:
-
From the block drawer in your Greeting or Handoff find the Smart Capture block and drag it into your response.
-
Under Question, enter the question your AI Agent will ask to prompt the end user to provide information.
-
Under Capture Type, select the format you want to capture the data in, so your AI Agent can better validate the end user’s response.
Depending on your selection, additional options to configure may appear:
-
If you selected Choose from a list as the capture type, the List options section appears. For each option the end user can choose from, click Add option and enter the value that they can choose.
When end users encounter this block, your AI Agent will read the entire list of available options to them before they make their selection. Unlike the List Option block, you can’t choose to only read out the options if the capture is unsuccessful the first time.
-
For some capture types, you can specify how you want the end user’s response to be formatted. When you select those capture types, the Output the captured information in a specific format toggle appears. You can toggle the setting on, then add instructions in the box that appears.
You can specify a format using existing conventions (e.g., “MMMM/DD/YYYY”), or you can use plain language (e.g., “replace all spaces with underscores”).
-
If you capture a Number, Numeric String, or Phone Number from an end user, your end users will be able to provide the value by speaking it or by entering it into their phone’s dial pad. Before capturing a value, your AI Agent will automatically tell end users that they can either say the number or enter it into their dial pad.
-
-
Under Save Capture as Variable, select a variable to save the end user’s response in.
-
Choose to toggle the Skip capture if the variable already has a value setting on or off. That way, if the variable you chose already has a value associated with it, your AI Agent won’t ask the end user to provide that information again.
-
Click Save.
Transfer Call block
With the Transfer Call block, you can transfer the phone call outside of the Ada. Most of the time, this means handing off the call to a human agent.
Note that the call transfer takes place whenever the Transfer Call block appears in a flow. So if you have any blocks below the Transfer Call block, your AI Agent won’t execute those blocks.
When configuring the Transfer Call block, you will need to select where you are transferring the call to. Your options include Phone number, SIP address, Amazon Connect, Aircall, or Twilio. Which of these you select will depend on which contact center platform or technology you are integrating Ada into. For more information, see Integrate your Voice AI Agent with your contact center technology
- If you selected Phone number from the Transfer to drop down, you will see a Phone number field. Enter a phone number or insert the variable containing the phone number you want to transfer the call to.
- If you selected SIP address from the Transfer to drop down, you will see a SIP address field. Enter a SIP address or insert the variable containing the SIP address you want to transfer the call to.
-
The Include a User-to-User header when transferring to the SIP address checkbox will also appear. You can select it to provide additional information with the SIP transfer, so the human agent receiving the call has additional context, or to use when you’re routing the call to the appropriate department or group.
-
In the Key fields that appear, enter names for the data fields that you want to include when transferring the phone call.
-
In the Value fields, enter the value that you want to send for each Key. You can use variables to dynamically populate these for an end user.
-
Click Add another row to add more key,value pairs to the transfer, or hover over a pair and click Delete
to remove it.
- If you selected Amazon Connect from the Transfer to drop down, you will see an Amazon Connect destination queue field. Enter the queue ID of the queue in Amazon Connect that you want to transfer the phone call to. For more information on integrating with Amazon Connect, see Integrate Voice with Amazon Connect in Integrate your Voice AI Agent with your contact center technology at Ada’s Help Docs.
- If you selected Aircall from the Transfer to drop down, you will see a Destination type field. Select if you want to transfer to a Number, Team, or User in Aircall. Or, if you just want the call to continue in the Aircall Smartflow that was used to transfer the call to Ada, select None. For more information on integrating with Aircall, see Integrate with Aircall in Integrate your Voice AI Agent with your contact center technology at Ada’s Help Docs.
- If you selected Twilio from the Transfer to drop down, Ada will drop from the call and continue in Twilio. For more information on integrating with Twilio, see Integrate Voice with Twilio in Integrate your Voice AI Agent with your contact center technology at Ada’s Help Docs.
- The Pass additional data to Twilio when transferring the call checkbox will also appear. You can select it to provide additional information back to Twilio when disconnect from the call, so the human agent receiving the call has additional context, or to use when you’re routing the call to the appropriate department or group.
- In the Key fields that appear, enter names for the data fields that you want to include when transferring the phone call.
- In the Value fields, enter the value that you want to send for each Key. You can use variables to dynamically populate these for an end user.
The user-to-user header that contains these key,value pairs shouldn’t exceed 400 characters.
End Call block
The End Call block is a simple one - if you put it into a flow, it disconnects the call. Generally, it’s a good idea to let the end user be the one to end the call, but this block can be helpful at the end of your content if you confirm with the end user that they don’t need any further assistance.
Note that your AI Agent ends the call when the flow gets to the End Call block. If you have any blocks below it in a flow, they will not be executed.
Minimize pauses while your AI Agent performs backend actions in a Greeting or Handoff
Some blocks, such as the HTTP Request block, perform backend actions that take some time to complete. In some cases, this can cause pauses while Ada is performing that action, during which a end user might wonder if your AI Agent had heard the last thing they said or become frustrated.
You can easily mask this latency: immediately before blocks that perform backend actions, place one or more Speak blocks. That way, the backend actions can start processing while your AI Agent is speaking.
Test your AI Agent’s Voice content
While building out Voice content, it’s a good idea to test how your flows will sound to end users.
Location metavariables depend on the end user initiating the phone call, and don’t work if Twilio calls them instead. As a result, if your structured content depends on metavariables being populated, you may have to hardcode them using a Set Variable block so you can test it properly.
- In the top right corner of the flow that you want to test:
- Greetings: Click Test answer
- Handoffs: Click Test handoff A test chat window appears.
-
At the top of the test chat window, click the Ada Web Chat dropdown and click Voice.
-
Enter your phone number and click Call. Your AI Agent calls you and serves you your structured content. From there, you can hang up, or continue testing your AI Agent.
Test your end user experience
You can test your AI Agent end-to-end by clicking on the Test AI Agent button at the bottom of the side navigation.