package config import "time" type SMTPConfig struct { Enable bool Sort int GoroutinePoolNum int Host string Port int Username string Password string } type AmazonSesSettings struct { Enable bool Sort int PoolSize int Region string Sender string Charset string AccessKey string SecretKey string Token string } type MitakeSMSSender struct { Enable bool Sort int PoolSize int User string Password string } // DeliveryConfig 傳送重試配置 type DeliveryConfig struct { MaxRetries int `json:"max_retries"` // 最大重試次數 InitialDelay time.Duration `json:"initial_delay"` // 初始重試延遲 (100ms) BackoffFactor float64 `json:"backoff_factor"` // 指數退避因子 (2.0) MaxDelay time.Duration `json:"max_delay"` // 最大延遲時間 Timeout time.Duration `json:"timeout"` // 單次發送超時時間 EnableHistory bool `json:"enable_history"` // 是否啟用歷史記錄 }