mirror of
https://github.com/FloatTech/ZeroBot-Plugin.git
synced 2025-12-20 06:20:08 +08:00
fix: reg panic
This commit is contained in:
parent
454196a462
commit
7aed9a2c89
2
go.mod
2
go.mod
@ -5,7 +5,7 @@ go 1.17
|
|||||||
require (
|
require (
|
||||||
github.com/FloatTech/AnimeAPI v1.3.0-beta8.0.20220224052148-f7a1379d4a00
|
github.com/FloatTech/AnimeAPI v1.3.0-beta8.0.20220224052148-f7a1379d4a00
|
||||||
github.com/FloatTech/sqlite v0.2.0
|
github.com/FloatTech/sqlite v0.2.0
|
||||||
github.com/FloatTech/zbputils v1.3.0-beta8.0.20220224114458-4310f8e13ad3
|
github.com/FloatTech/zbputils v1.3.0-beta8.0.20220224132834-0341eb3c3b13
|
||||||
github.com/antchfx/htmlquery v1.2.4
|
github.com/antchfx/htmlquery v1.2.4
|
||||||
github.com/corona10/goimagehash v1.0.3
|
github.com/corona10/goimagehash v1.0.3
|
||||||
github.com/fogleman/gg v1.3.0
|
github.com/fogleman/gg v1.3.0
|
||||||
|
|||||||
4
go.sum
4
go.sum
@ -4,8 +4,8 @@ github.com/FloatTech/bot-manager v1.0.0/go.mod h1:8YYRJ16oroGHQGD2En0oVnmcKJkxR9
|
|||||||
github.com/FloatTech/sqlite v0.2.0 h1:x3uls/hExXH1+bbaNLkvilce6ATtWlDx4IqoxBW/bv8=
|
github.com/FloatTech/sqlite v0.2.0 h1:x3uls/hExXH1+bbaNLkvilce6ATtWlDx4IqoxBW/bv8=
|
||||||
github.com/FloatTech/sqlite v0.2.0/go.mod h1:xIDWIvpOFl8AXmZm0FC8t3PZjiR6ZutytCpBv2EWCns=
|
github.com/FloatTech/sqlite v0.2.0/go.mod h1:xIDWIvpOFl8AXmZm0FC8t3PZjiR6ZutytCpBv2EWCns=
|
||||||
github.com/FloatTech/zbputils v1.3.0-beta8.0.20220224051618-597cdb58b3fe/go.mod h1:Jn5LmnwqYivr64qQJBdhDwm2gRut8Hhq5gPBydV0Gvg=
|
github.com/FloatTech/zbputils v1.3.0-beta8.0.20220224051618-597cdb58b3fe/go.mod h1:Jn5LmnwqYivr64qQJBdhDwm2gRut8Hhq5gPBydV0Gvg=
|
||||||
github.com/FloatTech/zbputils v1.3.0-beta8.0.20220224114458-4310f8e13ad3 h1:rIi9+wMFfiYxEG6pCp5Mr6ZiBsstCGHrIt7moGkMEXM=
|
github.com/FloatTech/zbputils v1.3.0-beta8.0.20220224132834-0341eb3c3b13 h1:EMkixYWDwQKdlUpt0MF63Nj1e5pdladkWJ++5VCTGSc=
|
||||||
github.com/FloatTech/zbputils v1.3.0-beta8.0.20220224114458-4310f8e13ad3/go.mod h1:Jn5LmnwqYivr64qQJBdhDwm2gRut8Hhq5gPBydV0Gvg=
|
github.com/FloatTech/zbputils v1.3.0-beta8.0.20220224132834-0341eb3c3b13/go.mod h1:Jn5LmnwqYivr64qQJBdhDwm2gRut8Hhq5gPBydV0Gvg=
|
||||||
github.com/PuerkitoBio/goquery v1.5.1/go.mod h1:GsLWisAFVj4WgDibEWF4pvYnkVQBpKBKeU+7zCJoLcc=
|
github.com/PuerkitoBio/goquery v1.5.1/go.mod h1:GsLWisAFVj4WgDibEWF4pvYnkVQBpKBKeU+7zCJoLcc=
|
||||||
github.com/RomiChan/websocket v1.4.3-0.20220123145318-307a86b127bc h1:AAx50/fb/xS4lvsdQg+bFbGvqSDhyV1MF+p2PLCamZ0=
|
github.com/RomiChan/websocket v1.4.3-0.20220123145318-307a86b127bc h1:AAx50/fb/xS4lvsdQg+bFbGvqSDhyV1MF+p2PLCamZ0=
|
||||||
github.com/RomiChan/websocket v1.4.3-0.20220123145318-307a86b127bc/go.mod h1:OMmITAib6POA37xCichWM0aRnoVpSMZO1rB/G01wrr0=
|
github.com/RomiChan/websocket v1.4.3-0.20220123145318-307a86b127bc/go.mod h1:OMmITAib6POA37xCichWM0aRnoVpSMZO1rB/G01wrr0=
|
||||||
|
|||||||
@ -12,7 +12,6 @@ var sr = reg.NewRegedit("reilia.fumiama.top:32664", "fumiama", "--")
|
|||||||
|
|
||||||
func TestGetHoliday(t *testing.T) {
|
func TestGetHoliday(t *testing.T) {
|
||||||
registry.Connect()
|
registry.Connect()
|
||||||
holidaymap = make(map[string]*Holiday)
|
|
||||||
h := GetHoliday("元旦")
|
h := GetHoliday("元旦")
|
||||||
registry.Close()
|
registry.Close()
|
||||||
t.Fatal(h)
|
t.Fatal(h)
|
||||||
|
|||||||
@ -21,29 +21,20 @@ func NewHoliday(name string, dur, year int, month time.Month, day int) *Holiday
|
|||||||
return &Holiday{name: name, date: time.Date(year, month, day, 0, 0, 0, 0, time.Local), dur: time.Duration(dur) * time.Hour * 24}
|
return &Holiday{name: name, date: time.Date(year, month, day, 0, 0, 0, 0, time.Local), dur: time.Duration(dur) * time.Hour * 24}
|
||||||
}
|
}
|
||||||
|
|
||||||
var (
|
var registry = reg.NewRegReader("reilia.fumiama.top:32664", "fumiama")
|
||||||
registry = reg.NewRegReader("reilia.fumiama.top:32664", "fumiama")
|
|
||||||
holidaymap map[string]*Holiday
|
|
||||||
)
|
|
||||||
|
|
||||||
// GetHoliday 从 reg 服务器获取节日
|
// GetHoliday 从 reg 服务器获取节日
|
||||||
func GetHoliday(name string) *Holiday {
|
func GetHoliday(name string) *Holiday {
|
||||||
var dur, year int
|
var dur, year int
|
||||||
var month time.Month
|
var month time.Month
|
||||||
var day int
|
var day int
|
||||||
h, ok := holidaymap[name]
|
|
||||||
if ok {
|
|
||||||
return h
|
|
||||||
}
|
|
||||||
ret, err := registry.Get("holiday/" + name)
|
ret, err := registry.Get("holiday/" + name)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return NewHoliday(name+err.Error(), 0, 0, 0, 0)
|
return NewHoliday(name+err.Error(), 0, 0, 0, 0)
|
||||||
}
|
}
|
||||||
fmt.Sscanf(ret, "%d_%d_%d_%d", &dur, &year, &month, &day)
|
fmt.Sscanf(ret, "%d_%d_%d_%d", &dur, &year, &month, &day)
|
||||||
logrus.Debugln("[moyu]获取节日:", name, dur, year, month, day)
|
logrus.Debugln("[moyu]获取节日:", name, dur, year, month, day)
|
||||||
h = NewHoliday(name, dur, year, month, day)
|
return NewHoliday(name, dur, year, month, day)
|
||||||
holidaymap[name] = h
|
|
||||||
return h
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// String 获取两个时间相差
|
// String 获取两个时间相差
|
||||||
|
|||||||
@ -31,19 +31,10 @@ func init() { // 插件主体
|
|||||||
func sendNotice() {
|
func sendNotice() {
|
||||||
m, ok := control.Lookup("moyu")
|
m, ok := control.Lookup("moyu")
|
||||||
if ok {
|
if ok {
|
||||||
if holidaymap == nil {
|
|
||||||
ok = false
|
|
||||||
if registry.Connect() != nil {
|
if registry.Connect() != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
holidaymap = make(map[string]*Holiday, 32)
|
msg := message.Message{
|
||||||
}
|
|
||||||
zero.RangeBot(func(id int64, ctx *zero.Ctx) bool {
|
|
||||||
for _, g := range ctx.GetGroupList().Array() {
|
|
||||||
grp := g.Get("group_id").Int()
|
|
||||||
if m.IsEnabledIn(grp) {
|
|
||||||
ctx.SendGroupMessage(grp,
|
|
||||||
[]message.MessageSegment{
|
|
||||||
message.Text(time.Now().Format("2006-01-02")),
|
message.Text(time.Now().Format("2006-01-02")),
|
||||||
message.Text("上午好,摸鱼人!\n工作再累,一定不要忘记摸鱼哦!有事没事起身去茶水间,去厕所,去廊道走走别老在工位上坐着,钱是老板的,但命是自己的。\n"),
|
message.Text("上午好,摸鱼人!\n工作再累,一定不要忘记摸鱼哦!有事没事起身去茶水间,去厕所,去廊道走走别老在工位上坐着,钱是老板的,但命是自己的。\n"),
|
||||||
message.Text(weekend()),
|
message.Text(weekend()),
|
||||||
@ -63,14 +54,16 @@ func sendNotice() {
|
|||||||
message.Text(GetHoliday("国庆节")),
|
message.Text(GetHoliday("国庆节")),
|
||||||
message.Text("\n"),
|
message.Text("\n"),
|
||||||
message.Text("上班是帮老板赚钱,摸鱼是赚老板的钱!最后,祝愿天下所有摸鱼人,都能愉快的渡过每一天…"),
|
message.Text("上班是帮老板赚钱,摸鱼是赚老板的钱!最后,祝愿天下所有摸鱼人,都能愉快的渡过每一天…"),
|
||||||
},
|
}
|
||||||
)
|
_ = registry.Close()
|
||||||
|
zero.RangeBot(func(id int64, ctx *zero.Ctx) bool {
|
||||||
|
for _, g := range ctx.GetGroupList().Array() {
|
||||||
|
grp := g.Get("group_id").Int()
|
||||||
|
if m.IsEnabledIn(grp) {
|
||||||
|
ctx.SendGroupMessage(grp, msg)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
})
|
})
|
||||||
if !ok {
|
|
||||||
_ = registry.Close()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user