https://retellai.com/?utm_source=discord&utm_medium=seo logo
during the transfer , sometimes there is hold musi...
# ❓・ai-evy-support
k
@AI Evy during the transfer , sometimes there is hold music and sometimes there is no music , i have selected relaxing sound in transfer function during transfer , what could be issue
a
Thanks for tagging me @kartik. I'll look through relevant sources and get back to you shortly.
### Answer On-hold music is a warm transfer specific setting. [(1) ]() [(2) ]() The caller only hears on-hold music during warm transfers, not cold transfers. If you're experiencing inconsistent hold music behavior, check the following: 1. **Verify transfer type**: Ensure you're using warm transfer and not cold transfer. Cold transfers don't play on-hold music—the call is simply transferred to the destination. 2. **Human detection timing**: With warm transfers, the on-hold music plays while the caller waits during the transfer process. If human detection succeeds very quickly (or fails) , the hold music duration may vary. 3. **Agent detection timeout**: The on-hold music plays while the AI waits to determine whether the transfer target is a human. The default timeout is 30 seconds. If the transfer target answers quickly, the music plays for a shorter duration. If you're certain warm transfer is configured but still experiencing no music on some calls, I'd recommend checking the call logs for those specific calls to see if there are any differences in how the transfer completed (e.g., faster human detection, transfer failures, etc.) . [(3) ]()
​ To learn more, see the sources I considered: [[1] Transfer call](https://docs.retellai.com/build/single-multi-prompt/transfer-call) [[2] Call Transfer Node](https://docs.retellai.com/build/conversation-flow/call-transfer-node) [[3] Debug call transfer failure](https://docs.retellai.com/reliability/call-performance) ​
Feel free to tag @AI Evy with additional questions. I also appreciate feedback, it helps me improve.
k
@AI Evy its a warm transfer through transfer agent , and it went to voicemail
a
Thanks for the follow-up, @kartik. I'll get back to you soon.
### Answer --- There's an important distinction to clarify: Agent Transfer (also known as Agent Swap) is different from Call Transfer (warm/cold transfer to a phone number) . [(1) ]() Agent Transfer transfers the conversation from one AI agent to another AI agent—it does not involve dialing a phone number or reaching a human agent directly. The on-hold music and warm transfer settings (like human detection, whisper messages, etc.) apply specifically to the Call Transfer function, which transfers to a phone number where voicemail can occur. [(2) ]() If your goal is to transfer to a human agent's phone number with on-hold music and voicemail handling, you should use the Transfer Call function instead of Agent Transfer. For handling voicemail during a warm transfer to a phone number, the warm transfer feature includes automatic human detection that confirms a human has answered before completing the transfer—this helps prevent failed connections to voicemail. You can also configure an agent detection timeout to control how long the AI waits for the agent to pick up before triggering fallback actions. If you're using Agent Transfer but need warm transfer behavior with on-hold music to a human's phone, switch to the Transfer Call function and configure the warm transfer settings there.
​ To learn more, see the sources I considered: [[1] Agent Transfer](https://docs.retellai.com/build/single-multi-prompt/transfer-agent) [[2] Warm Transfer vs Cold Transfer - The AI Advantage in Call Centers | Retell AI](https://www.retellai.com/blog/effortless-handoffs-with-retell-ais-warm-transfer-feature) ​
Feel free to tag @AI Evy with additional questions. I also appreciate feedback, it helps me improve.
k
@AI Evy i am using transfer call function , and selected chat with human option , with the transfer agent selected below
a
Thanks for the follow-up, @kartik. I'll get back to you soon.
### Answer Based on your description, you're using the Transfer Call function with warm transfer and a transfer agent. The on-hold music setting is specifically a warm transfer setting that plays audio to the caller while they are on hold. [(1) ]() [(2) ]() A few things to check regarding inconsistent hold music: 1. **On-hold music configuration**: The on-hold music is "the audio played to the caller while they are on hold. The default is a standard ringtone." If you selected "relaxing sound," confirm that setting saved correctly. 2. **Human detection and timing**: With warm transfers, the hold music plays while the AI attempts to detect if a human is present after the transfer target answers. If the call goes to voicemail quickly, the hold music duration may be very short or not play at all. 3. **Transfer agent behavior**: Another user reported a similar issue where the transfer agent communicates before transferring but doesn't complete the transfer. One suggestion was to ensure the prompt explicitly instructs the agent to "after answer always call function 'transfer_call'". [(3) ]() 4. **Voicemail scenario**: When the transfer goes to voicemail, the human detection may fail quickly (since no human is detected) , which could affect whether/how long the hold music plays. The agent detection timeout (default 30 seconds) controls how long the AI waits to determine if a human answered. [(1) ]() [(2) ]() If the inconsistency persists, I'd recommend checking the detailed call logs for calls with and without hold music to
identify any differences in how the transfer completed.
​ To learn more, see the sources I considered: [[1] Transfer call](https://docs.retellai.com/build/single-multi-prompt/transfer-call) [[2] Call Transfer Node](https://docs.retellai.com/build/conversation-flow/call-transfer-node) [[3] Issue with the Transfer agent not completing the transfer](https://discord.com/channels/1186424376300679209/1444633634744045703) ​
Feel free to tag @AI Evy with additional questions. I also appreciate feedback, it helps me improve.
k
@AI Evy what is Ring Duration
a
Thanks for the follow-up, @kartik. I'll get back to you soon.
### Answer Ring Duration (
ring_duration_ms
) controls how long the phone rings during outbound calls and call transfers before timing out. [(1) ]() [(2) ]() [(3) ]() Key details: - **Default value**: 30,000 ms (30 seconds) - **Valid range**: 5,000 to 90,000 ms (5 seconds to 90 seconds) - **Applies to**: Both outbound call ringtime and call transfer ringtime Example configuration:
Copy code
javascript
"ring_duration_ms": 30000
[(2) ]() [(3) ]() This setting determines how long the system waits for someone to answer before the call is considered unanswered. You can adjust it when creating or updating a voice agent via the API or dashboard settings.
​ To learn more, see the sources I considered: [[1] Get Agent Versions](https://docs.retellai.com/api-references/get-agent-versions) [[2] Update Voice Agent](https://docs.retellai.com/api-references/update-agent) [[3] Get Voice Agent](https://docs.retellai.com/api-references/get-agent) ​
Feel free to tag @AI Evy with additional questions. I also appreciate feedback, it helps me improve.
k
@AI Evy so if i set it at 20 seconds , but the agent picks it up in 10 seconds but because its warm transfer , ai is explaining and the explanation takes 30 seconds , will the call get connected
a
Thanks for the follow-up, @kartik. I'll get back to you soon.
### Answer Yes, the call will get connected in that scenario. Ring duration and warm transfer activities (like whisper messages, human detection, three-way messages) operate at different stages: 1. Ring duration applies to how long the phone rings before someone answers. [(1) ]() [(2) ]() Once the transfer target picks up (at 10 seconds in your example) , the ring duration is no longer relevant—the call has been answered. 2. After the transfer target answers, the warm transfer features kick in: - The AI can deliver a whisper message (spoken privately to the transfer target before connecting the original caller) [(3) ]() [(4) ]() - Human detection checks if a human is present - A three-way message can be spoken to both parties once the connection is established 3. Agent detection timeout is the setting that controls how long the AI waits after the transfer target answers to determine if a human is present. The default is 30 seconds. So in your scenario: the agent answers at 10 seconds (within the 20-second ring duration) , then the AI proceeds with the warm transfer activities (whisper message, human detection, etc.) . As long as human detection succeeds within the agent detection timeout (default 30 seconds) , the original caller will be connected. The whisper/explanation time doesn't conflict with ring duration—they're sequential steps.
Feel free to tag @AI Evy with additional questions. I also appreciate feedback, it helps me improve.