本文整理匯總了Golang中github.com/cubicdaiya/apns.Client.Send方法的典型用法代碼示例。如果您正苦於以下問題:Golang Client.Send方法的具體用法?Golang Client.Send怎麽用?Golang Client.Send使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/cubicdaiya/apns.Client
的用法示例。
在下文中一共展示了Client.Send方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: pushNotificationIos
func pushNotificationIos(req RequestGaurunNotification, client *apns.Client) bool {
LogError.Debug("START push notification for iOS")
for i, token := range req.Tokens {
id := req.IDs[i]
payload := apns.NewPayload()
payload.Alert = req.Message
payload.Badge = req.Badge
payload.Sound = req.Sound
payload.ContentAvailable = req.ContentAvailable
pn := apns.NewPushNotification()
pn.DeviceToken = token
pn.Expiry = uint32(req.Expiry)
pn.AddPayload(payload)
if len(req.Extend) > 0 {
for _, extend := range req.Extend {
pn.Set(extend.Key, extend.Value)
}
}
stime := time.Now()
resp := client.Send(pn)
etime := time.Now()
ptime := etime.Sub(stime).Seconds()
if resp.Error != nil {
atomic.AddInt64(&StatGaurun.Ios.PushError, 1)
LogPush(req.IDs[i], StatusFailedPush, token, ptime, req, resp.Error)
client.Conn.Close()
client.ConnTls.Close()
return false
} else {
LogPush(id, StatusSucceededPush, token, ptime, req, nil)
atomic.AddInt64(&StatGaurun.Ios.PushSuccess, 1)
}
}
client = nil
LogError.Debug("END push notification for iOS")
return true
}