ProjectWIND/core/app_core.go

60 lines
1.1 KiB
Go
Raw Normal View History

2024-12-07 17:16:44 +08:00
package core
import (
"ProjectWIND/LOG"
"ProjectWIND/wba"
"errors"
)
type CmdListInfo map[string]wba.Cmd
type AppInfo struct {
CmdMap map[string]wba.Cmd
}
func (app AppInfo) Get() AppInfo {
return app
}
func (app *AppInfo) Run(cmd string, args []string, msg wba.MessageEventInfo) error {
_, ok := app.CmdMap[cmd]
if !ok {
return errors.New("cmd not found")
}
app.CmdMap[cmd].SOLVE(args, msg)
return nil
}
func (app *AppInfo) Init(Api wba.WindStandardProtocolAPI) error {
2024-12-07 17:16:44 +08:00
return nil
}
2025-03-03 14:21:54 +08:00
func (app *AppInfo) InitWSD(Api wba.WindStandardDataBaseAPI) error {
return nil
}
2024-12-07 17:16:44 +08:00
func (app *AppInfo) GetCmd() map[string]wba.Cmd {
return app.CmdMap
}
func NewCmd(name string, help string, solve func(args []string, msg wba.MessageEventInfo)) wba.Cmd {
return wba.Cmd{
NAME: name,
DESC: help,
SOLVE: solve,
}
}
var AppCore = AppInfo{
CmdMap: CmdListInfo{
"bot": NewCmd(
"bot",
"显示WIND版本信息",
func(args []string, msg wba.MessageEventInfo) {
AppApi.SendMsg(msg, "WIND 0.1.0", false)
LOG.Info("发送核心版本信息:(至:%v-%v:%v-%v)", msg.MessageType, msg.GroupId, msg.UserId, msg.Sender.Nickname)
2024-12-07 17:16:44 +08:00
},
),
},
}