来自 Java 的 AWS SNS 调用

AWS SNS call from Java

我正在创建一个 Lambda (Java),如果我的值超过特定的阈值限制,我需要从我的 Java 代码调用 AWS SNS 主题(电子邮件)。我已经创建了一个要发布的主题,并且我有用于订阅的主题 ARN。 到目前为止的代码:

if(list.get(0)<=25000) {
        System.out.println("Minimum" + list.get(0));
        //call SNS to send Alert//


    }else {
        System.out.println("Maximum" + list.get(list.size()-1));
    }

////我的 SNS 实用程序//

public static void main(String[] args) {
    AmazonSNSClient snsClient = new AmazonSNSClient();
    String message = "My SMS message";
    Map<String, MessageAttributeValue> smsAttributes = 
            new HashMap<String, MessageAttributeValue>();
   String topicArn = "<my_topic_arn>";
     sendSMSMessageToTopic(snsClient, topicArn, message, smsAttributes);
}
public static void sendSMSMessageToTopic(AmazonSNSClient snsClient, String topicArn, 
        String message, Map<String, MessageAttributeValue> smsAttributes) {
        PublishResult result = snsClient.publish(new PublishRequest()
                        .withTopicArn(topicArn)
                        .withMessage(message)
                        .withMessageAttributes(smsAttributes));
        System.out.println(result);
}

问题:

  1. 如何在第一个 if 条件下调用 SNS 实用程序?

你会打电话给 publish() method。有几个版本,如:

public PublishResult publish(String topicArn,
                             String message,
                             String subject)