bot

package
v0.11.15 Latest Latest
Warning

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

Go to latest
Published: Sep 15, 2025 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Slack

type Slack struct {
	// contains filtered or unexported fields
}

func NewSlack

func NewSlack(options SlackOptions, observability *common.Observability, processors *common.Processors) *Slack

func (*Slack) AddAction added in v0.10.0

func (s *Slack) AddAction(channelID, timestamp string, action common.Action) error

func (*Slack) AddActions added in v0.10.0

func (s *Slack) AddActions(channelID, timestamp string, actions []common.Action) error

func (*Slack) AddDivider added in v0.11.7

func (s *Slack) AddDivider(channelID, message string) error

func (*Slack) AddReaction added in v0.4.7

func (s *Slack) AddReaction(channelID, timestamp, name string) error

func (*Slack) ClearActions added in v0.10.0

func (s *Slack) ClearActions(channelID, timestamp string) error

func (*Slack) Command added in v0.5.0

func (s *Slack) Command(channel, text string, user common.User, parent common.Message, response common.Response) error

this method primarily used in custom command executions

func (*Slack) Debug added in v0.1.0

func (s *Slack) Debug(msg string, args ...any)

func (*Slack) DeleteMessage added in v0.7.0

func (s *Slack) DeleteMessage(channel, ID string) error

func (*Slack) Error added in v0.1.0

func (s *Slack) Error(msg string, args ...any)

func (*Slack) Info added in v0.0.3

func (s *Slack) Info(msg string, args ...any)

func (*Slack) Name

func (s *Slack) Name() string

func (*Slack) PostMessage added in v0.7.0

func (s *Slack) PostMessage(channel string, message string, attachments []*common.Attachment, actions []common.Action,
	user common.User, parent common.Message, response common.Response) (string, error)

this method is needed to post custom messages

func (*Slack) ReadMessage added in v0.7.0

func (s *Slack) ReadMessage(channel, messageTS, threadTS string) (string, error)

func (*Slack) ReadThread added in v0.11.15

func (s *Slack) ReadThread(channel, threadTS string) ([]string, error)

func (*Slack) RemoveAction added in v0.10.0

func (s *Slack) RemoveAction(channelID, timestamp, name string) error

func (*Slack) RemoveReaction added in v0.9.2

func (s *Slack) RemoveReaction(channelID, timestamp, name string) error

func (*Slack) Start

func (t *Slack) Start(wg *sync.WaitGroup)

func (*Slack) UpdateMessage added in v0.7.0

func (s *Slack) UpdateMessage(channel, ID, message string) error

func (*Slack) Warn added in v0.1.0

func (s *Slack) Warn(msg string, args ...any)

type SlackChannel added in v0.2.0

type SlackChannel struct {
	// contains filtered or unexported fields
}

func (*SlackChannel) ID added in v0.2.0

func (sc *SlackChannel) ID() string

type SlackCompleteUploadExternalResponse added in v0.1.0

type SlackCompleteUploadExternalResponse struct {
	Files []slack.FileSummary `json:"files"`
	slack.SlackResponse
}

type SlackFile added in v0.1.0

type SlackFile struct {
	URL string `json:"url,omitempty"`
	ID  string `json:"id,omitempty"`
}

type SlackFileBlock added in v0.2.2

type SlackFileBlock struct {
	Type       slack.MessageBlockType `json:"type"`
	ExternalID string                 `json:"external_id"`
	Source     string                 `json:"source"`
	BlockID    string                 `json:"block_id,omitempty"`
}

func (SlackFileBlock) BlockType added in v0.2.2

func (s SlackFileBlock) BlockType() slack.MessageBlockType

SlackFileBlock

type SlackFileResponseFull added in v0.1.0

type SlackFileResponseFull struct {
	slack.File   `json:"file"`
	slack.Paging `json:"paging"`
	Comments     []slack.Comment        `json:"comments"`
	Files        []slack.File           `json:"files"`
	Metadata     slack.ResponseMetadata `json:"response_metadata"`
	slack.SlackResponse
}

type SlackImageBlock added in v0.1.0

type SlackImageBlock struct {
	Type      slack.MessageBlockType `json:"type"`
	SlackFile *SlackFile             `json:"slack_file"`
	AltText   string                 `json:"alt_text"`
	BlockID   string                 `json:"block_id,omitempty"`
	Title     *slack.TextBlockObject `json:"title,omitempty"`
}

func (SlackImageBlock) BlockType added in v0.1.0

func (s SlackImageBlock) BlockType() slack.MessageBlockType

SlackImageBlock

type SlackMessage added in v0.2.0

type SlackMessage struct {
	// contains filtered or unexported fields
}

func (*SlackMessage) Caller added in v0.10.0

func (sm *SlackMessage) Caller() common.User

func (*SlackMessage) Channel added in v0.3.9

func (sm *SlackMessage) Channel() common.Channel

func (*SlackMessage) ID added in v0.2.0

func (sm *SlackMessage) ID() string

func (*SlackMessage) OriginalID added in v0.11.1

func (sm *SlackMessage) OriginalID() string

func (*SlackMessage) ParentID added in v0.4.2

func (sm *SlackMessage) ParentID() string

func (*SlackMessage) SetParentID added in v0.9.3

func (sm *SlackMessage) SetParentID(threadTS string)

func (*SlackMessage) User added in v0.2.0

