Отправка SMS-сообщения с помощью AWS Pinpoint на определенный номер телефона - PullRequest
0 голосов
/ 28 ноября 2018

Я пытаюсь отправить SMS-сообщение с помощью AWS Pinpoint на определенный номер телефона.Вот что у меня есть в nodejs:
var AWS = require('aws-sdk'); AWS.config.update({region: 'us-east-1'}); var pinpoint = new AWS.Pinpoint({apiVersion: '2016-12-01'}); pinpoint.sendMessages(XXX);

Я очень озадачен тем, что нужно перейти в XXX.https://docs.aws.amazon.com/cli/latest/reference/pinpoint/send-messages.html имеет длинный ввод.Куда уходит номер телефона?Был бы очень признателен за простой пример.

Ответы [ 2 ]

0 голосов
/ 19 марта 2019

Это то, что мы сделали для обработки ответа, сохраняет в DynamoDB:

const doc = require('dynamodb-doc');
const dynamo = new doc.DynamoDB();

exports.handler = async (event) => {
    // TODO implement
    console.log(JSON.stringify(event));

    var pinpointResponse = JSON.parse(event.Records[0].Sns.Message);

    var phoneNumber = pinpointResponse.originationNumber.substring(2);
    var message = pinpointResponse.messageBody;

    console.log("phoneNumber", phoneNumber);

    console.log("message", message);


    //Insert into DynamoDB
    var InsertParams = {
        TableName : "ChatHistory",
        Item : {
            "phoneNumber" : phoneNumber + "",
            "Answer" : message
        }
    };

    var AWSNew = require('aws-sdk');
    AWSNew.config.update({region: 'us-east-2'});

    var docClient = new AWSNew.DynamoDB.DocumentClient();

    await docClient.put(InsertParams).promise();

    const response = {
        statusCode: 200,
        body: JSON.stringify('SUCCESS'),
    };
    return response;
};
0 голосов
/ 03 декабря 2018

Вот что наконец сработало.[Телефон] - это номер, например [15553451234]:

var AWS = require('aws-sdk');
// Set region
AWS.config.update({region: 'us-east-1'});
var pinpoint = new AWS.Pinpoint({apiVersion: '2016-12-01'});
var params = { 
    ApplicationId: 'ecba683ea3ee4af1bba3176a70ac1e71',
    MessageRequest : { 
        Addresses : {
            [telephone] : {
                "BodyOverride": message,
                "ChannelType": "SMS",
            }

        },
        MessageConfiguration : {
            SMSMessage: 
            {
                Body : message,
                MessageType : "TRANSACTIONAL"
            }
        }
    }
};

var publishTextPromise = await pinpoint.sendMessages(params).promise();
...