feat: add msg name
This commit is contained in:
parent
b7e73e8c31
commit
e516a51ebe
@ -7,10 +7,12 @@ import (
|
||||
)
|
||||
|
||||
func Run() {
|
||||
go tgbot.Run(mc.SendMsg)
|
||||
for {
|
||||
if err := mc.Run(); err != nil {
|
||||
utils.SendMsg("致命错误:" + err.Error())
|
||||
go func() {
|
||||
for {
|
||||
if err := mc.Run(); err != nil {
|
||||
utils.SendMsg("致命错误:" + err.Error())
|
||||
}
|
||||
}
|
||||
}
|
||||
}()
|
||||
tgbot.Run(mc.SendMsg)
|
||||
}
|
||||
|
@ -1,7 +1,6 @@
|
||||
package mc
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"log"
|
||||
"strings"
|
||||
@ -16,6 +15,7 @@ import (
|
||||
"github.com/Tnze/go-mc/chat"
|
||||
"github.com/Tnze/go-mc/data/item"
|
||||
tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api/v5"
|
||||
"github.com/sirupsen/logrus"
|
||||
)
|
||||
|
||||
func Run() error {
|
||||
@ -51,17 +51,7 @@ func Run() error {
|
||||
|
||||
log.Println("Login success")
|
||||
|
||||
var perr bot.PacketHandlerError
|
||||
for {
|
||||
if err = client.HandleGame(); err == nil {
|
||||
return errors.New("handle game error")
|
||||
}
|
||||
if errors.As(err, &perr) {
|
||||
return err
|
||||
} else {
|
||||
return err
|
||||
}
|
||||
}
|
||||
return client.HandleGame()
|
||||
}
|
||||
|
||||
func SendMsg(msg string) error {
|
||||
@ -72,28 +62,37 @@ func SendMsg(msg string) error {
|
||||
}
|
||||
|
||||
func onSystemMsg(msg chat.Message, overlay bool) error {
|
||||
log.Printf("System: %v", msg)
|
||||
m := tgbotapi.NewMessage(conf.GetBotSettings().GroupID, fmt.Sprintf("%v", msg))
|
||||
conf.Bot.Send(m)
|
||||
go func() {
|
||||
log.Printf("System: %v", msg)
|
||||
m := tgbotapi.NewMessage(conf.GetBotSettings().GroupID, fmt.Sprintf("%v", msg))
|
||||
conf.Bot.Send(m)
|
||||
}()
|
||||
return nil
|
||||
}
|
||||
|
||||
func onPlayerMsg(msg chat.Message, validated bool) error {
|
||||
log.Printf("Player: %s", msg)
|
||||
s := strings.Split(msg.String(), " ")
|
||||
if len(s) > 1 {
|
||||
if s[0] != fmt.Sprintf("<%v>", conf.GetBotSettings().MCBotName) {
|
||||
m := tgbotapi.NewMessage(conf.GetBotSettings().GroupID, fmt.Sprintf("%v", msg))
|
||||
conf.Bot.Send(m)
|
||||
go func() {
|
||||
log.Printf("Player: %s", msg)
|
||||
s := strings.Split(msg.String(), " ")
|
||||
if len(s) > 1 {
|
||||
if s[0] != fmt.Sprintf("<%v>", conf.GetBotSettings().MCBotName) {
|
||||
m := tgbotapi.NewMessage(conf.GetBotSettings().GroupID, fmt.Sprintf("%v", msg))
|
||||
_, err := conf.Bot.Send(m)
|
||||
if err != nil {
|
||||
logrus.Error(err)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}()
|
||||
return nil
|
||||
}
|
||||
|
||||
func onDisguisedMsg(msg chat.Message) error {
|
||||
log.Printf("Disguised: %v", msg)
|
||||
m := tgbotapi.NewMessage(conf.GetBotSettings().GroupID, fmt.Sprintf("%v", msg))
|
||||
conf.Bot.Send(m)
|
||||
go func() {
|
||||
log.Printf("Disguised: %v", msg)
|
||||
m := tgbotapi.NewMessage(conf.GetBotSettings().GroupID, fmt.Sprintf("%v", msg))
|
||||
conf.Bot.Send(m)
|
||||
}()
|
||||
return nil
|
||||
}
|
||||
|
||||
@ -112,9 +111,6 @@ func onDeath() error {
|
||||
|
||||
func onGameStart() error {
|
||||
log.Println("Game start")
|
||||
if err := conf.ChatHandler.SendMessage("Hello, world"); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil // if err isn't nil, HandleGame() will return it.
|
||||
}
|
||||
|
||||
@ -153,5 +149,6 @@ func (d DisconnectErr) Error() string {
|
||||
|
||||
func onDisconnect(reason chat.Message) error {
|
||||
// return an error value so that we can stop main loop
|
||||
logrus.Error("Disconnected: ", reason)
|
||||
return DisconnectErr{Reason: reason}
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
package tgbot
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"log"
|
||||
"net/http"
|
||||
"net/url"
|
||||
@ -30,7 +31,7 @@ func Run(sendFunc func(string) error) {
|
||||
log.Panic(err)
|
||||
}
|
||||
|
||||
conf.Bot.Debug = true
|
||||
conf.Bot.Debug = false
|
||||
|
||||
log.Printf("Authorized on account %s", conf.Bot.Self.UserName)
|
||||
|
||||
@ -43,7 +44,9 @@ func Run(sendFunc func(string) error) {
|
||||
logrus.Infof("[%s] %s", update.Message.From.UserName, update.Message.Text)
|
||||
if update.Message.Command() == "talk" {
|
||||
logrus.Infof("id is %d", update.Message.Chat.ID)
|
||||
sendFunc(update.Message.CommandArguments())
|
||||
m := fmt.Sprintf("%v: %v", update.Message.From.UserName, update.Message.CommandArguments())
|
||||
err := sendFunc(m)
|
||||
logrus.WithError(err).Error("send message error")
|
||||
}
|
||||
if update.Message.Command() == "list" {
|
||||
logrus.Infof("id is %d", update.Message.Chat.ID)
|
||||
|
Loading…
x
Reference in New Issue
Block a user