AWS SNS: не отправлять смс на номер телефона - PullRequest
0 голосов
/ 13 марта 2020

Я пробую небольшую демонстрацию для отправки SMS на номера здесь, в Индии. Я использовал следующий фрагмент кода, но не работает.

public void send(String to, String textBody) {
    AWSCredentials awsCredentials;
    awsCredentials = new EnvironmentVariableCredentialsProvider().getCredentials();
    AmazonSNSClient snsClient = new AmazonSNSClient(awsCredentials);

    PublishResult result = snsClient
            .publish(new PublishRequest().withMessage(textBody)
                    .withPhoneNumber("+9195355*****"));
    System.out.println(result);
}

Я не могу понять, чего не хватает?

1 Ответ

0 голосов
/ 14 марта 2020

Поскольку вы подтвердили, что отправка SMS с помощью консоли SNS, сообщения доставляются успешно, это, похоже, может указывать на проблему с предоставленным фрагментом кода!

Я изменил ваш код немного фрагмента, и я подтвердил, что следующий фрагмент кода работает без проблем:

public static void main(String[] args) {

ProfileCredentialsProvider creds = new ProfileCredentialsProvider("syumaK");
AmazonSNS snsClient = AmazonSNSClientBuilder.standard().withCredentials(creds).withRegion("us-east-1").build();

String textBody = "My test SMS message from SNS";
String to = "+0123456789";

send(snsClient, to, textBody);
}

public static void send(AmazonSNS snsClient, String to, String textBody) {

try {
        PublishResult result = snsClient
                .publish(new PublishRequest()
                        .withMessage(textBody)
                        .withPhoneNumber(to));

        System.out.println(result);
        LOGGER.info("Message send with id {}."+ result.getMessageId());

} catch (AmazonSNSException e) {
    LOGGER.info("Got an exception. " + e.getMessage())
}
}

Действия по устранению неполадок:

-Если используется ProfileCredentialsProvider работает так же, как и выше, рассмотрите возможность переключения обратно на EnvironmentVariableCredentialsProvider или с использованием BasicAWSCredentials провайдера и проверьте, наблюдаются ли какие-либо успехи / неудачи?

Я протестировал приведенный выше фрагмент кода, используя следующую среду spe c:

OS : Ubuntu 16.04
aws region: us-east-1
aws-java-sdk: "1.11.723"
...