fix #5 add ios payload structure.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
This commit is contained in:
parent
c856edaa18
commit
a83b5f4438
|
@ -13,6 +13,18 @@ type ExtendJSON struct {
|
||||||
Value string `json:"val"`
|
Value string `json:"val"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type alert struct {
|
||||||
|
Action string `json:"action,omitempty"`
|
||||||
|
ActionLocKey string `json:"action-loc-key,omitempty"`
|
||||||
|
Body string `json:"body,omitempty"`
|
||||||
|
LaunchImage string `json:"launch-image,omitempty"`
|
||||||
|
LocArgs []string `json:"loc-args,omitempty"`
|
||||||
|
LocKey string `json:"loc-key,omitempty"`
|
||||||
|
Title string `json:"title,omitempty"`
|
||||||
|
TitleLocArgs []string `json:"title-loc-args,omitempty"`
|
||||||
|
TitleLocKey string `json:"title-loc-key,omitempty"`
|
||||||
|
}
|
||||||
|
|
||||||
type RequestPushNotification struct {
|
type RequestPushNotification struct {
|
||||||
// Common
|
// Common
|
||||||
Tokens []string `json:"tokens" binding:"required"`
|
Tokens []string `json:"tokens" binding:"required"`
|
||||||
|
@ -33,7 +45,10 @@ type RequestPushNotification struct {
|
||||||
Sound string `json:"sound,omitempty"`
|
Sound string `json:"sound,omitempty"`
|
||||||
Expiry int `json:"expiry,omitempty"`
|
Expiry int `json:"expiry,omitempty"`
|
||||||
Retry int `json:"retry,omitempty"`
|
Retry int `json:"retry,omitempty"`
|
||||||
|
Category string `json:"category,omitempty"`
|
||||||
|
URLArgs []string `json:"url-args,omitempty"`
|
||||||
Extend []ExtendJSON `json:"extend,omitempty"`
|
Extend []ExtendJSON `json:"extend,omitempty"`
|
||||||
|
Alert alert `json:"alert,omitempty"`
|
||||||
// meta
|
// meta
|
||||||
IDs []uint64 `json:"seq_id,omitempty"`
|
IDs []uint64 `json:"seq_id,omitempty"`
|
||||||
}
|
}
|
||||||
|
@ -77,7 +92,7 @@ func pushNotificationIos(req RequestPushNotification, client *apns.Client) bool
|
||||||
notification.Topic = req.Topic
|
notification.Topic = req.Topic
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(req.Priority) > 0 && req.Priority == "low" {
|
if len(req.Priority) > 0 && req.Priority == "normal" {
|
||||||
notification.Priority = apns.PriorityLow
|
notification.Priority = apns.PriorityLow
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -101,6 +116,50 @@ func pushNotificationIos(req RequestPushNotification, client *apns.Client) bool
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Alert dictionary
|
||||||
|
|
||||||
|
if len(req.Alert.Title) > 0 {
|
||||||
|
payload.AlertTitle(req.Alert.Title)
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(req.Alert.TitleLocKey) > 0 {
|
||||||
|
payload.AlertTitleLocKey(req.Alert.TitleLocKey)
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(req.Alert.LocArgs) > 0 {
|
||||||
|
payload.AlertTitleLocArgs(req.Alert.LocArgs)
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(req.Alert.Body) > 0 {
|
||||||
|
payload.AlertBody(req.Alert.Body)
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(req.Alert.LaunchImage) > 0 {
|
||||||
|
payload.AlertLaunchImage(req.Alert.LaunchImage)
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(req.Alert.LocKey) > 0 {
|
||||||
|
payload.AlertLocKey(req.Alert.LocKey)
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(req.Alert.Action) > 0 {
|
||||||
|
payload.AlertAction(req.Alert.Action)
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(req.Alert.ActionLocKey) > 0 {
|
||||||
|
payload.AlertActionLocKey(req.Alert.ActionLocKey)
|
||||||
|
}
|
||||||
|
|
||||||
|
// General
|
||||||
|
|
||||||
|
if len(req.Category) > 0 {
|
||||||
|
payload.Category(req.Category)
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(req.URLArgs) > 0 {
|
||||||
|
payload.URLArgs(req.URLArgs)
|
||||||
|
}
|
||||||
|
|
||||||
notification.Payload = payload
|
notification.Payload = payload
|
||||||
|
|
||||||
// send ios notification
|
// send ios notification
|
||||||
|
|
Loading…
Reference in New Issue