Versions in this module Expand all Collapse all v0 v0.3.0 Sep 11, 2026 v0.2.0 Sep 10, 2026 Changes in this version + func RegisterBackend(typ string, ctor BackendFactory) + func RegisterSink(typ string, ctor SinkFactory) + type Backend interface + Name func() string + Send func(ctx context.Context, n Notification) error + type BackendFactory func(settings map[string]string, resolve SecretResolver) (Backend, error) + type Beacon struct + func New(cfg Config, resolve SecretResolver) (*Beacon, error) + func (b *Beacon) Notify(ctx context.Context, n Notification) error + func (b *Beacon) Report(ctx context.Context, h Health) error + type ChannelConfig struct + MinLevel Level + Settings map[string]string + Type string + type Config struct + Channels []ChannelConfig + Telemetry []TelemetryConfig + type DiscordBackend struct + func (b *DiscordBackend) Name() string + func (b *DiscordBackend) Send(ctx context.Context, n Notification) error + type GatusSink struct + func (s *GatusSink) Name() string + func (s *GatusSink) Report(ctx context.Context, h Health) error + type GotifyBackend struct + func (b *GotifyBackend) Name() string + func (b *GotifyBackend) Send(ctx context.Context, n Notification) error + type HTTPBackend struct + func (b *HTTPBackend) Name() string + func (b *HTTPBackend) Send(ctx context.Context, n Notification) error + type Health struct + Duration time.Duration + Message string + Name string + OK bool + type Level int + const LevelError + const LevelInfo + const LevelWarning + func (l Level) String() string + type LogBackend struct + func NewLogBackend(w io.Writer) *LogBackend + func NewSlogBackend(logger *slog.Logger) *LogBackend + func (l *LogBackend) Name() string + func (l *LogBackend) Send(ctx context.Context, n Notification) error + type MatrixBackend struct + func (b *MatrixBackend) Name() string + func (b *MatrixBackend) Send(ctx context.Context, n Notification) error + type MattermostBackend struct + func (b *MattermostBackend) Name() string + func (b *MattermostBackend) Send(ctx context.Context, n Notification) error + type Notification struct + Body string + Fields map[string]string + Level Level + Tags []string + Title string + type NtfyBackend struct + func (b *NtfyBackend) Name() string + func (b *NtfyBackend) Send(ctx context.Context, n Notification) error + type PushoverBackend struct + func (b *PushoverBackend) Name() string + func (b *PushoverBackend) Send(ctx context.Context, n Notification) error + type SMTPBackend struct + func (b *SMTPBackend) Name() string + func (b *SMTPBackend) Send(ctx context.Context, n Notification) error + type SecretResolver func(name string) (string, error) + type SinkFactory func(settings map[string]string, resolve SecretResolver) (TelemetrySink, error) + type SlackBackend struct + func (b *SlackBackend) Name() string + func (b *SlackBackend) Send(ctx context.Context, n Notification) error + type TelegramBackend struct + func (b *TelegramBackend) Name() string + func (b *TelegramBackend) Send(ctx context.Context, n Notification) error + type TelemetryConfig struct + Settings map[string]string + Type string + type TelemetrySink interface + Name func() string + Report func(ctx context.Context, h Health) error + type WebhookBackend struct + func (b *WebhookBackend) Name() string + func (b *WebhookBackend) Send(ctx context.Context, n Notification) error