Sal
04/14/2025, 7:22 PM{
"destination": {
"message": "I believe you're looking for Liz. I'll transfer you to her now. Please hold.",
"transfer_plan": {
"mode": "warm-transfer-with-summary",
"summary_plan": {
"enabled": true,
"messages": [
{
"role": "system",
"content": "Please provide a summary of the call."
},
{
"role": "user",
"content": "Here is the transcript:\n\n{{transcript}}\n\n"
}
]
}
},
"type": "number",
"number": "+MYNUMBER",
"number_e_1_6_4_check_enabled": true
}
}
.
I've tried warm-transfer-with-summary in the setup you see above, and also a fixed message like this:
"transferPlan": {
"mode": "warm-transfer-with-message",
"message": "Hey, this call has been forwarded through Vapi."
},
It just performs a blind transfer, as soon as +MYNUMBER picks up, it just connects the 2 calls with no message.
Here are the relevant messages from the artifact:
{
"role": "tool_calls",
"time": 1744658355741,
"message": "",
"toolCalls": [
{
"id": "call_qH9ZEQi3ZlxGFjIoHsfhRyh6",
"type": "function",
"function": {
"name": "dynamicDestinationTransferCall",
"arguments": "{}"
}
}
],
"secondsFromStart": 21
}
{
"name": "dynamicDestinationTransferCall",
"role": "tool_call_result",
"time": 1744658362514,
"result": "",
"toolCallId": "call_qH9ZEQi3ZlxGFjIoHsfhRyh6",
"secondsFromStart": 27.773
}
For some reason, my tool_call_result never returns "result": "success" like it used to. It just returns a blank result.Vapi Support Bot
04/14/2025, 7:24 PMtransfer_plan
and summary_plan
(snake_case), but Vapi might be expecting transferPlan
and summaryPlan
(camelCase). This casing mismatch could be causing the issue, as mentioned in [Vapi documentation](https://docs.vapi.ai/call-forwarding).
2. Is your webhook response properly formatted with the required toolCallId
and result
fields? According to [Vapi's tools documentation](https://docs.vapi.ai/tools-calling), your response should be structured like:
json
{
"results": [
{
"toolCallId": "X",
"result": {
"destination": {
// your destination object
}
}
}
]
}
3. Do you have the 'phone-call-control' server event enabled? This can interfere with Vapi's call forwarding logic.
4. Are you seeing any errors in your Vapi logs related to this call ID? This could provide more insight into what's happening during the transfer attempt.
5. Is your SIP system configured to handle SIP REFER messages? Vapi uses these for transfers, and incompatibility could cause issues.
Sources:
- [Vapi Call Forwarding Documentation](https://docs.vapi.ai/call-forwarding)
- [Vapi Tools Calling Documentation](https://docs.vapi.ai/tools-calling)
- [Dynamic Call Transfers Documentation](https://docs.vapi.ai/phone-calling/dynamic-call-transfers)Sal
04/14/2025, 7:42 PM"results": [
{
"toolCallId": "call_WkMZ8xVl8nxKV6ZQxdzNMS69",
"result": {
"destination": {
"message": "I'm transferring you to Liz Reyes. Please hold.",
"transferPlan": {
"mode": "warm-transfer-with-message",
"message": "Hey, this call has been forwarded through Vapi."
},
"type": "number",
"number": "+12016944225",
"numberE164CheckEnabled": true
}
}
}
]
}
It broke the transfer functionality. Now instead of a blind transfer, it just doesn't transfer at all.
It does make the tool_call_result a little different. it returns a result that isn't blank:
{
"name": "dynamicDestinationTransferCall",
"role": "tool_call_result",
"time": 1744659432551,
"result": "No transfer destination returned.",
"toolCallId": "call_WkMZ8xVl8nxKV6ZQxdzNMS69",
"secondsFromStart": 11.429
}
3. phone-call-control is disabled
4. No errors observed. Vapi considers the call a "Pass" for the success evaluation, no failed webhooks.
5. Not using SIP, this is all PSTN to PSTN now.Sal
04/16/2025, 3:34 PMSahil
04/17/2025, 9:25 PMSal
05/01/2025, 5:04 PM"destination": {
"message": "I'm transferring you to Liz. Please hold.",
"transferPlan": {
"mode": "warm-transfer-with-summary",
"summaryPlan": {
"enabled": true,
"messages": [
{
"role": "system",
"content": "Please provide a summary of the call."
},
{
"role": "user",
"content": "Here is the transcript:\n\n{{transcript}}\n\n"
}
]
}
},
"type": "number",
"number": "+{{TWILIO_NUMBER}}",
"numberE164CheckEnabled": true
}
}
This occurred on callid 49361ce7-f4a4-4c68-832d-8cce214a452b
Once I pick up on the twilio number, it blind transfers.Vapi Support Bot
05/01/2025, 5:07 PMjson
"transferPlan": {
"mode": "warm-transfer-wait-for-operator-to-speak-first-and-then-say-message",
"message": "This is a warm transfer from Vapi with customer information..."
}
This alternative mode waits for the operator to speak first before delivering your warm message, which may help prevent the blind transfer behavior.
Source:
- [Discord conversation about warm transfers](https://discord.com/channels/1211482211119796234/1316539646808686602)Sahil
05/01/2025, 10:36 PMSahil
05/01/2025, 10:37 PMSal
05/02/2025, 2:09 PMSahil
05/03/2025, 6:11 AM