-
-
Save odesey/4d677dc8005667f39a3bc43f35b6e365 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