added aiming error in tg worker for correct restoring data in redis
This commit is contained in:
parent
8ee4975ef9
commit
ce69833a25
@ -70,34 +70,37 @@ func (wc *TgListenerWorker) processTasks(ctx context.Context) {
|
||||
return
|
||||
}
|
||||
// todo logging into tg with trashlog
|
||||
var aimErr error
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
fmt.Println("recovering from panic or error setting redis value:", r)
|
||||
if r := recover(); r != nil || aimErr != nil {
|
||||
fmt.Println("recovering from panic or error setting redis value:", r, aimErr)
|
||||
_ = wc.redis.Set(ctx, key, taskBytes, 0).Err()
|
||||
}
|
||||
}()
|
||||
|
||||
var task model.TgRedisTask
|
||||
if json.Unmarshal([]byte(taskBytes), &task) != nil {
|
||||
if err = json.Unmarshal([]byte(taskBytes), &task); err != nil {
|
||||
fmt.Println("Failed unmarshal telegram task:", err)
|
||||
return
|
||||
}
|
||||
|
||||
inviteLink, chatID, err := wc.tgClient.CreateChannel(task.Name, wc.botID)
|
||||
if err != nil {
|
||||
fmt.Println("Failed create tg channel:", err)
|
||||
var inviteLink string
|
||||
var chatID int64
|
||||
inviteLink, chatID, aimErr = wc.tgClient.CreateChannel(task.Name, wc.botID)
|
||||
if aimErr != nil {
|
||||
fmt.Println("Failed create tg channel:", aimErr)
|
||||
return
|
||||
}
|
||||
|
||||
_, err = wc.dal.AccountRepo.PostLeadTarget(ctx, model.LeadTarget{
|
||||
_, aimErr = wc.dal.AccountRepo.PostLeadTarget(ctx, model.LeadTarget{
|
||||
AccountID: task.AccountID,
|
||||
Type: model.LeadTargetTg,
|
||||
QuizID: task.QuizID,
|
||||
Target: strconv.Itoa(int(chatID)),
|
||||
InviteLink: inviteLink,
|
||||
})
|
||||
if err != nil {
|
||||
fmt.Println("Failed create lead target in db:", err)
|
||||
if aimErr != nil {
|
||||
fmt.Println("Failed create lead target in db:", aimErr)
|
||||
return
|
||||
}
|
||||
}()
|
||||
|
Loading…
Reference in New Issue
Block a user