Documentation
¶
Index ¶
- Constants
- func GetCallSystemProvider(name string, opts ...registry.ProviderOption) (callsystem.CallSystem, error)
- func GetCallSystemProviderPriority(name string) int
- func GetGatewayProvider(name string, opts ...registry.ProviderOption) (registry.Gateway, error)
- func GetGatewayProviderPriority(name string) int
- func GetRealtimeProvider(name string, opts ...registry.ProviderOption) (registry.RealtimeProvider, error)
- func GetRealtimeProviderPriority(name string) int
- func GetSTTProvider(name string, opts ...registry.ProviderOption) (stt.Provider, error)
- func GetSTTProviderPriority(name string) int
- func GetTTSProvider(name string, opts ...registry.ProviderOption) (tts.Provider, error)
- func GetTTSProviderPriority(name string) int
- func HasCallSystemProvider(name string) bool
- func HasGatewayProvider(name string) bool
- func HasRealtimeProvider(name string) bool
- func HasSTTProvider(name string) bool
- func HasTTSProvider(name string) bool
- func ListCallSystemProviders() []string
- func ListGatewayProviders() []string
- func ListRealtimeProviders() []string
- func ListSTTProviders() []string
- func ListTTSProviders() []string
- func RegisterCallSystemProvider(name string, factory registry.CallSystemProviderFactory, priority int)
- func RegisterGatewayProvider(name string, factory registry.GatewayProviderFactory, priority int)
- func RegisterRealtimeProvider(name string, factory registry.RealtimeProviderFactory, priority int)
- func RegisterSTTProvider(name string, factory registry.STTProviderFactory, priority int)
- func RegisterTTSProvider(name string, factory registry.TTSProviderFactory, priority int)
Constants ¶
const ( // PriorityThin is the priority for thin (stdlib-only) provider implementations. // These have no external dependencies beyond the standard library. PriorityThin = 0 // PriorityThick is the priority for thick (official SDK) provider implementations. // These use official provider SDKs for full feature support. PriorityThick = 10 )
Priority constants for provider registration. Higher priority values override lower priority registrations.
Variables ¶
This section is empty.
Functions ¶
func GetCallSystemProvider ¶
func GetCallSystemProvider(name string, opts ...registry.ProviderOption) (callsystem.CallSystem, error)
GetCallSystemProvider creates a CallSystem provider instance from the registry. Returns an error if the provider is not registered or if creation fails.
func GetCallSystemProviderPriority ¶
GetCallSystemProviderPriority returns the priority of the registered CallSystem provider. Returns -1 if the provider is not registered.
func GetGatewayProvider ¶ added in v0.14.0
GetGatewayProvider creates a Gateway provider instance from the registry. Returns an error if the provider is not registered or if creation fails.
func GetGatewayProviderPriority ¶ added in v0.14.0
GetGatewayProviderPriority returns the priority of the registered Gateway provider. Returns -1 if the provider is not registered.
func GetRealtimeProvider ¶ added in v0.14.0
func GetRealtimeProvider(name string, opts ...registry.ProviderOption) (registry.RealtimeProvider, error)
GetRealtimeProvider creates a Realtime provider instance from the registry. Returns an error if the provider is not registered or if creation fails.
func GetRealtimeProviderPriority ¶ added in v0.14.0
GetRealtimeProviderPriority returns the priority of the registered Realtime provider. Returns -1 if the provider is not registered.
func GetSTTProvider ¶
GetSTTProvider creates an STT provider instance from the registry. Returns an error if the provider is not registered or if creation fails.
func GetSTTProviderPriority ¶
GetSTTProviderPriority returns the priority of the registered STT provider. Returns -1 if the provider is not registered.
func GetTTSProvider ¶
GetTTSProvider creates a TTS provider instance from the registry. Returns an error if the provider is not registered or if creation fails.
func GetTTSProviderPriority ¶
GetTTSProviderPriority returns the priority of the registered TTS provider. Returns -1 if the provider is not registered.
func HasCallSystemProvider ¶
HasCallSystemProvider returns true if a CallSystem provider with the given name is registered.
func HasGatewayProvider ¶ added in v0.14.0
HasGatewayProvider returns true if a Gateway provider with the given name is registered.
func HasRealtimeProvider ¶ added in v0.14.0
HasRealtimeProvider returns true if a Realtime provider with the given name is registered.
func HasSTTProvider ¶
HasSTTProvider returns true if an STT provider with the given name is registered.
func HasTTSProvider ¶
HasTTSProvider returns true if a TTS provider with the given name is registered.
func ListCallSystemProviders ¶
func ListCallSystemProviders() []string
ListCallSystemProviders returns a list of all registered CallSystem provider names.
func ListGatewayProviders ¶ added in v0.14.0
func ListGatewayProviders() []string
ListGatewayProviders returns a list of all registered Gateway provider names.
func ListRealtimeProviders ¶ added in v0.14.0
func ListRealtimeProviders() []string
ListRealtimeProviders returns a list of all registered Realtime provider names.
func ListSTTProviders ¶
func ListSTTProviders() []string
ListSTTProviders returns a list of all registered STT provider names.
func ListTTSProviders ¶
func ListTTSProviders() []string
ListTTSProviders returns a list of all registered TTS provider names.
func RegisterCallSystemProvider ¶
func RegisterCallSystemProvider(name string, factory registry.CallSystemProviderFactory, priority int)
RegisterCallSystemProvider registers a CallSystem provider factory with the given name and priority. Higher priority values override lower priority registrations.
Example:
// In omni-twilio/init.go (thick, priority 10)
func init() {
omnivoice.RegisterCallSystemProvider("twilio", NewCallSystemProvider, omnivoice.PriorityThick)
}
func RegisterGatewayProvider ¶ added in v0.14.0
func RegisterGatewayProvider(name string, factory registry.GatewayProviderFactory, priority int)
RegisterGatewayProvider registers a Gateway provider factory with the given name and priority. Higher priority values override lower priority registrations.
Example:
// In omni-twilio/omnivoice/gateway/init.go (thick, priority 10)
func init() {
omnivoice.RegisterGatewayProvider("twilio", NewGatewayProvider, omnivoice.PriorityThick)
}
func RegisterRealtimeProvider ¶ added in v0.14.0
func RegisterRealtimeProvider(name string, factory registry.RealtimeProviderFactory, priority int)
RegisterRealtimeProvider registers a Realtime provider factory with the given name and priority. Higher priority values override lower priority registrations.
Example:
// In omni-openai/omnivoice/realtime/init.go (thick, priority 10)
func init() {
omnivoice.RegisterRealtimeProvider("openai", NewRealtimeProvider, omnivoice.PriorityThick)
}
func RegisterSTTProvider ¶
func RegisterSTTProvider(name string, factory registry.STTProviderFactory, priority int)
RegisterSTTProvider registers an STT provider factory with the given name and priority. Higher priority values override lower priority registrations.
Example:
// In omni-deepgram/init.go (thick, priority 10)
func init() {
omnivoice.RegisterSTTProvider("deepgram", NewSTTProvider, omnivoice.PriorityThick)
}
func RegisterTTSProvider ¶
func RegisterTTSProvider(name string, factory registry.TTSProviderFactory, priority int)
RegisterTTSProvider registers a TTS provider factory with the given name and priority. Higher priority values override lower priority registrations.
Example:
// In omni-elevenlabs/init.go (thick, priority 10)
func init() {
omnivoice.RegisterTTSProvider("elevenlabs", NewTTSProvider, omnivoice.PriorityThick)
}
Types ¶
This section is empty.
Directories
¶
| Path | Synopsis |
|---|---|
|
Package agent provides voice agent orchestration for real-time conversations.
|
Package agent provides voice agent orchestration for real-time conversations. |
|
audio
|
|
|
codec
Package codec provides audio codec implementations for telephony.
|
Package codec provides audio codec implementations for telephony. |
|
converter
Package converter provides audio format conversion for voice gateways.
|
Package converter provides audio format conversion for voice gateways. |
|
format
Package format defines audio format types for voice processing.
|
Package format defines audio format types for voice processing. |
|
Package bargein provides barge-in detection for voice conversations.
|
Package bargein provides barge-in detection for voice conversations. |
|
Package callsystem provides integrations with telephony and meeting platforms.
|
Package callsystem provides integrations with telephony and meeting platforms. |
|
providertest
Package providertest provides conformance tests for CallSystem provider implementations.
|
Package providertest provides conformance tests for CallSystem provider implementations. |
|
examples
|
|
|
simple-tts
command
Example: Simple TTS with provider fallback
|
Example: Simple TTS with provider fallback |
|
zoom-agent
command
Example: Voice agent in Zoom meetings
|
Example: Voice agent in Zoom meetings |
|
Package gateway provides a provider-agnostic interface for voice gateways.
|
Package gateway provides a provider-agnostic interface for voice gateways. |
|
Package mcp provides an MCP (Model Context Protocol) server for voice interactions.
|
Package mcp provides an MCP (Model Context Protocol) server for voice interactions. |
|
Package observability provides instrumentation interfaces for voice operations.
|
Package observability provides instrumentation interfaces for voice operations. |
|
Package pipeline provides components for connecting voice processing stages.
|
Package pipeline provides components for connecting voice processing stages. |
|
Package provider provides generic multi-provider client management.
|
Package provider provides generic multi-provider client management. |
|
Package realtime provides a unified interface for real-time voice-to-voice providers.
|
Package realtime provides a unified interface for real-time voice-to-voice providers. |
|
Package registry provides types for provider registration and discovery.
|
Package registry provides types for provider registration and discovery. |
|
Package resilience provides error handling, retry logic, and backoff strategies for building resilient voice applications.
|
Package resilience provides error handling, retry logic, and backoff strategies for building resilient voice applications. |
|
Package schema provides embedded JSON Schema definitions for OmniVoice formats.
|
Package schema provides embedded JSON Schema definitions for OmniVoice formats. |
|
Package storage provides session state persistence for voice calls.
|
Package storage provides session state persistence for voice calls. |
|
Package stt provides a unified interface for Speech-to-Text providers.
|
Package stt provides a unified interface for Speech-to-Text providers. |
|
providertest
Package providertest provides conformance tests for STT provider implementations.
|
Package providertest provides conformance tests for STT provider implementations. |
|
Package subtitle generates SRT and WebVTT subtitles from STT transcription results.
|
Package subtitle generates SRT and WebVTT subtitles from STT transcription results. |
|
Package transport provides audio transport protocols for voice agents.
|
Package transport provides audio transport protocols for voice agents. |
|
providertest
Package providertest provides conformance tests for Transport provider implementations.
|
Package providertest provides conformance tests for Transport provider implementations. |
|
Package tts provides a unified interface for Text-to-Speech providers.
|
Package tts provides a unified interface for Text-to-Speech providers. |
|
providertest
Package providertest provides conformance tests for TTS provider implementations.
|
Package providertest provides conformance tests for TTS provider implementations. |