An arbitrary string (such as "Updates Available") that is used to collapse a group of like messages when the device is offline, so that only the last message gets sent to the client
A JSON object whose fields represents the key-value pairs of the message's payload data
If included, indicates that the message should not be sent immediately if the device is idle
If included, allows developers to test their request without actually sending a message
A string that maps a single user to multiple registration IDs associated with that user.
A string array with the list of devices (registration IDs) receiving the message
A string containing the package name of your application
How long (in seconds) the message should be kept on GCM storage if the device is offline
see http://developer.android.com/google/gcm/server.html#params