mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
72 lines
1.5 KiB
TypeScript
72 lines
1.5 KiB
TypeScript
|
|
import gcm = require('node-gcm');
|
|
|
|
// Create a message
|
|
// ... with default values
|
|
var message = new gcm.Message();
|
|
|
|
// ... or some given values
|
|
var message = new gcm.Message({
|
|
collapseKey: 'demo',
|
|
delayWhileIdle: true,
|
|
timeToLive: 3,
|
|
data: {
|
|
key1: 'message1',
|
|
key2: 'message2'
|
|
}
|
|
});
|
|
|
|
// Change the message data
|
|
// ... as key-value
|
|
message.addData('key1','message1');
|
|
message.addData('key2','message2');
|
|
|
|
// ... or as a data object (overwrites previous data object)
|
|
message.addData({
|
|
key1: 'message1',
|
|
key2: 'message2'
|
|
});
|
|
|
|
// Change the message variables
|
|
message.collapseKey = 'demo';
|
|
message.delayWhileIdle = true;
|
|
message.timeToLive = 3;
|
|
message.dryRun = true;
|
|
|
|
// Set up the sender with you API key
|
|
var sender = new gcm.Sender('insert Google Server API Key here');
|
|
|
|
// Add the registration IDs of the devices you want to send to
|
|
var registrationIds: string[] = [];
|
|
registrationIds.push('regId1');
|
|
registrationIds.push('regId2');
|
|
|
|
// Send the message
|
|
// ... trying only once
|
|
sender.sendNoRetry(message, registrationIds, (err, result) => {
|
|
if (err) {
|
|
console.error(err);
|
|
} else {
|
|
console.log(result);
|
|
}
|
|
});
|
|
|
|
// ... or retrying
|
|
sender.send(message, registrationIds, (err, result) => {
|
|
if (err) {
|
|
console.error(err);
|
|
} else {
|
|
console.log(result);
|
|
}
|
|
});
|
|
|
|
// ... or retrying a specific number of times (10)
|
|
sender.send(message, registrationIds, 10, (err, result) => {
|
|
if (err) {
|
|
console.error(err);
|
|
} else {
|
|
console.log(result);
|
|
}
|
|
});
|
|
|