Autonomous silence detection
Technical documentation for the autonomous_silence_handling feature.
Overview#
Autonomous Silence Handling is a feature that allows the AI agent to intelligently detect and respond to prolonged silence during a call. When enabled, the agent will:1.
Detect when the caller has stopped speaking
2.
Prompt the caller to check if they're still on the line
3.
After multiple attempts without response, gracefully end the call
This prevents calls from hanging indefinitely when callers walk away, get disconnected, or put the phone down.Configuration#
Agent Schema#
{
"autonomous_silence_handling": true
}
| Field | Type | Default | Description |
|---|
autonomous_silence_handling | boolean | false | Enable/disable autonomous silence detection |
When autonomous_silence_handling is enabled, the system automatically adds the end_call tool to the agent's toolset if not already present. This ensures the agent can hang up after detecting prolonged silence.How It Works#
Timing Configuration#
| Parameter | Value | Description |
|---|
first_silence_check | 7 seconds | Time before first prompt after silence detected |
silence_check_interval | 12 seconds | Time between subsequent prompts |
max_silence_attempts | 3 | Maximum prompts before instructing agent to hang up |
State Machine#
[User Speaking] → [User Away] → [Silence Check 1] → [Silence Check 2] → [Silence Check 3] → [Hang Up]
↑ │ │ │ │
└──────────────┴─────────────── ─┴───────────────────┴───────────────────┘
(User speaks → reset timer)
Event Flow#
1.
User State: "away" - Silence timer starts
2.
7 seconds pass - First silence check triggered
3.
Agent speaks - "Are you still there?" (contextual)
4.
12 more seconds - Second silence check
5.
Agent speaks - "I'm still here if you need me"
6.
12 more seconds - Third and final check
7.
Agent speaks - Brief goodbye + calls end_call tool
Contextual Prompts#
The agent receives different instructions based on the attempt number:IMPORTANT: No speech detected from caller. This is attempt 1 of 3.
Based on context: if they said they need to look something up, say you'll wait.
Otherwise, ask a short question to check if they are still on the line.
IMPORTANT: Still no speech from caller. This is attempt 2 of 3.
Ask one more time if they are still there.
If no response after this, you will need to end the call.
IMPORTANT: No speech detected from caller for a long time.
This is attempt 3 of 3.
You must now say a brief goodbye and immediately use end_call to hang up.
Key Behaviors#
1.
No check while agent speaking: Silence timer pauses when agent is speaking
2.
Reset on user speech: Any detected user speech resets the timer and attempt counter
3.
Graceful termination: Agent is instructed to say goodbye before hanging up
4.
Context-aware: First prompt considers conversation context (e.g., "let me look that up")
Use Cases#
Good For#
Reception/Front Desk: Callers may walk away to check something
Customer Support: Long hold times while customers search for info
Appointment Booking: Callers checking their calendars
Consider Disabling For#
Emergency Lines: May need to stay connected even during silence
Listening Services: Where silence is expected and acceptable
IVR/Menu Systems: Where users navigate with keypresses, not speech
Interaction with Other Features#
With voicemail_detection#
Both can be enabled simultaneously. Voicemail detection triggers first (on initial greeting), while silence handling activates during the conversation.With max_duration_seconds#
If max_duration_seconds is set, the call will end at that time regardless of silence handling state.If the agent already has end_call in its tools, no duplicate is added. The silence handling instructions simply tell the agent to use the existing tool.Webhook Events#
When a call ends due to silence handling:{
"message": {
"type": "end-of-call-report",
"call": {
"status": "ended"
},
"summary": "Call ended after no response from caller..."
}
}
The status-update webhook will show status: "ended" (not a special silence-related status).Troubleshooting#
Agent Not Detecting Silence#
Verify autonomous_silence_handling: true is in the agent configuration
Check the call transcript to see if silence detection prompts appear
Ensure STT (Speech-to-Text) is properly configured to detect when user stops speaking
Agent Ending Calls Too Quickly#
The 7-second initial delay should prevent premature endings
Review the call transcript to see timing of silence prompts
Note that timing parameters (7s, 12s, 3 attempts) are currently fixed
Agent Not Hanging Up After 3 Attempts#
The end_call tool is automatically added when silence handling is enabled
Review the end-of-call-report to see if the agent attempted to end the call
The LLM may occasionally not follow instructions perfectly - this is expected behavior with AI agents
Modified at 2026-01-19 12:14:14