Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 71 additions & 3 deletions fern/calls/call-dynamic-transfers.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,8 @@ Dynamic call transfers let your assistant transfer calls to different destinatio
"number": "+14155552671",
"numberE164CheckEnabled": true,
"callerId": "+14155551234",
"extension": "101"
"extension": "101",
"timeout": 30
}
}
```
Expand All @@ -95,7 +96,8 @@ Dynamic call transfers let your assistant transfer calls to different destinatio
"sipUri": "sip:customer-support@domain.com",
"sipHeaders": {
"X-Custom-Header": "value"
}
},
"timeout": 45
}
}
```
Expand All @@ -110,6 +112,72 @@ Dynamic call transfers let your assistant transfer calls to different destinatio
</Step>
</Steps>

## Timeout Configuration

When configuring warm transfer operations, you can specify a timeout value to control how long the transfer will wait before timing out. This is particularly useful for ensuring transfers don't hang indefinitely if the destination doesn't answer.

### Setting Transfer Timeout

You can configure the timeout using the `timeout` property in your transfer destination:

```json
{
"destination": {
"type": "number",
"number": "+14155552671",
"timeout": 120
}
}
```

### Timeout Parameters

- **Valid Range**: 1-600 seconds
- **Default Value**: 60 seconds
- **Purpose**: Controls how long the system waits for the transfer destination to be established before timing out

### Example Configurations

#### Short timeout for quick screening
```json
{
"destination": {
"type": "number",
"number": "+14155552671",
"timeout": 15,
"message": "Quickly connecting you to our support team."
}
}
```

#### Extended timeout for complex transfers
```json
{
"destination": {
"type": "sip",
"sipUri": "sip:support@company.com",
"timeout": 300,
"message": "Please hold while we establish your connection."
}
}
```

#### Using maximum timeout
```json
{
"destination": {
"type": "number",
"number": "+14155552671",
"timeout": 600,
"message": "Connecting you to our specialized support team."
}
}
```

<Note>
If no timeout is specified, the system will use the default value of 60 seconds. The timeout applies specifically to warm transfer operations and helps prevent calls from hanging indefinitely when destinations are unreachable.
</Note>

## Conclusion

Dynamic call transfers empower your assistant to route calls efficiently based on real-time data. By implementing this flow, you can ensure seamless interactions and provide a better experience for your users.
Dynamic call transfers empower your assistant to route calls efficiently based on real-time data. By implementing this flow with proper timeout configuration, you can ensure seamless interactions and provide a better experience for your users while maintaining control over transfer durations.
53 changes: 50 additions & 3 deletions fern/providers/transcriber/assembly-ai.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ subtitle: What is AssemblyAI?
slug: providers/transcriber/assembly-ai
---


**What is AssemblyAI?**

AssemblyAI is a leading provider of AI-driven speech recognition and understanding technologies. Their advanced models enable accurate transcription and analysis of audio data, facilitating applications across various industries.
Expand All @@ -29,6 +28,54 @@ AssemblyAI offers a comprehensive suite of AI-driven tools designed to meet dive

- AssemblyAI's real-time transcription feature enables sub-second latency conversion of speech to text, beneficial for live captioning, customer support, and interactive voice response systems, enhancing user experience and operational efficiency.

## Universal Streaming API

AssemblyAI's Universal Streaming API is their most advanced real-time transcription solution that provides:

- **Best-in-class accuracy**: Leveraging the Universal-2 model for superior transcription quality
- **Ultra-low latency**: Sub-second response times for real-time applications
- **Enhanced language support**: Better performance across multiple languages and accents
- **Improved audio intelligence**: Real-time sentiment analysis, topic detection, and speaker diarization
- **Robust streaming**: Optimized for continuous audio streams with better connection stability

### Enabling Universal Streaming API

To enable the Universal Streaming API for your AssemblyAI transcriber in Vapi, set the `enableUniversalStreamingApi` property to `true` in your transcriber configuration:

```json
{
"transcriber": {
"provider": "assemblyai",
"enableUniversalStreamingApi": true,
"language": "en",
"model": "best"
}
}
```

### Benefits of Universal Streaming API

When enabled, the Universal Streaming API provides:

1. **Enhanced Accuracy**: Utilizes the latest Universal-2 model for improved transcription quality
2. **Better Real-time Performance**: Optimized streaming protocols for reduced latency
3. **Advanced Features**: Access to premium audio intelligence capabilities in real-time
4. **Improved Reliability**: More robust connection handling and error recovery

<Note>
The Universal Streaming API may have different pricing compared to the standard streaming API. Please check with AssemblyAI for current pricing information.
</Note>

### Configuration Options

The Universal Streaming API supports all standard AssemblyAI transcriber options:

- **Language Detection**: Automatic language identification
- **Speaker Diarization**: Real-time speaker identification
- **Custom Vocabulary**: Industry-specific terminology support
- **Profanity Filtering**: Content moderation capabilities
- **Punctuation and Formatting**: Automatic capitalization and punctuation

**Use Cases for AssemblyAI**

AssemblyAI's versatile technology serves multiple industries, enhancing operations and delivering valuable insights:
Expand All @@ -39,7 +86,7 @@ AssemblyAI's versatile technology serves multiple industries, enhancing operatio

**Media And Content Creation**

- In the media sector, AssemblyAIs speech-to-text solutions are used to transcribe interviews, podcasts, and video content. This makes content searchable, accessible, and easier to manage, enhancing the efficiency of media production workflows.
- In the media sector, AssemblyAI's speech-to-text solutions are used to transcribe interviews, podcasts, and video content. This makes content searchable, accessible, and easier to manage, enhancing the efficiency of media production workflows.

**Innovation and Research:**

Expand All @@ -51,4 +98,4 @@ AssemblyAI's versatile technology serves multiple industries, enhancing operatio

**Integrations and Compatibility**

- AssemblyAI offers a developer-friendly environment with RESTful API access, WebSocket support for real-time applications, SDKs for popular programming languages, detailed documentation and examples, ensuring seamless integration of speech recognition capabilities into existing systems.
- AssemblyAI offers a developer-friendly environment with RESTful API access, WebSocket support for real-time applications, SDKs for popular programming languages, detailed documentation and examples, ensuring seamless integration of speech recognition capabilities into existing systems.
Loading