úÎ+z'ñ(      !"#$%&'None(<This class represent the translation from a specific service'%s result into a general Push result. OPushResult represents a general result after communicating with a Push Server. +Notifications that were successfully sent. /Notifications that were not successfully sent. .Failed notifications that you need to resend, P because servers were not available or there was a problem with the connection. Set of unregistered devices. BMap of devices which have changed their identifiers. (old -> new) #Main manager for the Push Service. This V will be used to send notifications and also can be added as a subsite to a Yesod app T in order to receive registrations and messages from devices as HTTP POST requests. )EConduit manager for sending push notifications though POST requests. *AApns manager for sending push notifications though APNS servers. +HCcs manager for communicating with GCM through Cloud Connection Server. ,Main configuration. $Main settings for the Push Service. Main configuration. HThe callback function to be called when receiving messages from devices < (This means through the CCS connection or as POST requests  to the Yesod subsite). (The callback function to be called when ) a new device try to register on server. >The callback function to be called when a device unregisters. 0The callback function to be called when a device's identifier changes. : represents the result of a device attempting to register /Main settings for the different Push Services. Nothing means the service won' t be used. Settings for GCM service. !General notification to be sent. Unique identifier of an app/device. A WPhone app. ! An iOS app. "An Android app. ##/ builds a general notification from JSON data. MIf data length exceeds 256 bytes (max payload limit for APNS) it will fails. &For MPNS, data will be XML-labeled as "jsonData". 5(-.)*+,  !"#/012345678+(-.)*+,  !"#(-.)*+, "! #/012345678None9:;<99:None=>?@.)*+,=>?@None$$0 starts the PushService creating a PushManager. %% stops the Push service. &&P creates a new manager, uses it in the provided function, and then releases it. ''0 sends messages to the appropiate Push Servers. $%&ABCD'$%&'$%&ABCD'None(  !"#$%&'($%'&"!  #E       !"#$%&'()*+,-./ 0123456789:;<=>?@ABCDEFpush-notify-general-0.1.0.0Network.PushNotify.General Network.PushNotify.General.Types-Network.PushNotify.General.YesodPushAppRoutes'Network.PushNotify.General.YesodPushAppNetwork.PushNotify.General.Send PushResult successfulfailedtoResend unRegisterednewIds PushManagerPushServiceConfig pushConfignewMessageCallbacknewDeviceCallbackunRegisteredCallback newIdCallbackRegisterResultErrorReg SuccessfulReg PushConfig gcmConfig apnsConfig mpnsConfig GCMConfigCcsHttpPushNotification apnsNotifgcmNotif mpnsNotifDeviceMPNSAPNSGCM generalNotifstartPushServiceclosePushServicewithPushManagersendPush IsPushResult httpManager apnsManager ccsManager serviceConfig toPushResult$fIsPushResultMPNSresult $fIsPushResultAPNSFeedBackresult$fIsPushResultAPNSresult$fIsPushResultGCMresult$fMonoidPushResult$fDefaultPushResult$fDefaultPushServiceConfig$fDefaultPushConfig$fDefaultPushNotification$fHashableDeviceresourcesPushManager$fParseRoutePushManager SubMessagesR SubRegisterRpostSubRegisterRlookForIdentifierpostSubMessagesR%$fYesodSubDispatchPushManagerHandlerT forgetConstisGCMisAPNSisMPNS