func (sm *SlackMessage) User() common.User

func (*SlackMessage) Visible added in v0.2.0

func (sm *SlackMessage) Visible() bool

type SlackMessageField added in v0.11.0

type SlackMessageField struct {
	// contains filtered or unexported fields
}

func (*SlackMessageField) Default added in v0.11.0

func (smf *SlackMessageField) Default() string

func (*SlackMessageField) Dependencies added in v0.11.0

func (smf *SlackMessageField) Dependencies() []string

func (*SlackMessageField) Filter added in v0.11.0

func (smf *SlackMessageField) Filter() string

func (*SlackMessageField) Hint added in v0.11.0

func (smf *SlackMessageField) Hint() string

func (*SlackMessageField) Label added in v0.11.0

func (smf *SlackMessageField) Label() string

func (*SlackMessageField) Name added in v0.11.0

func (smf *SlackMessageField) Name() string

func (*SlackMessageField) Required added in v0.11.0

func (smf *SlackMessageField) Required() bool

func (*SlackMessageField) Type added in v0.11.0

func (smf *SlackMessageField) Type() common.FieldType

func (*SlackMessageField) Value added in v0.11.0

func (smf *SlackMessageField) Value() string

func (*SlackMessageField) Values added in v0.11.0

func (smf *SlackMessageField) Values() []string

func (*SlackMessageField) Visible added in v0.11.4

func (smf *SlackMessageField) Visible() bool

type SlackMessageFields added in v0.11.0

type SlackMessageFields struct {
	// contains filtered or unexported fields
}

type SlackMessageKey added in v0.10.0

type SlackMessageKey struct {
	// contains filtered or unexported fields
}

func (*SlackMessageKey) String added in v0.10.0

func (smk *SlackMessageKey) String() string

type SlackOptions

type SlackOptions struct {
	BotToken         string
	AppToken         string
	Debug            bool
	DefaultCommand   string
	HelpCommand      string
	GroupPermissions string
	UserPermissions  string
	Timeout          int
	PublicChannel    string

	ApprovalAny         bool
	ApprovalReply       string
	ApprovalReasons     string
	ApprovalDescription string

	AttachmentColor string
	ErrorColor      string

	TitleConfirmation string
	ApprovedMessage   string
	RejectedMessage   string
	WaitingMessage    string

	ReactionDoing    string
	ReactionDone     string
	ReactionFailed   string
	ReactionForm     string
	ReactionApproval string
	ReactionApproved string
	ReactionRejected string

	ButtonSubmitCaption  string
	ButtonSubmitStyle    string
	ButtonCancelCaption  string
	ButtonCancelStyle    string
	ButtonConfirmCaption string
	ButtonRejectCaption  string
	ButtonApproveCaption string

	CacheTTL        string
	MaxQueryOptions int
	MinQueryLength  int

	UserGroupsInterval int
}

type SlackResponse added in v0.6.4

type SlackResponse struct {
	// contains filtered or unexported fields
}

func (*SlackResponse) Duration added in v0.6.4

func (r *SlackResponse) Duration() bool

func (*SlackResponse) Error added in v0.6.4

func (r *SlackResponse) Error() bool

func (*SlackResponse) Original added in v0.6.4

func (r *SlackResponse) Original() bool

func (*SlackResponse) Visible added in v0.6.4

func (r *SlackResponse) Visible() bool

type SlackRichTextQuote

type SlackRichTextQuote struct {
	Type     slack.RichTextElementType    `json:"type"`
	Elements []*SlackRichTextQuoteElement `json:"elements"`
}

func (SlackRichTextQuote) RichTextElementType

func (r SlackRichTextQuote) RichTextElementType() slack.RichTextElementType

SlackRichTextQuote

type SlackRichTextQuoteElement

type SlackRichTextQuoteElement struct {
	Type   slack.RichTextElementType `json:"type"`
	Text   string                    `json:"text,omitempty"`
	UserID string                    `json:"user_id,omitempty"`
}

func (SlackRichTextQuoteElement) RichTextElementType

func (r SlackRichTextQuoteElement) RichTextElementType() slack.RichTextElementType

type SlackUploadURLExternalResponse added in v0.1.0

type SlackUploadURLExternalResponse struct {
	UploadURL string `json:"upload_url"`
	FileID    string `json:"file_id"`
	slack.SlackResponse
}

type SlackUser

type SlackUser struct {
	// contains filtered or unexported fields
}

func (*SlackUser) Commands added in v0.6.10

func (su *SlackUser) Commands() []string

func (*SlackUser) ID

func (su *SlackUser) ID() string

func (*SlackUser) Name

func (su *SlackUser) Name() string

func (*SlackUser) TimeZone added in v0.1.1

func (su *SlackUser) TimeZone() string

type SlackUserGroups added in v0.10.0

type SlackUserGroups struct {
	// contains filtered or unexported fields
}

type Telegram

type Telegram struct {
	// contains filtered or unexported fields
}

func NewTelegram

func NewTelegram(options TelegramOptions, observability *common.Observability, processors *common.Processors) *Telegram

func (*Telegram) Name

func (t *Telegram) Name() string

func (*Telegram) Start

func (t *Telegram) Start(wg *sync.WaitGroup)

type TelegramOptions

type TelegramOptions struct {
	BotToken string
	Debug    bool
	Timeout  int
	Offset   int
}

Jump to

Keyboard shortcuts

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