来自 c# 开发工具包的单个号码的 Amazon SMS,无需创建主题



根据文档,要为单个号码发送短信,我们不需要创建SNS主题。显然,他们给出了一个示例代码,表明我们可以为发布请求方法设置电话号码

http://docs.aws.amazon.com/sns/latest/dg/sms_publish-to-phone.html

根据java文档,我可以清楚地看到该方法。

http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/sns/model/PublishRequest.html#setPhoneNumber-java.lang.String-

但是,我们如何在 c# 中实现相同的内容?我找不到任何在不创建SNS主题的情况下发送短信的方法。

有人可以指导我如何在不从 C# SDK 创建 SNS 主题的情况下发送短信吗?

我希望这有帮助:

var smsAttributes = new Dictionary<string, MessageAttributeValue>();
MessageAttributeValue senderID = new MessageAttributeValue();
senderID.DataType = "String";
senderID.StringValue = "mySenderId";
MessageAttributeValue sMSType = new MessageAttributeValue();
sMSType.DataType = "String";
sMSType.StringValue = "Promotional";
////MessageAttributeValue maxPrice = new MessageAttributeValue();
////maxPrice.DataType = "Number";
////maxPrice.StringValue = "0.1";
CancellationTokenSource source = new CancellationTokenSource();
CancellationToken token = source.Token;
smsAttributes.Add("AWS.SNS.SMS.SenderID", senderID);
smsAttributes.Add("AWS.SNS.SMS.SMSType", sMSType);
////smsAttributes.Add("AWS.SNS.SMS.MaxPrice", maxPrice);
PublishRequest publishRequest = new PublishRequest();
publishRequest.Message = vm.Message;
publishRequest.MessageAttributes = smsAttributes;
publishRequest.PhoneNumber = vm.PhoneNumber;
AmazonSimpleNotificationServiceClient client = new AmazonSimpleNotificationServiceClient(vm.AccessKey, vm.SecretKey, config);
AmazonSNSResponse resp = new AmazonSNSResponse();
await client.PublishAsync(publishRequest);
AmazonSNSResponse response = new AmazonSNSResponse();
response.Status = HttpStatusCode.OK.ToString();
response.Message = "Success";
return response;    
我相信

你会在这里找到答案:https://forums.aws.amazon.com/thread.jspa?threadID=250183&tstart=0

基本上是在说什么和引用:"...电话号码属性是在 AWSSDK 版本 3.1.1.0 中添加的。简单通知服务...">

我没有放置示例代码,因为 PhoneNumber 属性是请求中缺少的内容,其余的应该类似于 Java 示例:D。

请参阅Publish(PublishRequest)

Amazon.SimpleNotificationService.Model.PublishRequest有一个PhoneNumber属性,用于在发送直接 SMS 消息时设置号码。

最新更新