View a markdown version of this page

RCS 入门 - AWS 最终用户消息 SMS

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

RCS 入门

本指南将引导您完成在 “ AWS 最终用户消息” 中设置第一个 RCS 代理,以及发送和接收第一条 RCS 消息的过程。最后,您将拥有一个正常运行的 RCS 测试环境。预计完成时间:15—30 分钟。

以下是本指南涵盖的内容:

  1. 创建 AWS RCS 代理并提交测试注册

  2. 添加测试设备并接受测试人员邀请

  3. 发送您的第一条出站 RCS 消息

  4. 使用关键字测试入站(双向)消息

有关 RCS 在 AWS 最终用户消息传递中的工作原理,包括两级身份模型(AWS RCS 代理和企业 IDs版 RCS)的背景信息,请参阅。什么是 RCS?

设置和测试 RCS

本节将指导您完成创建 AWS RCS 代理、注册测试设备、发送第一条 RCS 消息以及验证传送的过程。完成这些步骤后,您可以继续在生产国家/地区启动 RCS。

先决条件

在开始之前,请确保您具有以下各项:

  • 具有 AWS 最终用户消息访问权限的 AWS 帐户-您需要一个有权使用 AWS 最终用户消息的帐户。 AWS 如果您没有账户,请参阅AWS 账户设置指南

  • 启用了 RCS 的手机 — 你需要一部在默认消息应用程序中启用 RCS 消息功能的 Android 手机,或者一部运行 iOS 18 或更高版本的 iPhone。此电话可用作接收 RCS 消息的测试设备。

  • (可选)已配置 AWS CLI — 如果您想使用 API 而不是控制台进行测试,请安装和配置 AWS CLI 或使用 AWS 软件开发工具包,例如适用于 Python 的 boto3。

步骤 1:创建您的 AWS RCS 代理并提交测试注册

第一步是创建 AWS RCS 代理并提交测试注册。测试注册会创建一个 RCS for Business ID(测试代理),您无需运营商批准即可使用它向注册的测试设备发送消息。

有关 AWS RCS 代理管理的完整详细信息,包括代理生命周期和 API 操作,请参阅管理 RCS 代理

创建 AWS RCS 代理(控制台)

