From 1209499f6e0171961519f49b31bde35ebdf0fcf5 Mon Sep 17 00:00:00 2001 From: A'zamov Samandar Date: Fri, 25 Apr 2025 15:31:10 +0500 Subject: [PATCH] fix: Token management update and SMS message type change --- internal/services/eskiz.go | 21 +++++++++++++++------ test.py | 6 +++--- tmp/build-errors.log | 2 +- 3 files changed, 19 insertions(+), 10 deletions(-) diff --git a/internal/services/eskiz.go b/internal/services/eskiz.go index 91309ca..1729d1d 100644 --- a/internal/services/eskiz.go +++ b/internal/services/eskiz.go @@ -4,6 +4,7 @@ import ( "bytes" "context" "encoding/json" + "log" "net/http" "os" "time" @@ -35,7 +36,7 @@ func (e *eskizSMSService) Request(payload any, path string, isAuth bool, retry b req, err := http.NewRequest("POST", e.BaseURL+path, &buf) req.Header.Add("Content-Type", "application/json") if isAuth { - req.Header.Add("Authorization", "Bearer "+e.GetToken(true)) + req.Header.Add("Authorization", "Bearer "+e.GetToken(true, true)) } if err != nil { @@ -43,24 +44,32 @@ func (e *eskizSMSService) Request(payload any, path string, isAuth bool, retry b } res, err := client.Do(req) if res.StatusCode == http.StatusUnauthorized && retry { + time.Sleep(time.Second * 5) pp.Print("Qayta urunish") - e.GetToken(false) + e.GetToken(false, false) return e.Request(payload, path, isAuth, false) } return res, err } -func (e *eskizSMSService) GetToken(cache bool) string { +func (e *eskizSMSService) GetToken(cache bool, retry bool) string { + email := os.Getenv("ESKIZ_USER") + password := os.Getenv("ESKIZ_PASSWORD") + + if email == "" || password == "" { + log.Fatal("password or fmail not found") + } + token, err := redis.RDB.Get(e.Ctx, "eskiz_token").Result() if err == nil && cache { pp.Print("Eskiz token topildi 😁") return token } payload := domain.EskizLogin{ - Email: os.Getenv("ESKIZ_USER"), - Password: os.Getenv("ESKIZ_PASSWORD"), + Email: email, + Password: password, } - res, err := e.Request(payload, "/auth/login", false, true) + res, err := e.Request(payload, "/auth/login", false, retry) if err != nil { pp.Print(err.Error()) } diff --git a/test.py b/test.py index c41216b..fc204b5 100644 --- a/test.py +++ b/test.py @@ -25,9 +25,9 @@ r = redis.StrictRedis(host='127.0.0.1', port=6379, db=0) # Xabar tayyorlash message = { - 'type': 'email', - 'message': "Subject: test\r\n\r\nclasscom.uz sayti va mobil ilovasiga ro'yxatdan o'tishingiz uchun tasdiqlash kodi: 1234", - 'to': ["jahongirhakimjonov@gmail.com"] + 'type': 'sms', + 'message': "Assalomu alaykum %w{1,5} sizni https://classcom.uz o’qituvchining virtual kаbinetida muallif sifatida tasdiqlanganingiz bilan tabriklaymiz!!!", + 'to': ["+998888112309"] } # Xabarni JSON formatga oā€˜tkazib, Redis listga push qilish diff --git a/tmp/build-errors.log b/tmp/build-errors.log index 31fcaad..70f3670 100644 --- a/tmp/build-errors.log +++ b/tmp/build-errors.log @@ -1 +1 @@ -exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1 \ No newline at end of file +exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1exit status 1 \ No newline at end of file