go-bot/utils/router.go
liyp ca02f5fcf1 修改过滤条件
测试判断字符串开头

修复字符串开头判断

优化消息开头字符
2024-04-20 13:30:29 +08:00

46 lines
1.2 KiB
Go

package utils
import (
"fmt"
"go-bot/workers"
"strings"
)
func Router(data map[string]interface{}) {
// 将map转换为格式化的JSON字符串
// jsonString, err := json.MarshalIndent(data, "", " ")
// if err != nil {
// panic(err)
// }
// 输出格式化后的JSON
// fmt.Println(string(jsonString))
// 读取字段值
uid := data["user_id"].(float64)
gid := data["group_id"].(float64)
sender := data["sender"].(map[string]interface{})
role := sender["role"].(string)
mid := data["message_id"].(float64)
//包含发送消息的'!'
raw_msg := data["raw_message"].(string)
// fmt.Println("raw_msg:", string(raw_msg[0]))
if len(raw_msg) > 1 && raw_msg[0] == '!' {
// 去除'!'
raw_msg = raw_msg[1:]
parms := strings.Fields(raw_msg)
worker := workers.NewWorker(parms, fmt.Sprintf("%d", int(uid)), fmt.Sprintf("%d", int(gid)), role, fmt.Sprintf("%d", int(mid)), raw_msg)
// fmt.Println("router:", parms[0])
// fmt.Println("CheckPermission:", worker.CheckPermission())
// ans := NewStdAns(parms[0], fmt.Sprintf("%d", int(uid)), fmt.Sprintf("%d", int(gid)), role, fmt.Sprintf("%d", int(mid)), raw_msg)
message := worker.CheckPermission()
if message == "0" {
message = worker.GetMsg()
worker.SendMsg(message)
}
}
}