Documentation ¶
Index ¶
- Variables
- func CancelRemoveRole(ctx context.Context, guildID, userID, roleID int64) error
- func CheckDiscordErrRetry(err error) bool
- func RegisterHandler(eventName string, dataFormat interface{}, handler HandlerFunc)
- func RegisterLegacyMigrater(eventName string, migrationHandler func(t time.Time, data string) error)
- func RegisterPlugin()
- func ScheduleDeleteMessages(guildID, channelID int64, when time.Time, messages ...int64) error
- func ScheduleEvent(evtName string, guildID int64, runAt time.Time, data interface{}) error
- func ScheduleRemoveRole(ctx context.Context, guildID, userID, roleID int64, when time.Time) error
- type DeleteMessagesEvent
- type HandlerFunc
- type RegisteredHandler
- type RmoveRoleData
- type ScheduledEvents
- func (se *ScheduledEvents) LateBotInit()
- func (se *ScheduledEvents) MigrateLegacyEvents()
- func (p *ScheduledEvents) PluginInfo() *common.PluginInfo
- func (p *ScheduledEvents) RunBackgroundWorker()
- func (p *ScheduledEvents) StopBackgroundWorker(wg *sync.WaitGroup)
- func (se *ScheduledEvents) StopBot(wg *sync.WaitGroup)
Constants ¶
This section is empty.
Variables ¶
View Source
var DBSchemas = []string{`
CREATE TABLE IF NOT EXISTS scheduled_events (
id BIGSERIAL PRIMARY KEY,
created_at TIMESTAMP WITH TIME ZONE NOT NULL,
triggers_at TIMESTAMP WITH TIME ZONE NOT NULL,
retry_on_error BOOLEAN NOT NULL,
guild_id BIGINT NOT NULL,
event_name TEXT NOT NULL,
data JSONB NOT NULL,
processed BOOL not null
);
`, `
CREATE INDEX IF NOT EXISTS scheduled_events_triggers_at_idx ON scheduled_events(triggers_at);
`, `
ALTER TABLE scheduled_events ADD COLUMN IF NOT EXISTS error TEXT
`,
}
Functions ¶
func CancelRemoveRole ¶ added in v1.16.0
func CheckDiscordErrRetry ¶ added in v1.11.0
func RegisterHandler ¶
func RegisterHandler(eventName string, dataFormat interface{}, handler HandlerFunc)
RegisterHandler registers a handler for the scpecified event name dataFormat is optional and should not be a pointer, it should match the type you're passing into ScheduleEvent
func RegisterLegacyMigrater ¶ added in v1.11.0
func RegisterLegacyMigrater(eventName string, migrationHandler func(t time.Time, data string) error)
RegisterHandler registers a handler for the scpecified event name dataFormat is optional and should not be a pointer, it should match the type you're passing into ScheduleEvent
func RegisterPlugin ¶
func RegisterPlugin()
func ScheduleDeleteMessages ¶ added in v1.13.0
func ScheduleEvent ¶ added in v1.11.0
Types ¶
type DeleteMessagesEvent ¶ added in v1.13.0
type HandlerFunc ¶
type HandlerFunc func(evt *models.ScheduledEvent, data interface{}) (retry bool, err error)
type RegisteredHandler ¶
type RegisteredHandler struct { EvtName string DataFormat interface{} Handler HandlerFunc }
type RmoveRoleData ¶ added in v1.16.0
type ScheduledEvents ¶
type ScheduledEvents struct {
// contains filtered or unexported fields
}
func (*ScheduledEvents) LateBotInit ¶ added in v1.11.5
func (se *ScheduledEvents) LateBotInit()
func (*ScheduledEvents) MigrateLegacyEvents ¶ added in v1.11.0
func (se *ScheduledEvents) MigrateLegacyEvents()
func (*ScheduledEvents) PluginInfo ¶ added in v1.17.0
func (p *ScheduledEvents) PluginInfo() *common.PluginInfo
func (*ScheduledEvents) RunBackgroundWorker ¶ added in v1.11.0
func (p *ScheduledEvents) RunBackgroundWorker()
func (*ScheduledEvents) StopBackgroundWorker ¶ added in v1.11.0
func (p *ScheduledEvents) StopBackgroundWorker(wg *sync.WaitGroup)
func (*ScheduledEvents) StopBot ¶ added in v1.11.0
func (se *ScheduledEvents) StopBot(wg *sync.WaitGroup)
Source Files ¶
Click to show internal directories.
Click to hide internal directories.