From eb57ad0def6a580884546ea3cabf66c1b4495074 Mon Sep 17 00:00:00 2001 From: cdle <798731886@qq.com> Date: Sat, 18 Sep 2021 16:33:50 +0800 Subject: [PATCH] update --- core/config.go | 2 -- core/function.go | 11 +++++------ {im => core}/im.go | 10 +--------- core/reply.go | 7 +++---- core/test.go | 16 +++++++--------- develop/qinglong/config.go | 19 +++++++++---------- develop/qinglong/cron.go | 23 +++++++++++------------ 7 files changed, 36 insertions(+), 52 deletions(-) rename {im => core}/im.go (92%) diff --git a/core/config.go b/core/config.go index e62f3ba..e05c40d 100644 --- a/core/config.go +++ b/core/config.go @@ -8,12 +8,10 @@ import ( "github.com/astaxie/beego/logs" "github.com/beego/beego/v2/adapter/httplib" - "github.com/cdle/sillyGirl/im" "gopkg.in/yaml.v2" ) type Yaml struct { - Im []im.Config Replies []Reply } diff --git a/core/function.go b/core/function.go index d1583de..e82ee03 100644 --- a/core/function.go +++ b/core/function.go @@ -6,7 +6,6 @@ import ( "strings" "github.com/beego/beego/v2/adapter/logs" - "github.com/cdle/sillyGirl/im" cron "github.com/robfig/cron/v3" ) @@ -21,7 +20,7 @@ type Function struct { Rules []string FindAll bool Admin bool - Handle func(s im.Sender) interface{} + Handle func(s Sender) interface{} Cron string } @@ -33,10 +32,10 @@ var name = func() string { var functions = []Function{} -var Senders chan im.Sender +var Senders chan Sender func initToHandleMessage() { - Senders = make(chan im.Sender) + Senders = make(chan Sender) go func() { for { go handleMessage(<-Senders) @@ -63,7 +62,7 @@ func AddCommand(prefix string, cmds []Function) { functions = append(functions, cmds[j]) if cmds[j].Cron != "" { if _, err := c.AddFunc(cmds[j].Cron, func() { - cmds[j].Handle(&im.Faker{}) + cmds[j].Handle(&Faker{}) }); err != nil { logs.Warn("任务%v添加失败%v", cmds[j].Rules[0], err) } else { @@ -73,7 +72,7 @@ func AddCommand(prefix string, cmds []Function) { } } -func handleMessage(sender im.Sender) { +func handleMessage(sender Sender) { for _, function := range functions { for _, rule := range function.Rules { var matched bool diff --git a/im/im.go b/core/im.go similarity index 92% rename from im/im.go rename to core/im.go index b26a06d..8c49e8f 100644 --- a/im/im.go +++ b/core/im.go @@ -1,4 +1,4 @@ -package im +package core import ( "time" @@ -26,14 +26,6 @@ type Sender interface { Disappear(lifetime ...time.Duration) } -type Config struct { - Type string - Masters []int - Groups []int - Token string - CustomConfig string -} - type Faker struct { Message interface{} matches [][]string diff --git a/core/reply.go b/core/reply.go index e9504a8..ead32dc 100644 --- a/core/reply.go +++ b/core/reply.go @@ -7,7 +7,6 @@ import ( "github.com/beego/beego/v2/adapter/httplib" "github.com/buger/jsonparser" - "github.com/cdle/sillyGirl/im" ) type Reply struct { @@ -27,13 +26,13 @@ type Reply struct { func InitReplies() { for _, v := range Config.Replies { reply := v - var handler func(s im.Sender) interface{} + var handler func(s Sender) interface{} if reply.Type != "url" { - handler = func(s im.Sender) interface{} { + handler = func(s Sender) interface{} { return reply.Content } } - handler = func(s im.Sender) interface{} { + handler = func(s Sender) interface{} { url := reply.Request.Url body := reply.Request.Body for k, v := range s.GetMatch() { diff --git a/core/test.go b/core/test.go index e57c99b..0c86289 100644 --- a/core/test.go +++ b/core/test.go @@ -6,8 +6,6 @@ import ( "io/ioutil" "strings" "time" - - "github.com/cdle/sillyGirl/im" ) func init() { @@ -37,7 +35,7 @@ func initSys() { AddCommand("", []Function{ { Rules: []string{"raw ^name$"}, - Handle: func(s im.Sender) interface{} { + Handle: func(s Sender) interface{} { s.Disappear() return name() }, @@ -45,7 +43,7 @@ func initSys() { { Rules: []string{"raw ^升级$"}, Admin: true, - Handle: func(s im.Sender) interface{} { + Handle: func(s Sender) interface{} { s.Disappear() s.Reply(name() + "开始检查核心功能。") update := false @@ -95,7 +93,7 @@ func initSys() { { Rules: []string{"raw ^重启$"}, Admin: true, - Handle: func(s im.Sender) interface{} { + Handle: func(s Sender) interface{} { s.Disappear() sillyGirl.Set("rebootInfo", fmt.Sprintf("%v %v %v", s.GetImType(), s.GetChatID(), s.GetUserID())) Daemon() @@ -104,7 +102,7 @@ func initSys() { }, { Rules: []string{"raw ^命令$"}, - Handle: func(s im.Sender) interface{} { + Handle: func(s Sender) interface{} { s.Disappear() ss := []string{} for _, f := range functions { @@ -116,7 +114,7 @@ func initSys() { { Admin: true, Rules: []string{"set ? ? ?"}, - Handle: func(s im.Sender) interface{} { + Handle: func(s Sender) interface{} { s.Disappear() b := Bucket(s.Get(0)) if !IsBucket(b) { @@ -129,7 +127,7 @@ func initSys() { { Admin: true, Rules: []string{"delete ? ?"}, - Handle: func(s im.Sender) interface{} { + Handle: func(s Sender) interface{} { s.Disappear() b := Bucket(s.Get(0)) if !IsBucket(b) { @@ -142,7 +140,7 @@ func initSys() { { Admin: true, Rules: []string{"get ? ?"}, - Handle: func(s im.Sender) interface{} { + Handle: func(s Sender) interface{} { s.Disappear() b := Bucket(s.Get(0)) if !IsBucket(b) { diff --git a/develop/qinglong/config.go b/develop/qinglong/config.go index ea6ae32..56a87f9 100644 --- a/develop/qinglong/config.go +++ b/develop/qinglong/config.go @@ -6,7 +6,6 @@ import ( "strings" "github.com/cdle/sillyGirl/core" - "github.com/cdle/sillyGirl/im" ) func init() { @@ -14,7 +13,7 @@ func init() { { Rules: []string{`config`}, Admin: true, - Handle: func(_ im.Sender) interface{} { + Handle: func(_ core.Sender) interface{} { config, err := GetConfig() if err != nil { return err @@ -30,7 +29,7 @@ func init() { { Rules: []string{`envs`}, Admin: true, - Handle: func(_ im.Sender) interface{} { + Handle: func(_ core.Sender) interface{} { envs, err := GetConfigEnvs("") if err != nil { return err @@ -48,7 +47,7 @@ func init() { { Rules: []string{`env get ?`}, Admin: true, - Handle: func(s im.Sender) interface{} { + Handle: func(s core.Sender) interface{} { name := s.Get() envs, err := GetConfigEnvs(name) if err != nil { @@ -69,7 +68,7 @@ func init() { { Rules: []string{`env find ?`}, Admin: true, - Handle: func(s im.Sender) interface{} { + Handle: func(s core.Sender) interface{} { m := s.Get() envs, err := GetConfigEnvs(m) if err != nil { @@ -88,7 +87,7 @@ func init() { { Rules: []string{`env set ? ?`}, Admin: true, - Handle: func(s im.Sender) interface{} { + Handle: func(s core.Sender) interface{} { err := SetConfigEnv(Env{ Name: s.Get(0), Value: s.Get(1), @@ -103,7 +102,7 @@ func init() { // { // Rules: []string{`env delete ?`}, // Admin: true, - // Handle: func(s im.Sender) interface{} { + // Handle: func(s core.Sender) interface{} { // if err := DelEnv(&Env{ID: s.Get()}); err != nil { // return err // } @@ -113,7 +112,7 @@ func init() { { Rules: []string{`env remark ? ?`}, Admin: true, - Handle: func(s im.Sender) interface{} { + Handle: func(s core.Sender) interface{} { if err := SetConfigEnv(Env{Name: s.Get(0), Remarks: s.Get(1), Status: 3}); err != nil { return err } @@ -123,7 +122,7 @@ func init() { { Rules: []string{`env disable ?`}, Admin: true, - Handle: func(s im.Sender) interface{} { + Handle: func(s core.Sender) interface{} { if err := SetConfigEnv(Env{Name: s.Get(), Status: 1}); err != nil { return err } @@ -133,7 +132,7 @@ func init() { { Rules: []string{`env enable ?`}, Admin: true, - Handle: func(s im.Sender) interface{} { + Handle: func(s core.Sender) interface{} { if err := SetConfigEnv(Env{Name: s.Get()}); err != nil { return err } diff --git a/develop/qinglong/cron.go b/develop/qinglong/cron.go index c894259..8dd3c78 100644 --- a/develop/qinglong/cron.go +++ b/develop/qinglong/cron.go @@ -7,7 +7,6 @@ import ( "strings" "github.com/cdle/sillyGirl/core" - "github.com/cdle/sillyGirl/im" ) type CronResponse struct { @@ -34,7 +33,7 @@ func init() { { Rules: []string{`crons`}, Admin: true, - Handle: func(_ im.Sender) interface{} { + Handle: func(_ core.Sender) interface{} { crons, err := GetCrons("") if err != nil { return err @@ -52,7 +51,7 @@ func init() { { Rules: []string{`cron status ?`}, Admin: true, - Handle: func(s im.Sender) interface{} { + Handle: func(s core.Sender) interface{} { keyword := s.Get() crons, err := GetCrons("") if err != nil { @@ -77,7 +76,7 @@ func init() { { Rules: []string{`cron run ?`}, Admin: true, - Handle: func(s im.Sender) interface{} { + Handle: func(s core.Sender) interface{} { cron, err := GetCronID(s.Get()) if err != nil { return err @@ -91,7 +90,7 @@ func init() { { Rules: []string{`cron stop ?`}, Admin: true, - Handle: func(s im.Sender) interface{} { + Handle: func(s core.Sender) interface{} { cron, err := GetCronID(s.Get()) if err != nil { return err @@ -105,7 +104,7 @@ func init() { { Rules: []string{`cron enable ?`}, Admin: true, - Handle: func(s im.Sender) interface{} { + Handle: func(s core.Sender) interface{} { cron, err := GetCronID(s.Get()) if err != nil { return err @@ -119,7 +118,7 @@ func init() { { Rules: []string{`cron disable ?`}, Admin: true, - Handle: func(s im.Sender) interface{} { + Handle: func(s core.Sender) interface{} { cron, err := GetCronID(s.Get()) if err != nil { return err @@ -133,7 +132,7 @@ func init() { { Rules: []string{`cron find ?`}, Admin: true, - Handle: func(s im.Sender) interface{} { + Handle: func(s core.Sender) interface{} { name := s.Get() crons, err := GetCrons("") if err != nil { @@ -154,7 +153,7 @@ func init() { { Rules: []string{`cron logs ?`}, Admin: true, - Handle: func(s im.Sender) interface{} { + Handle: func(s core.Sender) interface{} { cron, err := GetCronID(s.Get()) if err != nil { return err @@ -169,7 +168,7 @@ func init() { { Rules: []string{`update`}, Admin: true, - Handle: func(_ im.Sender) interface{} { + Handle: func(_ core.Sender) interface{} { cron, err := GetCronID("更新面板") if err != nil { return err @@ -183,7 +182,7 @@ func init() { { Rules: []string{`update logs`}, Admin: true, - Handle: func(_ im.Sender) interface{} { + Handle: func(_ core.Sender) interface{} { cron, err := GetCronID("更新面板") if err != nil { return err @@ -199,7 +198,7 @@ func init() { Rules: []string{`cron hide duplicate`}, Admin: true, Cron: "*/10 * * * *", - Handle: func(_ im.Sender) interface{} { + Handle: func(_ core.Sender) interface{} { w := func(s string) int { if strings.Contains(s, "shufflewzc") { return 1