Amazon Simple Notification Service
开发人员指南 (API 版本 2010-03-31)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

Amazon Simple Notification Service 入门

本节包含的信息有助于您了解 Amazon SNS 概念、快速设置并使用可用工具和接口创建和发布至主题。要开始发送推送通知消息,请参阅 使用 Amazon SNS 向作为订阅者的移动应用程序发送用户通知(移动推送)

开始前的准备工作

您需要一个 AWS 账户才能使用 Amazon SNS。如果您还没有账户,请使用以下过程。

注册 AWS 账户

  1. 打开 http://www.amazonaws.cn/,然后选择 Create an AWS Account (创建 AWS 账户)

    注意

    如果您之前曾使用 AWS 账户根用户 凭证登录 AWS 管理控制台,请选择 Sign in to a different account (登录其他账户)。如果您之前曾使用 IAM 凭证登录控制台,请选择 Sign-in using root account credentials (使用根账户凭证登录)。然后选择 Create a new AWS account (创建新的 AWS 账户)

  2. 按照联机说明操作。

    在注册时,您将接到一通电话,要求您使用电话键盘输入一个验证码。

开始使用 Amazon SNS

  1. 通过以下网址登录 AWS 管理控制台 并打开 Amazon SNS 控制台:https://console.amazonaws.cn/sns/v2/home

  2. 选择开始使用按钮。

    您现在应该位于 SNS 主页上。

创建主题

因为您已经注册 Amazon SNS,您即将创建一个主题。主题是发送消息和订阅通知的信道。它为发布者和用户相互交流提供了一个接入点。在这一节,您可创建一个称作“MyTopic”的主题。

要创建主题,请执行以下操作

  1. Amazon SNS 控制台中,选择创建主题

    此时将显示 Create topic 对话框。

  2. Topic name 框中,键入主题名称。

  3. 选择 Create topic

  4. 主题详细信息页面中,选择新主题,然后选择主题 ARN。

  5. 复制主题 ARN

    arn:aws:sns:us-west-2:111122223333:MyTopic

订阅主题

要接收发布至主题的消息,您必须订阅一个端点到该主题。终端节点是可从 Amazon SNS 接收通知消息的移动应用程序、Web 服务器、电子邮件地址或 Amazon SQS 队列。为终端节点订阅主题且确认订阅后,此终端节点会接收向该主题发布的所有消息。

在本部分中,您可以为终端节点订阅前一部分已创建的主题。您可以配置订阅,以便向您的电子邮件账户发送主题消息。

订阅主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.amazonaws.cn/sns/v2/home

  2. 选择 Create subscription

    创建新订阅对话框此时显示。

  3. 在“Topic ARN”字段中,粘贴您在前一任务中已创建的主题 ARN,例如:arn:aws:sns:us-west-2:111122223333:MyTopic

  4. Protocol 下拉框中,选择 Email

  5. Endpoint 框中,键入您用于接收通知的电子邮件地址。

    重要

    Entourage 用户:Entourage 清除确认 URL。在不同的电子邮件应用程序中键入您可以访问的电子邮件地址。

  6. 选择 Create subscription

  7. 进入您的电子邮件应用程序,打开来自 AWS 通知的消息,然后选择相关链接,确认订阅。

    您的 Web 浏览器将显示来自 Amazon SNS 的确认响应。

向主题发布

发布者发送消息至主题。一旦一条新的消息已经发布, Amazon SNS 将试图将消息发布至每个已经向主题订阅的终端节点。在本节中,在前一任务您向您设定的电子邮件地址发布一条消息。

发布消息至一个主题

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.amazonaws.cn/sns/v2/home

    在左侧导航窗格中,选择主题,然后选择您要向其发布消息的主题。

  2. 选择发布到主题按钮。

    此时将显示 Publish a Message 页面。

  3. Subject 框中,键入消息的主题行。

  4. Message 框中,键入一条简短的消息。

  5. 选择 Publish Message

    您将看到确认对话框。

您现在可以使用电子邮件应用程序打开来自 AWS Notifications 的消息并阅读这些消息。

为每个协议创建不同的消息

您可以使用消息格式化支持为每个协议定制您发送的消息。例如,发送给电子邮件和 SMS 订阅者的通知都可以定制给各种客户。SMS 用户可以接收简短的消息,而电子邮件用户可以接收更长、更详细的版本。

向主题发送有格式设置的消息

  1. 通过以下网址登录 AWS 管理控制台 并打开 Amazon SNS 控制台:https://console.amazonaws.cn/sns/v2/home

  2. 在左侧导航窗格中,选择主题,然后选择一个主题。

  3. 选择发布到主题按钮。

    此时将显示 Publish a message 页面。

  4. 选择 JSON 消息生成器按钮。

  5. Message 框中,键入一条简短的消息。

  6. 在此示例中,对于 Target Platforms,选择 emailsms

  7. 选择生成 JSON 按钮。

    您现在可以修改消息文本,针对每种客户端类型进行定制。

    SMS 消息最多可以包含 160 个 ASCII 字符或 70 个 Unicode 字符。如果消息超出这一长度,Amazon SNS 会将其作为多条消息发送,保证每条消息都符合字符限制。消息以整个词为边界,不会在一个词的中间截断。

    电子邮件消息的大小最高可达 256 KB 字节。

    下面的例子中,指定了消息的默认值是电子邮件还是 SMS 协议。

    { "default": "Message body text here.", "email": "Message body text here.", "sms": "Message body text here." }
  8. 选择 Publish message

    您将看到确认对话框。

清除

您已经创建了一个主题,订阅了该主题并向这个主题发布了信息。您现在可以通过取消订阅主题、然后删除主题清理环境。

从一个主题中取消订阅

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.amazonaws.cn/sns/v2/home

    在左侧导航窗格中,选择订阅

    Subscriptions”页面打开。

  2. 在订阅列表中选择您的订阅。这将是该页面的的唯一清单,除非您创建了多个订阅。

  3. 选择操作下拉列表,然后选择删除订阅

    此时会显示 Delete 确认对话框。

  4. 选择 Delete

删除订阅,只保留待确认订阅,也就是尚未确认的订阅。您无法删除待确认的订阅,但如果此类订阅保持待确认状态超过 3 天,Amazon SNS 会自动将其删除。

要删除主题,请执行以下操作

通过以下网址打开 Amazon SNS 控制台:https://console.amazonaws.cn/sns/v2/home

  1. 在左侧导航窗格中,选择主题,然后选择您要删除的主题。

  2. 选择操作下拉列表,然后选择删除主题

    此时会显示 Delete 确认对话框。

  3. 选择 Delete

    删除主题时,您还将删除该主题的所有订阅。