diff --git a/kicker/handlers.go b/kicker/handlers.go index ec5f489..c9fe67d 100644 --- a/kicker/handlers.go +++ b/kicker/handlers.go @@ -32,15 +32,13 @@ func userJoined(c tb.Context) error { ctx, cancel := context.WithTimeout(context.Background(), 15*time.Second) defer cancel() 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} result, err := bot.Send(tb.ChatID(message.Chat.ID), &photo, &tb.SendOptions{ReplyTo: message}) if err != nil { return err } user.CaptchaMessage = result.ID - db.Log("new user", str) d.NewUser(ctx, user) 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 { d.RemoveUser(ctx, user) bot.Delete(&tb.Message{Chat: message.Chat, ID: user.CaptchaMessage}) - db.Log("user left", user) } return nil } @@ -119,7 +116,6 @@ var HandlersV1 = []Handler{ if err != nil { log.Print(err) } - db.Log("new chat", chat) return nil }, }, diff --git a/kicker/tasks.go b/kicker/tasks.go index 8ddae89..95b9c0a 100644 --- a/kicker/tasks.go +++ b/kicker/tasks.go @@ -13,13 +13,13 @@ import ( func TaskKickOldUsers(b tb.Bot) { d := db.GetDatabase() - db.Log("STARTING KICKING TASK", db.EmptyStruct{}) + log.Print("STARTING KICKING TASK") ctx, cancel := context.WithTimeout(context.Background(), 15*time.Second) defer cancel() now := time.Now().Unix() old := now - 60 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) if err != nil { @@ -29,7 +29,9 @@ func TaskKickOldUsers(b tb.Bot) { chat := tb.Chat{ID: user.ChatId} tbUser := tb.User{ID: user.Id} member := tb.ChatMember{User: &tbUser} + message := tb.Message{Chat: &chat, ID: user.CaptchaMessage} b.Ban(&chat, &member) + b.Delete(&message) d.RemoveUser(ctx, user) } } diff --git a/main.go b/main.go index c58c675..197a45d 100644 --- a/main.go +++ b/main.go @@ -31,7 +31,7 @@ func main() { Bot.Init() Bot.AddHandlers(kicker.HandlersV1) 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() Bot.Bot.Start() }