Documentation
¶
Overview ¶
Package config provides configuration management for agentcomms.
Index ¶
Constants ¶
View Source
const ( ProviderElevenLabs = "elevenlabs" ProviderDeepgram = "deepgram" ProviderOpenAI = "openai" )
Provider constants.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
// Server settings
Port int
// Phone provider settings (Twilio)
PhoneProvider string // "twilio" or "telnyx"
PhoneAccountSID string
PhoneAuthToken string
PhoneNumber string // E.164 format, e.g., +15551234567
UserPhoneNumber string // E.164 format
// Voice provider selection
TTSProvider string // "elevenlabs", "deepgram", or "openai"
STTProvider string // "elevenlabs", "deepgram", or "openai"
// ElevenLabs settings
ElevenLabsAPIKey string
// Deepgram settings
DeepgramAPIKey string
// OpenAI settings
OpenAIAPIKey string
// TTS settings (provider-agnostic)
TTSVoice string // Voice ID (provider-specific)
TTSModel string // Model ID (provider-specific)
// STT settings (provider-agnostic)
STTModel string // Model ID (provider-specific)
STTLanguage string // BCP-47 language code (e.g., "en-US")
STTSilenceDurationMS int // milliseconds of silence to detect end of speech
// ngrok settings
NgrokAuthToken string
NgrokDomain string // optional custom domain
// Timeouts
TranscriptTimeoutMS int
// Chat provider settings
WhatsAppEnabled bool
WhatsAppDBPath string
DiscordEnabled bool
DiscordToken string
DiscordGuildID string
TelegramEnabled bool
TelegramToken string
}
Config holds all configuration for the agentcomms server.
func DefaultConfig ¶
func DefaultConfig() *Config
DefaultConfig returns a Config with sensible defaults.
func LoadFromEnv ¶
LoadFromEnv loads configuration from environment variables. Supports both AGENTCOMMS_ and legacy AGENTCALL_ prefixes with AGENTCOMMS_ taking precedence.
func (*Config) ChatEnabled ¶
ChatEnabled returns true if any chat provider is enabled.
func (*Config) NeedsDeepgram ¶
NeedsDeepgram returns true if any provider uses Deepgram.
func (*Config) NeedsElevenLabs ¶
NeedsElevenLabs returns true if any provider uses ElevenLabs.
func (*Config) NeedsOpenAI ¶
NeedsOpenAI returns true if any provider uses OpenAI.
func (*Config) VoiceEnabled ¶
VoiceEnabled returns true if voice calling is configured.
Click to show internal directories.
Click to hide internal directories.