创建 AWS RCS 代理并提交测试注册
  1. 打开AWS 最终用户消息控制台

  2. 在导航窗格的配置下,选择 RCS 代理

  3. 选择创建 RCS 代理。这将创建 AWS RCS 代理,然后立即指导您在单个工作流程中创建测试注册。

  4. 下一个屏幕显示了 RCS 的简介并解释了设置过程。查看信息,然后选择 “下一步” 继续。

  5. 代理详细信息页面上,设置以下内容:

    • 友好名称 — AWS RCS 代理专用的控制台标签。这是供您参考的内部名称(存储为标签),不是收件人电话上显示的名称。该友好名称无法通过 API 获得。

    • 删除保护-(可选)启用以防止意外删除代理。

    • 标签-(可选)添加标签以组织和识别您的代理。

  6. 在同一页面的品牌信息部分,输入以下内容:

    • 显示名称-收件人在 RCS 消息旁边看到的品牌名称。

    • 描述 — 对您的品牌或业务的简要描述。

    • 用例-选择 RCS 消息的主要用例(例如,交易通知、营销或客户支持)。

  7. 在同一页面的品牌资产部分,上传以下内容:

    • 徽标 — 224 × 224 像素,带透明度的 PNG,小于 50 KB。

    • 横幅图片 — 1440 × 448 像素,PNG 或 JPEG,低于 200 KB。

    • 品牌颜色 — 一种十六进制颜色代码(例如#1A73E8),与白色背景的最小对比度为 4. 5:1。

    重要

    代理商提交注册后,某些品牌资产无法更改。在创建代理之前,请准备好最终的品牌资产。如果您想先进行实验,则可以使用此流程快速创建测试代理,然后使用最终确定的品牌资产创建一个全新 AWS RCS 代理。

  8. 合规性关键词页面上,配置您的关键字和自动回复消息。

  9. 在 “查看” 页面上,验证您的所有设置。

  10. 选择 “验证并提交” 以创建 AWS RCS 代理并提交测试注册。

注意

您已成功创建 AWS RCS 代理并提交了测试注册。您的测试代理通常会在几分钟内获得批准。现在,让我们启用发送到您的设备的测试消息。

创建 AWS RCS 代理 (CLI)

您也可以使用 C AWS LI 创建 AWS RCS 代理。首先,创建代理,然后提交测试注册。

步骤 1:创建 AWS RCS 代理:

aws pinpoint-sms-voice-v2 create-rcs-agent \ --deletion-protection-enabled

步骤 2:为代理提交测试登记。使用注册类型的 CreateRegistration API 进行 RCS 测试。在提交之前,您可以使用 DescribeRegistrationFieldDefinitions API 以编程方式检索所有可用的注册表单字段。在注册表字段中提供您的品牌资产、描述和联系方式。

有关注册 API 的详细信息,请参阅管理 RCS 代理

步骤 2:添加测试设备

在您的测试注册获得批准后,将您的手机添加为测试设备,这样您就可以收到来自测试代理的 RCS 消息。

注意

添加测试设备后,不会立即发送测试人员邀请。系统会将激活延迟至少 120 秒,最长可能需要 20 分钟才能收到邀请。控制台显示大概的激活时间。您无需等待即可添加设备,系统会自动处理延迟。

Console
添加测试设备
  1. 在 AWS 最终用户消息控制台中,导航到您的 AWS RCS 代理并选择测试选项卡。

  2. 选择添加测试设备

  3. 以 E.164 格式输入测试设备的电话号码(例如,+12065550100)。

  4. 选择添加

AWS CLI

使用带有--rcs-agent-id参数的 CreateVerifiedDestinationNumber API 为您的 AWS RCS 代理注册测试设备:

aws pinpoint-sms-voice-v2 create-verified-destination-number \ --destination-phone-number +12065550100 \ --rcs-agent-id rcs-a1b2c3d4

添加测试设备后,“ AWS 最终用户消息” 会向该电话号码发送测试人员邀请。邀请来自名为 R BM Tester Management 的 R CS 代理,其中包含两个接受或拒绝的按钮:“让我成为测试者” 和 “拒绝”。收件人必须点击 “让我成为测试员” 才能完成验证。

注意

在 iOS 设备(搭载 iOS 18 或更高版本的 iPhone)上,测试者邀请可能出现在消息应用程序的 “未知发件人” 文件夹中,而不是主收件箱中。如果您没有看到邀请,请查看 “未知发件人” 文件夹。

有关管理测试设备(包括 API 方法和故障排除)的更多详细信息,请参阅测试 RCS 消息

第 3 步:发送您的第一条 RCS 消息

在您的测试设备接受测试人员邀请后,您可以发送第一条 RCS 消息。您可以使用 AWS 最终用户消息控制台或 API。

Console
使用控制台发送测试消息
  1. 在 AWS 最终用户消息控制台中,导航到您的 AWS RCS 代理并选择测试选项卡。

  2. 选择出站测试消息。控制台会显示您的消息在收件人设备上的呈现方式的预览,以及 JSON 请求正文和 CLI 命令。

  3. 从列表中选择经过验证的测试设备。

  4. 输入您的消息文本。

  5. 选择发送测试消息

注意

您可以选择为消息事件设置配置集。配置集允许您在所选事件目的地使用精细的送达收据 (DLRs) 和其他消息事件。这对于测试来说是可选的,但建议用于生产用途。有关更多信息,请参阅 RCS CloudWatch 指标和监控

AWS CLI

使用send-text-message命令发送测试消息。指定您的 AWS RCS 代理 ARN 作为发起身份:

aws pinpoint-sms-voice-v2 send-text-message \ --destination-phone-number +12065550100 \ --origination-identity arn:aws:sms-voice:us-east-1:123456789012:rcs-agent/rcs-a1b2c3d4 \ --message-body "Hello from RCS! This is my first test message."

send-text-message命令与您用于 SMS 的命令相同。当您指定 AWS RCS 代理 ARN 作为发起身份时 AWS ,最终用户消息将通过 RCS 传送消息。

步骤 4:测试入站(双向)消息

您可以通过配置具有自动响应功能的关键字,然后从测试设备发送与该关键字匹配的消息来测试入站 RCS 消息。

使用自动回复关键字测试入站消息
  1. 在 AWS 最终用户消息控制台中,导航到您的 AWS RCS 代理并配置关键字。例如,RCSINBOUNDTESTING使用自动回复消息来设置关键字,例如 “入站测试成功!您的留言已收到。”

  2. 测试选项卡上,选择入站深度链接

  3. 默认消息正文字段中,输入您配置的关键字(例如,RCSINBOUNDTESTING)。

  4. 选择 “生成链接”。控制台使用 GSMA 标准 URI 方案生成入站深度链接 sms: URL。此深度链接嵌入在屏幕上显示的二维码中。

  5. 使用经过验证的测试人员手机扫描二维码。这将打开原生消息应用程序,其中包含一条预先填充的消息,发送给您的 AWS RCS 代理。

  6. 从您的测试设备发送消息。

  7. 验证您的测试设备上是否收到了自动回复消息。

测试自动回复关键词不需要设置活动目标或 Amazon SNS 主题。根据您的 AWS RCS 代理上的关键字配置,自动回复完全由 AWS 最终用户消息处理。

要接收和处理任意入站消息(而不仅仅是关键词匹配),您需要为双向消息配置一个 Amazon SNS 主题。有关更多信息,请参阅 接收入站 RCS 消息

你完成了什么

完成本指南中的步骤后,您将获得:

  • 使用您的品牌资产创建了 AWS RCS 代理并提交了测试注册

  • 注册了测试设备并接受了测试人员邀请

  • 已发送您的第一条 RCS 消息并已验证送达

  • 使用自动回复关键字测试了入站消息

您的测试环境现已准备就绪。以下是将 RCS 消息集成到您的应用程序中或微调 RCS 消息传递工作方式的方法:

  • 接收和处理入站消息:配置 Amazon SNS 主题以接收入站 RCS 消息并使用 Lambda 函数对其进行处理。请参阅接收入站 RCS 消息

  • 跟踪传送事件:设置配置集以在您选择的事件目的地中使用精细的送达收据 (DLRs) 和其他消息事件。请参阅RCS CloudWatch 指标和监控

  • 启用短信回退:使用您的 AWS RCS 代理和 SMS 电话号码创建电话池,以便在无法传送 RCS 时自动回退到短信。请参阅使用电话池的 RCS 到 SMS 回退

  • 在生产国家/ 地区发射:提交国家/地区发布登记,向美国和加拿大的所有收件人发送 RCS 消息。请参阅在各国推出 RCS

AI 代理提示设置 RCS

如果您使用生成式 AI 编码助手或 AI 代理,则可以使用以下提示获取有关创建 AWS RCS 代理、提交测试注册以及使用 AWS CLI 发送第一条测试消息的帮助。

注意

复制以下提示并将其粘贴到您的 AI 代理或编码助手中:

## RCS Setup Assistant Prompt Help me set up RCS messaging in AWS End User Messaging using the AWS CLI. The service is `pinpoint-sms-voice-v2`. Walk me through each step with exact CLI commands. Ask me for all required details before generating any commands. **Important rules for generating commands:** - All commands use the `pinpoint-sms-voice-v2` service. - Use `create-rcs-agent` exactly as spelled — NOT `create-r-c-s-agent`. - Use the term "testing" — NOT "sandbox". - There is NO `describe-messages` API. Do not generate it. - `create-rcs-agent` does NOT accept brand asset parameters (no display name, no logo, no banner, no color). Brand assets are registration fields only. - `create-verified-destination-number` uses `--rcs-agent-id`, NOT `--origination-identity`. ### Step 1: Create an RCS Agent Use `create-rcs-agent`. This creates the agent resource only. Optional parameters: `--deletion-protection-enabled`, `--opt-out-list-name`, `--tags`. The response returns `RcsAgentId` and `RcsAgentArn` — save both. ### Step 2: Create and submit a testing registration This configures brand assets and submits for approval. It requires multiple API calls in sequence: a. `create-registration --registration-type TEST_RCS_LAUNCH_REGISTRATION` → returns `RegistrationId`. Save it. b. `create-registration-association --registration-id <id> --resource-id <agent-id>` → links the registration to the agent. c. Upload images as attachments (two calls): `create-registration-attachment --attachment-body fileb://<logo-path>` `create-registration-attachment --attachment-body fileb://<banner-path>` → each returns `RegistrationAttachmentId`. Save both. d. Set ALL required registration fields using `put-registration-field-value` with `--registration-id`, `--field-path`, and the appropriate value flag (`--text-value`, `--select-choices`, or `--registration-attachment-id`). Required fields (ALL must be set or registration will be DENIED): - `agentDetails.brandName` (text, 2-65 chars) - `agentDetails.serviceName` (text, 1-100 chars) - `agentDetails.senderDisplayName` (text, 1-40 chars) - `agentDetails.useCase` (select: OTP, TRANSACTIONAL, PROMOTIONAL, MULTI_USE) - `agentDetails.agentDescription` (text, 1-100 chars) - `agentDetails.logoImage` (attachment ID from step c, 224x224 PNG) - `agentDetails.bannerImage` (attachment ID from step c, 1440x448 PNG/JPEG) - `agentDetails.accentColor` (text, hex code e.g. #0066CC) - `agentDetails.privacyPolicyUrl` (text, valid URL) - `agentDetails.termsAndConditionsUrl` (text, valid URL) - `agentDetails.averageMonthlyRcsFrequency` (select: 10, 100, 1000+) - `agentDetails.monthlyRcsVolume` (text, 1-100000) - At least ONE contact method WITH its label: agentDetails.contactWebsite + agentDetails.contactWebsiteLabel, OR agentDetails.contactPhoneNumber + agentDetails.contactPhoneLabel, OR agentDetails.contactEmailAddress + agentDetails.contactEmailLabel e. Verify all fields: `describe-registration-field-values --registration-id <id>` Any field showing `DeniedReason: MISSING_REQUIRED_FIELD` must be set. f. Submit: `submit-registration-version --registration-id <id>` g. Poll status: `describe-registrations --registration-ids <id>` Wait for `RegistrationStatus: COMPLETE`. **Error recovery:** If registration is DENIED, you must: 1. `create-registration-version --registration-id <id>` (creates new draft) 2. Re-populate ALL fields from scratch (new versions do NOT inherit values) 3. Fix the issue noted in `DeniedReasons` 4. Re-submit ### Step 3: Add a test device **Prerequisite:** Step 2 must be COMPLETE and the agent's `TestingAgent.Status` must be `ACTIVE` (check with `describe-rcs-agents`). Then wait at least 120 seconds after the agent becomes ACTIVE. Use `create-verified-destination-number --destination-phone-number <E.164> --rcs-agent-id <agent-id>`. The device status will be `PENDING`. The user must accept the RCS tester invitation on their physical device. Check status with `describe-verified-destination-numbers` — wait for `VERIFIED`. ### Step 4: Send a test RCS message **Prerequisite:** Step 3 device must be `VERIFIED`. Use `send-text-message --destination-phone-number <E.164> --origination-identity <agent-arn> --message-body "<text>" --message-type TRANSACTIONAL`. Returns `MessageId`. ### Step 5: Verify delivery For testing: check the test device — the message appears from the branded RCS agent. For production monitoring: set up event destinations BEFORE sending messages using `create-event-destination` (SNS, CloudWatch Logs, or Firehose). Event destinations do not retroactively capture events for already-sent messages. CloudWatch metrics in the `AWS/SMSVoice` namespace provide aggregate stats. --- **Before generating commands, ask me for:** - Brand name, service name, and sender display name - Agent description (what the agent does, what messages users receive) - Use case type: OTP, TRANSACTIONAL, PROMOTIONAL, or MULTI_USE - Logo file path (224x224 PNG) and banner file path (1440x448 PNG/JPEG) - Brand accent color hex code (e.g. #0066CC) - Privacy policy URL and terms & conditions URL - One contact method with label: website URL, phone number, or email - Estimated monthly RCS volume and per-user message frequency - Test device phone number in E.164 format (e.g. +12065550100)