阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

亚马逊的简单通知服务已经可以在全世界范围内发送短信

  • 2016-09-25
  • 本文字数:1717 字

    阅读完需:约 6 分钟

亚马逊的简单通知服务(Simple Notification Service,SNS)最近已经可以在全世界范围内发送短信(SMS),现在支持这项功能的亚马逊网页服务(Amazon Web Services,AWS)大区已经又增加了五个。

AWS 把亚马逊 SNS 描述成“一种快速、灵活、完全可控的通知推送服务,可以向个人发送消息,也可以向大批接收者广播消息”。它支持向 Apple、Google、Fire OS 和 Windows 等设备推送通知,也可以把消息发送给 HTTP 终端、电子邮件接收者以及像亚马逊 SQS 或 AWS Lambda 等其他 AWS 服务。

在这之前,SNS 只能让使用者把 SMS 发送给美国的手机号码,而且支持的功能也比较有限,因此对 AWS 的全球用户没有太大吸引力。现在就完全不同了,已经可以支持 200 多个国家,而且还增加了许多新功能,所以亚马逊才可以声称要做成:“只需一个服务就可以向全球发送 SMS,再也不需要发现并整合各种消息聚合服务,也不必管理手机号码”。

功能介绍的博客上有张表格对比了过去的 SMS 服务和现在的新全球 SMS 服务提供的功能,有下面几点值得一提的:

  • 支持超过 200 个国家的手机号码
  • 除了 us-east-1 之外,又有五个新的大区支持这项功能
  • 直接把消息推送到支持 SMS 的设备上
  • 通过对 opt-out 的管理来取消 opt-in
  • 监控发送状态
  • 支持发送费用限制

现在已经可以直接把 SMS 消息发送到支持 SMS 的设备了,完全不需要先把他们注册到某个主题上,或者等待接收者的确认。基于注册的广播 SMS 消息的机制也已经从 opt-in 改成了对手机号码的 opt-out管理

有些地方(比如美国和加拿大)的法律或法规规定,SMS 用户在收到了不想收到的消息之后,可以向亚马逊发送这条消息所用的短号码或长号码直接回复 STOP 或 ARRET(法语),这样以后就再也收不到这个 AWS 账号发出来的消息了,除非你明确的把他的手机号码再加进列表中。

AWS 用户可以看到拒收消息的手机号码列表,可以把它再加进去,但这样的操作每 30 天只能做一次。

有几个 AWS 服务是可以做到对账号级别的费用支出进行控制的,亚马逊 SNS 就是其中之一。它可以在 SMS 消息发送费用超过了每月限额之后,做到在几分钟之内停止 SMS 广播。用户也可以自行查看自己账号的预算账单预警

还有一些其他特性,比如亚马逊 S3 Bucket 会每天收到一份 CSV 格式的关于某个默认发送账号的每日使用报告,默认有两种发送消息模式,这个是可以在每次发送消息时指定的:

  • 促销型:价格比较便宜,适用于非关键性消息推送,比如广告
  • 交易型:可靠性很好,适用于支持用户交易的关键消息,比如认证过程中的一次性密码

也可以通过 SMS 推送的 CloudWatch 指标和日志来监控 SMS 活动。用户可以创建 CloudWatch 告警,当推送失败的数量超过阈值时就会收到告警,然后进一步通过分析相应的 CloudWatch 日志内容来了解情况:

复制代码
{
"notification": {
"messageId": "34d9b400-c6dd-5444-820d-fbeb0f1f54cf",
"timestamp": "2016-06-28 00:40:34.558"
},
"delivery": {
"phoneCarrier": "My Phone Carrier",
"mnc": 270,
"destination": "+1XXX5550100”,
"priceInUSD": 0.00645,
"smsType": "Transactional",
"mcc": 310,
"providerResponse": "Message has been accepted by phone carrier",
"dwellTimeMs": 599,
"dwellTimeMsUntilDeviceAck": 1344
},
"status": "SUCCESS"
}
{1}
{1}

上面的几个 dwell 时间是一些时间差,一个是从消息发送到 SNS 开始到消息发送到目标运营商的时间,另一个是从消息发送到 SNS 开始到收到了目标用户的设备发回来的响应的时间。如果支持的话,providerResponse 的内容中还会表明 SMS 发送失败的原因

微软 Azue 的 Notification Hubs 和谷歌云平台的 Cloud Pub/Sub 服务都没能对 SMS 消息支持到这种程度,即使他们都和 Twilio 结合提供了更高级的程序服务——微软的 Logic Apps 和谷歌的 App Engine

亚马逊的 SNS 文档有开发者指南有一个专门的章节讲述如何发送SMS 消息,以及 API 参考。还有一章 FAQ 。还包括每个国家每个运营商的 SMS 定价情况,慢慢地,亚马逊还会争取“有办法争取最优惠的价格”。在亚马逊SNS 论坛可以找到支持信息。

阅读英文原文 Amazon Simple Notification Service (SNS) Gains Worldwide SMS Delivery

2016-09-25 19:0016226
用户头像

发布了 152 篇内容, 共 68.0 次阅读, 收获喜欢 63 次。

关注

评论

发布
暂无评论
发现更多内容

佛山复星禅诚医院黄汉森:云边协同,打造线上线下一体化智慧医疗

阿里云弹性计算

弹性计算 分布式云 云盒 异地双活

Rancher 2.6 全新 Logging 快速入门(2)

Rancher

Kubernetes k8s rancher

极简云上分析,释放数据价值|Kyligence 邀您参加2022秋季线上论坛

Kyligence

数据分析 数据价值 数据管理 智能多维数据库

Git实战(五)| 让工作更高效,搞定Git的分支管理

霍格沃兹测试开发学社

Jenkins 踩坑 | job 创建、参数化、定时构建及时区偏差问题解决

霍格沃兹测试开发学社

超大规模跨域集群统一监控实践

移动云大数据

App自动化之dom结构和元素定位方式(包含滑动列表定位)

霍格沃兹测试开发学社

Git 实战(三) | Github 必会高频基础命令与 IDE 的 Git 集成

霍格沃兹测试开发学社

Tapdata 获阿里云首批产品生态集成认证,携手阿里云共建新合作

tapdata

阿里云 Tapdata

如何通过经纬度坐标获取附近的地址信息?

HMS Core

定位

LED显示屏行业未来是如果发展的?市场怎么样?

Dylan

LED显示屏 led显示屏厂家

Selenium 中的 JUnit 注解

FunTester

Spring Security系列教程17--注销登录的实现及原理分析

一一哥

spring security spring-boot 注销登录

SUSE 加速汽车行业智能化发展

Rancher

Kubernetes k8s rancher

Git实战(四)| Git分支管理实操,搞定在线合并和本地合并

霍格沃兹测试开发学社

编程小白也能快速掌握的ArkUI JS组件开发

HarmonyOS开发者

HarmonyOS

混迹职场10多年的数据开发老鸟,居然被一个职场新人上了一课

雨果

数据工程师

技术分享 | 黑盒测试方法论—场景法

霍格沃兹测试开发学社

Docker 镜像构建可以分享的快乐

霍格沃兹测试开发学社

MySQL查询重写插件

TimeFriends

8月月更

开源,无禁止即可为

Databend

开源社区 大数据 开源 #开源 databend

30 分钟轻松搞定正则表达式基础

霍格沃兹测试开发学社

在window下使用 VScode 搭建 ARM 开发环境

矜辰所致

开发工具 开发环境 arm 8月月更

云原生(三十一) | Kubernetes篇之平台基本预装资源

Lansonli

云原生 k8s 8月月更

面试突击79:Bean 作用域是啥?它有几种类型?

王磊

Java 常见面试题

直播预告丨阿里云佐井:关注预警6要素,帮助用户实现精准监控和告警

阿里云弹性计算

监控 预警

Tapdata 杨哲轩:如何在零售行业实施主数据治理?

tapdata

Tapdata

记录一次数据库CPU被打满的排查过程

京东科技开发者

数据库 cpu cpu飙满 调优 慢SQL

什么?MySQL的等值查询竟然出错了??

转转技术团队

MySQL

BAT 大厂最流行的性能压测、监控、剖析技术体系解析

霍格沃兹测试开发学社

BAT大厂都在用的Docker。学会这三招,面试、工作轻松hold住

霍格沃兹测试开发学社

亚马逊的简单通知服务已经可以在全世界范围内发送短信_DevOps & 平台工程_Steffen Opel_InfoQ精选文章