You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: fern/calls/customer-join-timeout.mdx
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,13 +1,13 @@
1
1
---
2
-
title: Customer join timeout
2
+
title: Customer Join Timeout
3
3
subtitle: Configure web call join timeout for better success rates
4
4
slug: calls/customer-join-timeout
5
5
description: Set maximum time for users to join web calls before automatic termination
6
6
---
7
7
8
8
## Overview
9
9
10
-
**Customer join timeout** sets the maximum time users have to join a web call before it's automatically terminated. This parameter helps you optimize call success rates by accounting for real-world connection challenges.
10
+
**Customer Join Timeout** sets the maximum time users have to join a web call before it's automatically terminated. This parameter helps you optimize call success rates by accounting for real-world connection challenges.
11
11
12
12
**You'll learn to:**
13
13
@@ -269,7 +269,7 @@ A user attempting to join needs:
269
269
Start with 30-60 seconds and adjust based on your success rate analytics.
270
270
</Tip>
271
271
272
-
### "Meeting has ended" message
272
+
### Meeting has ended message
273
273
274
274
This message appears when a call ends naturally and is **informational only**—not an error.
Copy file name to clipboardExpand all lines: fern/tools/voicemail-tool.mdx
+63-43Lines changed: 63 additions & 43 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,14 +5,17 @@ slug: tools/voicemail-tool
5
5
---
6
6
7
7
<Warning>
8
-
**Beta Feature**: The voicemail tool is currently in beta. Features and behavior may change as we continue to improve this functionality based on user feedback.
8
+
**Beta Feature**: The voicemail tool is currently in beta. Features and
9
+
behavior may change as we continue to improve this functionality based on user
10
+
feedback.
9
11
</Warning>
10
12
11
13
## Overview
12
14
13
15
The voicemail tool gives your assistant direct control over when and how to leave voicemail messages. Unlike [automatic voicemail detection](/calls/voicemail-detection), which operates independently of your assistant, this tool allows your assistant to decide when it's reached a voicemail system and leave a configured message.
14
16
15
17
**Key benefits:**
18
+
16
19
-**Maximum flexibility** - Assistant decides when and what to say
17
20
-**Cost-effective** - Only triggers when needed
18
21
-**Context-aware** - Messages can be customized based on conversation
@@ -28,7 +31,10 @@ When you add the voicemail tool to your assistant:
28
31
4. The call ends automatically after message delivery
29
32
30
33
<Note>
31
-
This approach differs from [automatic voicemail detection](/calls/voicemail-detection), which detects voicemail at the system level. The voicemail tool puts detection and response entirely in the assistant's hands.
34
+
This approach differs from [automatic voicemail
35
+
detection](/calls/voicemail-detection), which detects voicemail at the system
36
+
level. The voicemail tool puts detection and response entirely in the
37
+
assistant's hands.
32
38
</Note>
33
39
34
40
## Configuration
@@ -71,30 +77,31 @@ import { VapiClient } from "@vapi-ai/server-sdk";
71
77
const vapi =newVapiClient({ token: process.env.VAPI_API_KEY });
72
78
73
79
const assistant =awaitvapi.assistants.create({
74
-
model: {
75
-
provider: "openai",
76
-
model: "gpt-4o",
77
-
messages: [{
78
-
type: "system",
79
-
content: `You are a sales representative for Acme Corp.
80
-
If at any point you determine you're speaking to a voicemail system
81
-
(greeting mentions 'unavailable', 'leave a message', 'voicemail', etc.),
82
-
immediately use the leave_voicemail tool.`
83
-
}],
84
-
tools: [{
85
-
type: "voicemail",
86
-
function: {
87
-
name: "leave_voicemail",
88
-
description: "Leave a voicemail message when you detect you've reached a voicemail system"
89
-
},
90
-
messages: [{
91
-
type: "request-start",
92
-
content: "Hi, this is {{company}}. {{message}}. Please call us back at {{phone}}."
93
-
}]
94
-
}]
95
-
}
80
+
model: {
81
+
provider: "openai",
82
+
model: "gpt-4o",
83
+
messages: [{
84
+
type: "system",
85
+
content: `You are a sales representative for Acme Corp.
86
+
If at any point you determine you're speaking to a voicemail system
87
+
(greeting mentions 'unavailable', 'leave a message', 'voicemail', etc.),
88
+
immediately use the leave_voicemail tool.`
89
+
}],
90
+
tools: [{
91
+
type: "voicemail",
92
+
function: {
93
+
name: "leave_voicemail",
94
+
description: "Leave a voicemail message when you detect you've reached a voicemail system"
95
+
},
96
+
messages: [{
97
+
type: "request-start",
98
+
content: "Hi, this is {{company}}. {{message}}. Please call us back at {{phone}}."
@@ -145,7 +153,8 @@ Define the voicemail message in the tool configuration:
145
153
```
146
154
147
155
<Tip>
148
-
Use template variables like `{{company}}`, `{{message}}`, and `{{phone}}` to make your voicemail messages dynamic while keeping them consistent.
156
+
Use template variables like `{{ company }}`, `{{ message }}`, and `{{ phone }}`
157
+
to make your voicemail messages dynamic while keeping them consistent.
149
158
</Tip>
150
159
151
160
### **Pre-recorded Audio Messages**
@@ -166,7 +175,8 @@ For consistent quality and pronunciation, use pre-recorded audio files by provid
166
175
**Supported formats**: `.wav` and `.mp3` files
167
176
168
177
<Note>
169
-
Pre-recorded audio messages are ideal for brand-specific messaging or when you need precise pronunciation of phone numbers, website URLs, or company names.
178
+
Pre-recorded audio messages are ideal for brand-specific messaging or when you
179
+
need precise pronunciation of phone numbers, website URLs, or company names.
170
180
</Note>
171
181
172
182
## Advanced Examples
@@ -237,44 +247,55 @@ Using pre-recorded audio for professional voicemail messages:
237
247
}
238
248
```
239
249
240
-
241
-
242
250
## Best Practices
243
251
244
252
### Detection prompting
253
+
245
254
Be specific about voicemail indicators in your system prompt:
255
+
246
256
- "unavailable"
247
257
- "leave a message"
248
258
- "voicemail"
249
259
- "at the tone"
250
260
- "beep"
251
261
252
262
### Message structure
263
+
253
264
Keep voicemail messages:
265
+
254
266
-**Brief** - Under 30 seconds
255
267
-**Clear** - State name, company, and purpose
256
268
-**Actionable** - Include callback number or next steps
Avoid combining the **voicemail tool** with **automatic detection**, as this
292
+
could result in false positives and other complications.
293
+
</Warning>
275
294
276
295
<Info>
277
-
Choose the **voicemail tool** when you need maximum flexibility and cost efficiency. Choose **automatic detection** when you need guaranteed system-level detection without relying on assistant prompting.
296
+
Choose the **voicemail tool** when you need maximum flexibility and cost
297
+
efficiency. Choose **automatic detection** when you need guaranteed
298
+
system-level detection without relying on assistant prompting.
278
299
</Info>
279
300
280
301
## Common Use Cases
@@ -289,4 +310,3 @@ Choose the **voicemail tool** when you need maximum flexibility and cost efficie
289
310
- Learn about other [default tools](/tools/default-tools)
290
311
- Explore [automatic voicemail detection](/calls/voicemail-detection) for system-level handling
291
312
- See how to create [custom tools](/tools/custom-tools) for your specific needs
0 commit comments