gestion-dns/helpers/pushover.go

46 lines
838 B
Go

package helpers
import (
"fmt"
"github.com/gregdel/pushover"
)
type PushoverMessage struct {
AppKey string
UserKey string
Title string
Message string
}
func PushoverSendMessage(message PushoverMessage) error {
if len(message.AppKey) == 0 {
return fmt.Errorf("pushover app key is required")
}
if len(message.UserKey) == 0 {
return fmt.Errorf("pushover user key is required")
}
if len(message.Message) == 0 {
return fmt.Errorf("pushover message is required")
}
app := pushover.New(message.AppKey)
user := pushover.NewRecipient(message.UserKey)
var msg *pushover.Message
if len(message.Title) > 0 {
msg = pushover.NewMessageWithTitle(
message.Message,
message.Title,
)
} else {
msg = pushover.NewMessage(message.Message)
}
msg.HTML = true
_, err := app.SendMessage(msg, user)
return err
}