slakki

package module
v0.1.18 Latest Latest
Warning

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

Go to latest
Published: Oct 23, 2023 License: GPL-3.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidCommand  = errors.New("invalid command")
	ErrNilClient       = errors.New("slack client is nil")
	ErrNilSocket       = errors.New("socket client is nil")
	ErrNilHandler      = errors.New("handler is nil")
	ErrNilManager      = errors.New("manager is nil")
	ErrInvalidManager  = errors.New("invalid manager")
	ErrCommandNotFound = errors.New("command not found")
)

Functions

func DefaultError added in v0.1.9

func DefaultError(err error) slack.Attachment

Types

type CMDHandler

type CMDHandler[C CMDTypes] func(ctx context.Context, client *slack.Client, command C) error

type CMDTypes

type CMDTypes interface {
	slack.SlashCommand | slack.InteractionCallback
}

type CallbackHandler added in v0.1.11

type CallbackHandler func(ctx context.Context, client *slack.Client, command slack.InteractionCallback) error

type CommandOptions added in v0.1.11

type CommandOptions func(*commandConfig)

func WithCallback added in v0.1.11

func WithCallback(id string, callback CallbackHandler) CommandOptions

func WithHelp added in v0.1.11

func WithHelp(help HelpHandler) CommandOptions

type ErrorHandler added in v0.1.9

type ErrorHandler func(client *slack.Client, channel string, err error) error

type HelpHandler added in v0.1.11

type HelpHandler func(client *slack.Client, channel string, command string) error

type Manager

type Manager interface {
	Slash(name string, handler CMDHandler[slack.SlashCommand], opts ...CommandOptions)
	Callback(name string, handler CMDHandler[slack.InteractionCallback])
	SetErrorHandler(handler ErrorHandler)
	Mount(prefix string, src Manager) (Manager, error)
	ListenAndServe() error
}

func NewManager

func NewManager(sClient *socketmode.Client, client *slack.Client) Manager

type SlashHandler added in v0.1.11

type SlashHandler func(ctx context.Context, client *slack.Client, command slack.SlashCommand) error

Jump to

Keyboard shortcuts

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