Fixed tasks, removed logs to DB

This commit is contained in:
nefrace 2022-02-04 13:20:29 +03:00
parent f5b7253fa6
commit 4a3c9f6e9e
3 changed files with 6 additions and 8 deletions

View File

@ -32,15 +32,13 @@ func userJoined(c tb.Context) error {
ctx, cancel := context.WithTimeout(context.Background(), 15*time.Second) ctx, cancel := context.WithTimeout(context.Background(), 15*time.Second)
defer cancel() defer cancel()
log.Print(user) log.Print(user)
str := fmt.Sprintf("%v", user) msg := fmt.Sprintf("Приветствую тебя, %v!\nДля подтверждения, что ты человек, выбери логотип движка, которому посвящен данный чат, и отправь его номер сюда.\nЯ дам тебе минуту на это.", user.FirstName)
msg := fmt.Sprintf("Приветствую, %v!\nПеред тем, как дать тебе что-то здесь писать, я задам тебе один вопрос:\nКакой из этих движков самый лучший? Подумай хорошенько, и дай ответ цифрой.", user.FirstName)
photo := tb.Photo{File: tb.FromReader(reader), Caption: msg} photo := tb.Photo{File: tb.FromReader(reader), Caption: msg}
result, err := bot.Send(tb.ChatID(message.Chat.ID), &photo, &tb.SendOptions{ReplyTo: message}) result, err := bot.Send(tb.ChatID(message.Chat.ID), &photo, &tb.SendOptions{ReplyTo: message})
if err != nil { if err != nil {
return err return err
} }
user.CaptchaMessage = result.ID user.CaptchaMessage = result.ID
db.Log("new user", str)
d.NewUser(ctx, user) d.NewUser(ctx, user)
return nil return nil
@ -56,7 +54,6 @@ func userLeft(c tb.Context) error {
if user, err := d.GetUser(ctx, db.User{Id: sender.ID, ChatId: message.Chat.ID}); err == nil { if user, err := d.GetUser(ctx, db.User{Id: sender.ID, ChatId: message.Chat.ID}); err == nil {
d.RemoveUser(ctx, user) d.RemoveUser(ctx, user)
bot.Delete(&tb.Message{Chat: message.Chat, ID: user.CaptchaMessage}) bot.Delete(&tb.Message{Chat: message.Chat, ID: user.CaptchaMessage})
db.Log("user left", user)
} }
return nil return nil
} }
@ -119,7 +116,6 @@ var HandlersV1 = []Handler{
if err != nil { if err != nil {
log.Print(err) log.Print(err)
} }
db.Log("new chat", chat)
return nil return nil
}, },
}, },

View File

@ -13,13 +13,13 @@ import (
func TaskKickOldUsers(b tb.Bot) { func TaskKickOldUsers(b tb.Bot) {
d := db.GetDatabase() d := db.GetDatabase()
db.Log("STARTING KICKING TASK", db.EmptyStruct{}) log.Print("STARTING KICKING TASK")
ctx, cancel := context.WithTimeout(context.Background(), 15*time.Second) ctx, cancel := context.WithTimeout(context.Background(), 15*time.Second)
defer cancel() defer cancel()
now := time.Now().Unix() now := time.Now().Unix()
old := now - 60 old := now - 60
filter := bson.D{ filter := bson.D{
primitive.E{Key: "date_joined", Value: bson.D{{"$lt", old}}}, primitive.E{Key: "date_joined", Value: bson.D{bson.E{Key: "$lt", Value: old}}},
} }
users, err := d.GetUsers(ctx, filter) users, err := d.GetUsers(ctx, filter)
if err != nil { if err != nil {
@ -29,7 +29,9 @@ func TaskKickOldUsers(b tb.Bot) {
chat := tb.Chat{ID: user.ChatId} chat := tb.Chat{ID: user.ChatId}
tbUser := tb.User{ID: user.Id} tbUser := tb.User{ID: user.Id}
member := tb.ChatMember{User: &tbUser} member := tb.ChatMember{User: &tbUser}
message := tb.Message{Chat: &chat, ID: user.CaptchaMessage}
b.Ban(&chat, &member) b.Ban(&chat, &member)
b.Delete(&message)
d.RemoveUser(ctx, user) d.RemoveUser(ctx, user)
} }
} }

View File

@ -31,7 +31,7 @@ func main() {
Bot.Init() Bot.Init()
Bot.AddHandlers(kicker.HandlersV1) Bot.AddHandlers(kicker.HandlersV1)
scheduler := gocron.NewScheduler(time.UTC) scheduler := gocron.NewScheduler(time.UTC)
scheduler.Every(1).Minutes().Do(func() { kicker.TaskKickOldUsers(*Bot.Bot) }) scheduler.Every(30).Seconds().Do(func() { kicker.TaskKickOldUsers(*Bot.Bot) })
scheduler.StartAsync() scheduler.StartAsync()
Bot.Bot.Start() Bot.Bot.Start()
} }