MCPcopy Index your code
hub / github.com/FloatTech/ZeroBot-Plugin / init

Function init

plugin/manager/manager.go:71–712  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

69)
70
71func init() { // 插件主体
72 engine := control.AutoRegister(&ctrl.Options[*zero.Ctx]{
73 DisableOnDefault: false,
74 Brief: "群管插件",
75 Help: hint,
76 PrivateDataFolder: "manager",
77 })
78
79 go func() {
80 db = sql.New(engine.DataFolder() + "config.db")
81 err := db.Open(time.Hour)
82 if err != nil {
83 panic(err)
84 }
85 clock = timer.NewClock(&db)
86 err = db.Create("welcome", &welcome{})
87 if err != nil {
88 panic(err)
89 }
90 err = db.Create("member", &member{})
91 if err != nil {
92 panic(err)
93 }
94 err = db.Create("farewell", &welcome{})
95 if err != nil {
96 panic(err)
97 }
98 }()
99
100 // 升为管理
101 engine.OnRegex(`^升为管理.*?(\d+)`, zero.OnlyGroup, zero.SuperUserPermission).SetBlock(true).
102 Handle(func(ctx *zero.Ctx) {
103 ctx.SetThisGroupAdmin(
104 math.Str2Int64(ctx.State["regex_matched"].([]string)[1]), // 被升为管理的人的qq
105 true,
106 )
107 nickname := ctx.GetThisGroupMemberInfo( // 被升为管理的人的昵称
108 math.Str2Int64(ctx.State["regex_matched"].([]string)[1]), // 被升为管理的人的qq
109 false,
110 ).Get("nickname").Str
111 ctx.SendChain(message.Text(nickname + " 升为了管理~"))
112 })
113 // 取消管理
114 engine.OnRegex(`^取消管理.*?(\d+)`, zero.OnlyGroup, zero.SuperUserPermission).SetBlock(true).
115 Handle(func(ctx *zero.Ctx) {
116 ctx.SetThisGroupAdmin(
117 math.Str2Int64(ctx.State["regex_matched"].([]string)[1]), // 被取消管理的人的qq
118 false,
119 )
120 nickname := ctx.GetThisGroupMemberInfo( // 被取消管理的人的昵称
121 math.Str2Int64(ctx.State["regex_matched"].([]string)[1]), // 被取消管理的人的qq
122 false,
123 ).Get("nickname").Str
124 ctx.SendChain(message.Text("残念~ " + nickname + " 暂时失去了管理员的资格"))
125 })
126 // 踢出群聊
127 engine.OnRegex(`^踢出群聊.*?(\d+)`, zero.OnlyGroup, zero.AdminPermission).SetBlock(true).
128 Handle(func(ctx *zero.Ctx) {

Callers

nothing calls this directly

Calls 13

EnMethod · 0.95
GetTimerIDMethod · 0.95
NewClockFunction · 0.92
GetFilledTimerFunction · 0.92
GetFilledCronTimerFunction · 0.92
welcometocqFunction · 0.85
collectsendFunction · 0.85
checkNewUserFunction · 0.85
RegisterTimerMethod · 0.80
CancelTimerMethod · 0.80
ListTimersMethod · 0.80
FormatMethod · 0.80

Tested by

no test coverage detected