package main import ( "fmt" "net/http" "net/url" "strings" ) func SendMessage(gotifyURL, token, title, message string, priority int) error { endpoint := fmt.Sprintf("%s/message?token=%s", gotifyURL, token) form := url.Values{} form.Set("title", title) form.Set("message", message) form.Set("priority", fmt.Sprintf("%d", priority)) resp, err := http.Post(endpoint, "application/x-www-form-urlencoded", strings.NewReader(form.Encode())) if err != nil { return fmt.Errorf("failed to send gotify message: %w", err) } defer resp.Body.Close() if resp.StatusCode != http.StatusOK { return fmt.Errorf("gotify returned status %d", resp.StatusCode) } return nil }