manager

package
v1.2.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 18, 2023 License: AGPL-3.0 Imports: 13 Imported by: 0

README

介绍

  • 插件名:manager
  • 插件描述:管理群组/私聊
  • 插件功能:
    • 实现全局监听好友添加邀请拉群的功能
    • 实现查询菜单的功能
    • 实现添加定时任务的功能,当前存在的指令有:
      • 设置每月的提醒,例如:设置每月8号10:00:00的提醒
      • 设置每周的提醒,例如:设置每周三10:00:00的提醒
      • 设置每天的提醒,例如:设置每天10:00:00的提醒
      • 设置每隔多久的提醒,例如:设置每隔1小时的提醒
      • 设置指定时间的一次性提醒任务,例如:设置2023-01-01 15:00:00的提醒
      • 设置cron表达式提醒任务,例如:设置表达式(*/10 * * * * *)的提醒
      • 设置每天执行插件任务,例如:设置每天08:00:00执行插件
      • 列出所有任务
      • 删除任务 任务ID
      • 删除全部任务
      • 删除全部提醒任务

Documentation

Index

Constants

View Source
const (
	JobTypeRemind = "remind" // 提醒类任务
	JobTypeFunc   = "func"   // 函数类任务
	JobTypePlugin = "plugin" // 插件类任务

	RegexOfRemindEveryMonth  = `^设置每月(0?[1-9]|[12][0-9]|3[01])号(([01]?[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9])的提醒$`
	RegexOfRemindEveryWeek   = `^设置每周(一|二|三|四|五|六|七|日)(([01]?[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9])的提醒$`
	RegexOfRemindEveryDay    = `^设置每天(([01]?[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9])的提醒$`
	RegexOfRemindInterval    = `^设置每隔(\d+)(s|秒|m|分|分钟|h|时|d|小时)的提醒$`
	RegexOfRemindSpecifyTime = `^设置((20[2-9][0-9]|2100)-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])\s([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9])的提醒$`
	RegexOfRemindExpression  = `` /* 331-byte string literal not displayed */
	RegexOfPluginEveryDay    = `^设置每天(([01]?[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9])执行插件$`
)

Variables

This section is empty.

Functions

func AddPluginOfEveryDay

func AddPluginOfEveryDay(ctx *robot.Ctx, jobTag string, matched []string, f func()) (*gocron.Job, error)

AddPluginOfEveryDay 添加每天执行的插件

func AddRemindForExpression

func AddRemindForExpression(ctx *robot.Ctx, jobTag string, matched []string, f func()) (*gocron.Job, error)

AddRemindForExpression 添加表达式提醒

func AddRemindForInterval

func AddRemindForInterval(ctx *robot.Ctx, jobTag string, matched []string, f func()) (*gocron.Job, error)

AddRemindForInterval 添加间隔提醒

func AddRemindForSpecifyTime

func AddRemindForSpecifyTime(ctx *robot.Ctx, jobTag string, matched []string, f func()) (*gocron.Job, error)

AddRemindForSpecifyTime 添加指定时间提醒

func AddRemindOfEveryDay

func AddRemindOfEveryDay(ctx *robot.Ctx, jobTag string, matched []string, f func()) (*gocron.Job, error)

AddRemindOfEveryDay 添加每天提醒

func AddRemindOfEveryMonth

func AddRemindOfEveryMonth(ctx *robot.Ctx, jobTag string, matched []string, f func()) (*gocron.Job, error)

AddRemindOfEveryMonth 添加每月提醒

func AddRemindOfEveryWeek

func AddRemindOfEveryWeek(ctx *robot.Ctx, jobTag string, matched []string, f func()) (*gocron.Job, error)

AddRemindOfEveryWeek 添加每周提醒

Types

type Command added in v1.0.3

type Command struct {
	MenuMode string `gorm:"column:menu_mode;default:'1'"` // 菜单模式,默认模式一
}

type CronJob

type CronJob struct {
	Id      int64  `gorm:"primary_key"`
	Tag     string `gorm:"column:tag"`
	Type    string `gorm:"column:type"`
	Desc    string `gorm:"column:desc"`
	GroupId string `gorm:"column:group_id"`
	Remind  string `gorm:"column:remind"`
	Service string `gorm:"column:service"`
}
type MenuOptions struct {
	WxId  string `json:"wxId"`
	Menus []struct {
		Name      string `json:"name"`
		Alias     string `json:"alias"`
		Priority  uint64 `json:"priority"`
		Describe  string `json:"describe"`
		DefStatus bool   `json:"defStatus"`
		CurStatus bool   `json:"curStatus"`
	} `json:"menus"`
}

MenuOptions 菜单配置

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL