我想使用Amazon SNS服务向几个号码发送短信。我有一个每天运行一次的cronjob,应该发送短信给那个时刻到期的号码。
现在我对SNS有几个问题。
我是否每次运行我的cronjob创建一个主题,订阅数字,发送它,然后删除它?或者我只是在控制台中创建一个主题然后我只是订阅号码,发送消息并在发送后再次取消订阅号码?
此外,我尝试了一些简单的提供ARN并发送内容为“Hello World!”的消息。我的手机上收到的信息来自“通知”,内容如下:
FPREMINDER> Hello World!
现在我有两个问题:
FPREMINDER是我主题的显示名称。但为什么它被包含在消息中呢?
如果有人回复,如何将“通知”更改为自定义名称和自定义数字?
感谢您的帮助!
答案 0 :(得分:2)
如果您一直向同一组收件人发送邮件,那么逻辑过程就是定义主题一次,添加订阅者,然后每天简单地将邮件发送到主题。
如果您希望维护自己的订阅者列表,人们可以在一天中添加/删除自己,然后使用Amazon SNS的功能,您可以直接发送SMS消息,而无需通过订阅。
来自Setting SMS Messaging Preferences:
对于默认发件人ID ,请键入包含最多11个字母数字字符的自定义ID,其中至少包含一个字母且不包含空格。发件人ID在接收设备上显示为邮件发件人。例如,您可以使用您的商家品牌来更轻松地识别消息来源。
对发件人ID的支持因国家/地区而异。例如,发送到美国电话号码的邮件不会显示发件人ID。对于支持发件人ID的国家/地区,请参阅支持的区域和国家/地区。
如果您未指定发件人ID,则该邮件将在受支持的国家/地区显示长代码作为发件人ID。对于需要字母发件人ID的国家/地区,邮件会显示NOTICE作为发件人ID。
您可以在发送信息时覆盖此设置。
发送邮件时,您可以控制邮件是否针对成本或可靠传递进行了优化,并且您可以指定发件人ID。 ...
AWS.SNS.SMS.SenderID
自定义ID,最多包含11个字母数字字符,包括至少一个字母且不含空格。发件人ID在接收设备上显示为邮件发件人。例如,您可以使用您的商家品牌来更轻松地识别消息来源。
对发件人ID的支持因国家/地区而异。例如,发送到美国电话号码的邮件不会显示发件人ID。对于支持发件人ID的国家/地区,请参阅Supported Regions and Countries。
如果您未指定发件人ID,则该邮件将在受支持的国家/地区显示长代码作为发件人ID。对于需要字母发件人ID的国家/地区,邮件会显示 NOTICE 作为发件人ID。
此邮件级属性会覆盖您使用
DefaultSenderID
请求设置的帐户级属性SetSMSAttributes
。
答案 1 :(得分:2)
您还可以为text messages preferences中的所有邮件更改此设置
但是请注意,并非每个地区都有SMS服务,请看here