proper loggers are added
This commit is contained in:
parent
c74d5584b0
commit
28b34868cb
|
|
@ -31,7 +31,7 @@ func (h *OTPHandler) GenerateAndSaveOTPHandler(w http.ResponseWriter, r *http.Re
|
|||
return
|
||||
}
|
||||
|
||||
err = h.Service.GenerateAndSaveOTP(request.PhoneNumber)
|
||||
err = h.Service.SaveAndSendOTP(request.PhoneNumber)
|
||||
if err != nil {
|
||||
utils.RespondWithErrorJSON(w, http.StatusInternalServerError, err.Error())
|
||||
return
|
||||
|
|
|
|||
|
|
@ -2,7 +2,11 @@ package smpp
|
|||
|
||||
import (
|
||||
"log"
|
||||
"log/slog"
|
||||
"os"
|
||||
"smpp-otp/internal/config"
|
||||
"smpp-otp/pkg/lib/logger"
|
||||
"time"
|
||||
|
||||
"github.com/fiorix/go-smpp/smpp"
|
||||
"github.com/fiorix/go-smpp/smpp/pdu"
|
||||
|
|
@ -14,8 +18,17 @@ type SMPPClient struct {
|
|||
}
|
||||
|
||||
func NewSMPPClient(cfg *config.Config) (*SMPPClient, error) {
|
||||
logger, err := logger.SetupLogger(cfg.Env)
|
||||
if err != nil {
|
||||
slog.Error("failed to set up logger: %v", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
smppCfg := cfg.SMPP
|
||||
tx := &smpp.Transceiver{
|
||||
var tx *smpp.Transceiver
|
||||
|
||||
for {
|
||||
tx = &smpp.Transceiver{
|
||||
Addr: smppCfg.Addr,
|
||||
User: smppCfg.User,
|
||||
Passwd: smppCfg.Pass,
|
||||
|
|
@ -24,9 +37,14 @@ func NewSMPPClient(cfg *config.Config) (*SMPPClient, error) {
|
|||
|
||||
connStatus := tx.Bind()
|
||||
status := <-connStatus
|
||||
if status.Status() != smpp.Connected {
|
||||
log.Println("Failed to connect:", status.Error())
|
||||
return nil, status.Error()
|
||||
if status.Status() == smpp.Connected {
|
||||
logger.InfoLogger.Info("Connected to SMPP server.")
|
||||
break
|
||||
} else {
|
||||
logger.ErrorLogger.Error("Failed to connect:", status.Error())
|
||||
logger.InfoLogger.Info("Retrying in 5 seconds...")
|
||||
time.Sleep(5 * time.Second) // Wait for 5 seconds before retrying
|
||||
}
|
||||
}
|
||||
|
||||
return &SMPPClient{Transceiver: tx}, nil
|
||||
|
|
|
|||
|
|
@ -5,6 +5,6 @@ import (
|
|||
)
|
||||
|
||||
type OTPService interface {
|
||||
GenerateAndSendOTP(cfg config.Config, phoneNumber string) error
|
||||
SaveAndSendOTP(cfg config.Config, phoneNumber string) error
|
||||
ValidateOTP(phoneNumber string, otp string) error
|
||||
}
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ func GenerateOTP() string {
|
|||
return otp
|
||||
}
|
||||
|
||||
func (s *OTPService) GenerateAndSaveOTP(phoneNumber string) error {
|
||||
func (s *OTPService) SaveAndSendOTP(phoneNumber string) error {
|
||||
otp := GenerateOTP()
|
||||
err := s.repository.SaveOTP(phoneNumber, otp)
|
||||
if err != nil {
|
||||
|
|
|
|||
Loading…
Reference in New Issue