Skip to content

Commit

Permalink
feat: add bigImageUrl option to push command (#72)
Browse files Browse the repository at this point in the history

Co-authored-by: Jannis Mattheis <[email protected]>
  • Loading branch information
ldidry and jmattheis authored Sep 5, 2024
1 parent 1998489 commit 7d0b8ce
Showing 1 changed file with 12 additions and 8 deletions.
20 changes: 12 additions & 8 deletions command/push.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@ func Push() cli.Command {
cli.StringFlag{Name: "url", Usage: "Override the Gotify URL"},
cli.BoolFlag{Name: "quiet,q", Usage: "Do not output anything (on success)"},
cli.StringFlag{Name: "contentType", Usage: "The content type of the message. See https://gotify.net/docs/msgextras#client-display"},
cli.StringFlag{Name: "clickUrl", Usage: "An URL to open upon clicking the notification. See https://gotify.net/docs/msgextras#client-notification"},
cli.StringFlag{Name: "clickUrl", Usage: "An URL to open upon clicking the notification. See https://gotify.net/docs/msgextras#clickurl"},
cli.StringFlag{Name: "bigImageUrl", Usage: "the URL of an image to display in the notification. See https://gotify.net/docs/msgextras#bigimageurl"},
cli.BoolFlag{Name: "disable-unescape-backslash", Usage: "Disable evaluating \\n and \\t (if set, \\n and \\t will be seen as a string)"},
},
Action: doPush,
Expand All @@ -50,6 +51,7 @@ func doPush(ctx *cli.Context) {
quiet := ctx.Bool("quiet")
contentType := ctx.String("contentType")
clickUrl := ctx.String("clickUrl")
bigImageUrl := ctx.String("bigImageUrl")

if token == "" {
if confErr != nil {
Expand Down Expand Up @@ -78,21 +80,23 @@ func doPush(ctx *cli.Context) {
Priority: priority,
}

msg.Extras = map[string]interface{}{
}
msg.Extras = map[string]interface{}{}

if contentType != "" {
msg.Extras["client::display"] = map[string]interface{}{
"contentType": contentType,
}
}

clientNotification := map[string]interface{}{}
if clickUrl != "" {
msg.Extras["client::notification"] = map[string]interface{}{
"click": map[string]string{
"url": clickUrl,
},
}
clientNotification["click"] = map[string]string{"url": clickUrl}
}
if bigImageUrl != "" {
clientNotification["bigImageUrl"] = bigImageUrl
}
if len(clientNotification) > 0 {
msg.Extras["client::notification"] = clientNotification
}

parsedURL, err := url.Parse(stringURL)
Expand Down

0 comments on commit 7d0b8ce

Please sign in to comment.