fix: support kick cron

This commit is contained in:
Vaala Cat
2023-06-19 19:54:47 +08:00
parent f0c2083bd7
commit 60d6572331
5 changed files with 30 additions and 13 deletions

View File

@@ -32,7 +32,7 @@ func GetLeftPlayer(m chat.Message) (userName string, err error) {
return
}
func HandleJoinGame(userName string) {
func HandleJoinGame(userName string, mention bool) {
u, err := models.GetUserByMCName(userName)
if err != nil {
@@ -42,7 +42,9 @@ func HandleJoinGame(userName string) {
switch u.Status {
case StatusNormal:
SendMsgToPlayer("欢迎回来!", userName)
if mention {
SendMsgToPlayer("欢迎回来!", userName)
}
case StatusPending:
SendMsgToPlayer("你还没有绑定 Telegram 哦, 5秒后你将会被踢出。请在群组中发送 /bind <你的 MC 用户名> 进行绑定。", userName)
time.Sleep(5 * time.Second)
@@ -83,7 +85,7 @@ func CronKick() {
utils.CronStart(func() {
users := su.GetAlivePlayerList()
for _, u := range users {
kickPlayer(u)
HandleJoinGame(u, false)
}
})
}

View File

@@ -80,12 +80,12 @@ func onSystemMsg(msg chat.Message, overlay bool) error {
logrus.Error("user join error ", err)
break
}
go HandleJoinGame(userName)
go HandleJoinGame(userName, true)
default:
break
}
m := tgbotapi.NewMessage(conf.GetBotSettings().GroupID, fmt.Sprintf("%v", msg))
conf.Bot.Send(m)
// m := tgbotapi.NewMessage(conf.GetBotSettings().GroupID, fmt.Sprintf("%v", msg))
// conf.Bot.Send(m)
}()
return nil
}