slack

package
v0.32.0 Latest Latest
Warning

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

Go to latest
Published: Feb 9, 2024 License: Apache-2.0 Imports: 32 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Signature added in v0.30.1

func Signature(signingSecret string, ts time.Time, data []byte) string

Signature generates a signature for a Slack request.

Types

type Channel

type Channel struct {
	ID     string
	Name   string
	TeamID string
}

Channel contains information about a Slack channel.

type ChannelSender

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

func NewChannelSender

func NewChannelSender(ctx context.Context, cfg Config) (*ChannelSender, error)

func (*ChannelSender) Channel

func (s *ChannelSender) Channel(ctx context.Context, channelID string) (*Channel, error)

Channel will lookup a single Slack channel for the bot.

func (*ChannelSender) DMSender added in v0.31.0

func (s *ChannelSender) DMSender() *DMSender

DMSender returns a new DMSender wrapping the given ChannelSender.

func (*ChannelSender) ListChannels

func (s *ChannelSender) ListChannels(ctx context.Context) ([]Channel, error)

ListChannels will return a list of channels visible to the slack bot.

func (*ChannelSender) ListUserGroups added in v0.31.0

func (s *ChannelSender) ListUserGroups(ctx context.Context) ([]UserGroup, error)

ListUserGroups will return a list of all Slack user groups.

func (*ChannelSender) Send

func (*ChannelSender) ServeMessageAction added in v0.29.0

func (s *ChannelSender) ServeMessageAction(w http.ResponseWriter, req *http.Request)

func (*ChannelSender) SetReceiver added in v0.29.0

func (s *ChannelSender) SetReceiver(r notification.Receiver)

func (*ChannelSender) Team added in v0.32.0

func (s *ChannelSender) Team(ctx context.Context, id string) (t *Team, err error)

func (*ChannelSender) TeamID added in v0.28.0

func (s *ChannelSender) TeamID(ctx context.Context) (string, error)

func (*ChannelSender) User added in v0.31.0

func (s *ChannelSender) User(ctx context.Context, id string) (*User, error)

User will lookup a single Slack user.

func (*ChannelSender) UserGroup added in v0.31.0

func (s *ChannelSender) UserGroup(ctx context.Context, id string) (*UserGroup, error)

User will lookup a single Slack user group.

func (*ChannelSender) UserGroupSender added in v0.31.0

func (s *ChannelSender) UserGroupSender() *UserGroupSender

UserGroupSender returns a new UserGroupSender wrapping the given ChannelSender.

type Config

type Config struct {
	BaseURL   string
	UserStore *user.Store
}

Config contains values used for the Slack notification sender.

type DMSender added in v0.31.0

type DMSender struct {
	*ChannelSender
}

DMSender wraps a ChannelSender with DM-specific functionality.

func (*DMSender) FriendlyValue added in v0.31.0

func (s *DMSender) FriendlyValue(ctx context.Context, id string) (string, error)

FriendlyValue implements notification.FriendlyValuer returning the `@`-handle of the given Slack user ID.

type Team added in v0.32.0

type Team struct {
	ID      string
	Domain  string
	Name    string
	IconURL string
}

Team contains information about a Slack team.

func (t Team) ChannelLink(id string) string
func (t Team) UserLink(id string) string

type User added in v0.31.0

type User struct {
	ID     string
	Name   string
	TeamID string
}

User contains information about a Slack user.

type UserGroup added in v0.31.0

type UserGroup struct {
	ID     string
	TeamID string
	Name   string
	Handle string
}

type UserGroupSender added in v0.31.0

type UserGroupSender struct {
	*ChannelSender
}

UserGroupSender processes on-call notifications by updating the members of a Slack user group.

func (*UserGroupSender) Send added in v0.31.0

Send implements notification.Sender.

Jump to

Keyboard shortcuts

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