| 123456789101112131415161718192021222324252627282930313233 | package notificationimport (	"context"	"github.com/0xJacky/Nginx-UI/model"	"github.com/nikoksr/notify/service/gotify"	"github.com/uozi-tech/cosy/map2struct")// @external_notifier(Gotify)type Gotify struct {	URL      string `json:"url" title:"URL"`	Token    string `json:"token" title:"Token"`	Priority int    `json:"priority" title:"Priority"`}func init() {	RegisterExternalNotifier("gotify", func(ctx context.Context, n *model.ExternalNotify, msg *ExternalMessage) error {		gotifyConfig := &Gotify{}		err := map2struct.WeakDecode(n.Config, gotifyConfig)		if err != nil {			return err		}		if gotifyConfig.URL == "" || gotifyConfig.Token == "" {			return ErrInvalidNotifierConfig		}		gotifyService := gotify.NewWithPriority(gotifyConfig.Token, gotifyConfig.URL, gotifyConfig.Priority)		return gotifyService.Send(ctx, msg.GetTitle(n.Language), msg.GetContent(n.Language))	})}
 |