function sendPushMessage(deviecToken, pushMessage)
{
var SNS = require('sns-mobile'),EVENTS = SNS.EVENTS;
var SNS_KEY_ID = 'AWS_USER_AWSAccessKeyId',
SNS_ACCESS_KEY = 'AWS_USER_AWSSecretKey',
IOS_ARN = "SNS_APPLICATION_ARN";
var iosApp = new SNS({
platform: SNS.SUPPORTED_PLATFORMS.IOS,
region: 'us-west-1',
apiVersion: '2010-03-31',
accessKeyId: SNS_ACCESS_KEY,
secretAccessKey: SNS_KEY_ID,
platformApplicationArn: IOS_ARN,
sandbox: true
});
// Add a user, the endpointArn is their unique id
// endpointArn is required to send messages to the device
iosApp.addUser(deviecToken, JSON.stringify({
some: 'extra data'
}), function(err, endpointArn) {
if (err) {
// callback(null, err);
}
else{
let endpp = endpointArn;
// Send a simple String or data to the client
iosApp.sendMessage(endpp, pushMessage, function(err, messageId) {
if (err) {
// callback(null, err);
}
else{
// callback(null, messageId);
}
});
}
});
}
let response;
let test = (event, context, callback) => {
let deviceToken = "YOUR DEVICE TOKEN";
let apnPayload = { aps: { alert: { title: "Hello", body: "This is the content of our push notification." }, badge: 6 } };
let msg = {
"APNS_SANDBOX": JSON.stringify(apnPayload)
};
sendPushMessage(deviceToken, msg);
};
module.exports = test;
Примечание. Сначала вы должны «npm установить sns-mobile» для этого пакета. Затем создайте тестовую лямбду и скопируйте этот код. Я использую этот код и работаю хорошо.