27 lines
525 B
Go
27 lines
525 B
Go
package sms
|
|
|
|
import (
|
|
"git.coopgo.io/coopgo-platform/sms/providers"
|
|
"github.com/spf13/viper"
|
|
)
|
|
|
|
type SMSHandler struct {
|
|
Provider providers.SMSProvider
|
|
config *viper.Viper
|
|
}
|
|
|
|
func NewSMSHandler(cfg *viper.Viper) (*SMSHandler, error) {
|
|
p, err := providers.NewSMSProvider(cfg)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return &SMSHandler{
|
|
Provider: p,
|
|
config: cfg,
|
|
}, nil
|
|
}
|
|
|
|
func (h *SMSHandler) Send(phoneNumber string, message string, sender string) error {
|
|
return h.Provider.Send(phoneNumber, message, sender)
|
|
}
|