notifications

package
v2.17.1 Latest Latest
Warning

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

Go to latest
Published: Mar 9, 2024 License: CC0-1.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Action

type Action interface {
	Send(ctx context.Context, text string, attachment interface{}) error
	IsActive() bool
	Type() string
	SetTraceId(traceId string)
	SetDestination(destination interface{})
}

type Config

type Config struct {
	Telegram *telegram.TelegramConfig `yaml:"telegram"`
	Slack    *slack.SlackConfig       `yaml:"slack"`
}

type Options added in v2.12.0

type Options func(platform *Platform)

func ActivateSlack added in v2.12.0

func ActivateSlack(webhookURL string) Options

func ActivateTelegram added in v2.12.0

func ActivateTelegram(botToken string) Options

type Platform

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

func New

func New(opt ...Options) *Platform

func (*Platform) GetAllPlatform

func (this *Platform) GetAllPlatform() []Action

func (*Platform) Slack

func (this *Platform) Slack() Action

func (*Platform) Telegram

func (this *Platform) Telegram() Action

func (*Platform) WrapToContext added in v2.8.6

func (this *Platform) WrapToContext(ctx context.Context) context.Context

func (*Platform) WrapToHandler added in v2.17.0

func (this *Platform) WrapToHandler(next http.Handler) http.Handler

type Platforms

type Platforms interface {
	Telegram() Action
	Slack() Action
	GetAllPlatform() []Action
	Handler(next http.Handler) http.Handler
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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