Transfer tool not working every time.
# support
n
I have noticed that my call transfer function isn’t being called every single time and the user just sits there in silence even after it reads the transfer phrase. Not sure what’s going on.
v
Suggestion: Check that your
transferCall
function description is clear and that your assistant's system prompt explicitly instructs when to use it. For example:
Copy code
json
"function": {
  "name": "transferCall",
  "description": "Use this function to transfer the call. Only use it when following instructions that explicitly ask you to use the transferCall function. DO NOT call this function unless you are instructed to do so."
}
Update your assistant's prompt to say, for example: “If the user asks for sales, call the
transferCall
function with
+1234567890
.”
This helps ensure the function is triggered reliably when needed. For more, see the [Call Forwarding documentation](https://docs.vapi.ai/call-forwarding). Source: - [Call Forwarding documentation](https://docs.vapi.ai/call-forwarding)
l
Issue: The call transfer tool isn’t triggering every time. Sometimes after the transfer phrase is played, the call just stays silent without completing the transfer. Observation: The transfer function is not called consistently. Happens randomly — sometimes it works, sometimes not. User remains on the line with silence after the transfer message. Possible Causes: 1. Transfer API or webhook timing out or returning a hidden error. 2. Network delay or session mismatch causing the transfer trigger to fail. 3. Call context not properly passed to the transfer handler. 4. Missing await or async issue in the transfer call function. Suggested Fixes: Add logs before and after the transfer call to confirm execution flow. Ensure the transfer function returns a valid promise and is awaited. Check server logs for failed or incomplete transfer attempts. Validate transfer endpoint or number configuration. Try adding a short delay before executing the transfer to avoid race conditions.
c
Hi Newlimitstyler, To implement dynamic call transfers using Vapi, you'll need to set up a custom tool that allows you to dynamically determine call transfer destinations. Here's a concise implementation guide: 1. **Create a Custom Tool**: - Go to Tools in your Vapi dashboard. - Click Create Tool and select Custom type. - Name it
transfer_call
and set necessary parameters like
department
and
reason
. 2. **Setup Your Server**: - Your server needs to handle webhook events and process the
controlUrl
for call transfers. Ensure your server is publicly accessible. 3. **Define Business Logic**: - Your server should use the
controlUrl
for executing the transfer by making a POST request. - Decide on destinations based on parameters like department. 4. **Assistant Configuration**: - Add the custom tool to your assistant and define conditions for its usage. 5. **Testing**: - Assign a phone number to test the call transfers. - Ensure logging to troubleshoot issues like errors in HTTP requests or destination format validity. You can find more details in the [dynamic call transfers guide](https://docs.vapi.ai/calls/call-dynamic-transfers). Ensure your webhook server is correctly set and verify API calls with the correct headers and destination formats. If problems persist, checking for errors in your server logs and verifying webhook configurations can be helpful.
3 Views