Files

32 lines
684 B
Go

package notify
import (
"context"
"time"
"git.huangwc.com/pig/pig-farm-controller/internal/infra/models"
)
// DefaultTimeFormat 定义了所有通知中统一使用的时间格式。
const DefaultTimeFormat = "2006-01-02 15:04:05"
// AlarmContent 定义了通知的内容
type AlarmContent struct {
// 通知标题
Title string
// 通知信息
Message string
// 通知级别
Level models.SeverityLevel
// 通知时间
Timestamp time.Time
}
// Notifier 定义了通知发送器的接口
type Notifier interface {
// Send 发送通知
Send(ctx context.Context, content AlarmContent, toAddr string) error
// Type 返回通知器的类型
Type() models.NotifierType
}