From 66bcfc9e77203c5b74731d9619fa078cf1995d3a Mon Sep 17 00:00:00 2001 From: thucnq Date: Thu, 6 Oct 2022 00:02:10 +0700 Subject: [PATCH] add GetAps --- payload/builder.go | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/payload/builder.go b/payload/builder.go index a2ff30da..00691d0a 100644 --- a/payload/builder.go +++ b/payload/builder.go @@ -386,6 +386,44 @@ func (p *Payload) MarshalJSON() ([]byte, error) { func (p *Payload) aps() *aps { return p.content["aps"].(*aps) } +func GetAps(data map[string]interface{}) *aps { + a := &aps{} + for k, v := range data { + switch k { + case "alert": + a.Alert = v + break + case "badge": + a.Badge = v + break + case "category": + a.Category = v.(string) + break + case "content-available": + a.ContentAvailable = v.(int) + break + case "interruption-level": + a.InterruptionLevel = (EInterruptionLevel)(v.(string)) + break + case "mutable-content": + a.MutableContent = v.(int) + break + case "relevance-score": + a.RelevanceScore = v + break + case "sound": + a.Sound = v + break + case "thread-id": + a.ThreadID = v.(string) + break + case "url-args": + a.URLArgs = v.([]string) + break + } + } + return a +} func (a *aps) alert() *alert { if _, ok := a.Alert.(*alert); !ok {