fix apns, gcm result as a struct