chrome.gcm
- Description
Use
chrome.gcm
to enable apps and extensions to send and receive messages through the Google Cloud Messaging Service. - Permissions
gcm
Summary
- Properties
- Methods
gcm.register(senderIds: string[], callback: function)
gcm.send(message: object, callback: function)
gcm.unregister(callback: function)
- Events
Properties
MAX_MESSAGE_SIZE
The maximum size (in bytes) of all key/value pairs in a message.
Value
Methods
register
gcm.register(senderIds: string[], callback: function)
Registers the application with GCM. The registration ID will be returned by the callback
. If register
is called again with the same list of senderIds
, the same registration ID will be returned.
Parameters
- senderIdsstring[]
A list of server IDs that are allowed to send messages to the application. It should contain at least one and no more than 100 sender IDs.
- callbackfunction
Function called when registration completes. It should check
runtime.lastError
for error whenregistrationId
is empty.The callback parameter should be a function that looks like this:
(registrationId: string) => {...}
- registrationIdstring
A registration ID assigned to the application by the GCM.
send
gcm.send(message: object, callback: function)
Sends a message according to its contents.
Parameters
- messageobject
A message to send to the other party via GCM.
- dataobject
Message data to send to the server. Case-insensitive
goog.
andgoogle
, as well as case-sensitivecollapse_key
are disallowed as key prefixes. Sum of all key/value pairs should not exceedMAX_MESSAGE_SIZE
. - destinationIdstring
The ID of the server to send the message to as assigned by Google API Console.
- messageIdstring
The ID of the message. It must be unique for each message in scope of the applications. See the Cloud Messaging documentation for advice for picking and handling an ID.
- timeToLivenumber optional
Time-to-live of the message in seconds. If it is not possible to send the message within that time, an onSendError event will be raised. A time-to-live of 0 indicates that the message should be sent immediately or fail if it's not possible. The maximum and a default value of time-to-live is 86400 seconds (1 day).
- callbackfunction
A function called after the message is successfully queued for sending.
runtime.lastError
should be checked, to ensure a message was sent without problems.The callback parameter should be a function that looks like this:
(messageId: string) => {...}
- messageIdstring
The ID of the message that the callback was issued for.
unregister
gcm.unregister(callback: function)
Unregisters the application from GCM.
Parameters
- callbackfunction
A function called after the unregistration completes. Unregistration was successful if
runtime.lastError
is not set.The callback parameter should be a function that looks like this:
() => {...}
Events
onMessage
gcm.onMessage.addListener(listener: function)
Fired when a message is received through GCM.
Event
- listenerfunction
The listener parameter should be a function that looks like this:
(message: object) => {...}
- messageobject
A message received from another party via GCM.
- collapseKeystring optional
The collapse key of a message. See Collapsible Messages section of Cloud Messaging documentation for details.
- dataobject
The message data.
- fromstring optional
Since Chrome 41.
The sender who issued the message.
onMessagesDeleted
gcm.onMessagesDeleted.addListener(listener: function)
Fired when a GCM server had to delete messages sent by an app server to the application. See Messages deleted event section of Cloud Messaging documentation for details on handling this event.
Event
- listenerfunction
The listener parameter should be a function that looks like this:
() => {...}
onSendError
gcm.onSendError.addListener(listener: function)
Fired when it was not possible to send a message to the GCM server.
Event
- listenerfunction
The listener parameter should be a function that looks like this:
(error: object) => {...}
- errorobject
An error that occured while trying to send the message either in Chrome or on the GCM server. Application can retry sending the message with a reasonable backoff and possibly longer time-to-live.
- detailsobject
Additional details related to the error, when available.
- errorMessagestring
The error message describing the problem.
- messageIdstring optional
The ID of the message with this error, if error is related to a specific message.