当前位置: 首页 > 知识库问答 >
问题:

AWS SNS:不向电话号码发送短信

燕凯旋
2023-03-14

我正在尝试一个小演示发送短信给在印度这里的号码。我使用了以下代码段,但不起作用。

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个答案

吕胤
2023-03-14

由于您已经确认使用SNS控制台发送SMS,消息已成功传递,那么这似乎表明提供的代码段可能存在问题!

我稍微修改了您的代码段,并确认以下代码段可以正常工作,没有问题:

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 provider并检查是否观察到成功/失败?

我使用以下环境规范测试了上面的代码段:

OS : Ubuntu 16.04
aws region: us-east-1
aws-java-sdk: "1.11.723"
 类似资料:
  • 监控系统产生报警事件之后需要发送报警邮件或者报警短信,各个公司可能有自己的邮件服务器,有自己的邮件发送方法;有自己的短信通道,有自己的短信发送方法。falcon为了适配各个公司,在接入方案上做了一个规范,需要各公司提供http的短信和邮件发送接口。 短信发送http接口: method: post params: - content: 短信内容 - tos: 使用逗号分隔的多个手机号 邮

  • 如果您在Nuxt页面中包含电话号码,请确保将它们直接包装到链接中: <!-- Example phone number: +7 (982) 536-50-77 --> <template> <a href="tel: +7 (982) 536-50-77">+7 (982) 536-50-77</a> </template> 否则,某些移动Safari版本会自动将这些数字转换为链接。 听起

  • 本文向大家介绍请写出唤醒拔打电话、发送邮件、发送短信的例子相关面试题,主要包含被问及请写出唤醒拔打电话、发送邮件、发送短信的例子时的应答技巧和注意事项,需要的朋友参考一下 邮件这个有问题哈,需要

  • 我将我的应用程序从使用数字电话身份验证迁移到了新的Firebase电话身份验证,但是当我测试我的应用程序时,我在注销我的用户时遇到了麻烦(已经修复了这个问题),所以我就把它从控制台的“用户列表”中删除了,但是现在每次我尝试用那个电话号码登录时,它不会给我发送带有代码的短信,除了这个号码之外,其他任何号码都能正常工作。有人知道我该怎么解决吗?

  • 我在验证电话号码时遇到了问题。电话号码是一个10位数的字符串,应该填充在三个输入字段中第一个输入字段--仅有3位数(要求,只能接受数字和最大长度3)第二个输入字段--仅有3位数(要求,只能接受数字和最大长度3)第三个输入字段--仅有4位数(要求,只能接受数字和最大长度4)

  • 背景: 我为android写了一个简单的小拨号器,可以拨打联系人的电话号码 问题: 我想打电话给联系人,而不是电话号码,这样Android: 如果联系人有两个号码:将启动电话号码选择对话框,然后启动通话 当然,我可以从头开始实现一个弹出窗口,但我更愿意委托给一个标准操作,这样用户就可以使用与使用标准拨号器相同的用户体验。