-
-
Save nifuramu/a526433cfd9facacfc9beb15d6b41098 to your computer and use it in GitHub Desktop.
aws-sdk sns example, in Node.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var AWS = require('aws-sdk'); | |
AWS.config.update({ | |
accessKeyId: '{AWS_KEY}', | |
secretAccessKey: '{AWS_SECRET}', | |
region: '{SNS_REGION}' | |
}); | |
var sns = new AWS.SNS(); | |
sns.createPlatformEndpoint({ | |
PlatformApplicationArn: '{APPLICATION_ARN}', | |
Token: '{DEVICE_TOKEN}' | |
}, function(err, data) { | |
if (err) { | |
console.log(err.stack); | |
return; | |
} | |
var endpointArn = data.EndpointArn; | |
var payload = { | |
default: 'Hello World', | |
APNS: { | |
aps: { | |
alert: 'Hello World', | |
sound: 'default', | |
badge: 1 | |
} | |
} | |
}; | |
// first have to stringify the inner APNS object... | |
payload.APNS = JSON.stringify(payload.APNS); | |
// then have to stringify the entire message payload | |
payload = JSON.stringify(payload); | |
console.log('sending push'); | |
sns.publish({ | |
Message: payload, | |
MessageStructure: 'json', | |
TargetArn: endpointArn | |
}, function(err, data) { | |
if (err) { | |
console.log(err.stack); | |
return; | |
} | |
console.log('push sent'); | |
console.log(data); | |
}); | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment