关于 aws-sms-voice
aws-sms-voice 是用于 AWS End User Messaging SMS、Voice、RCS 和 Notify 的技能,面向配置消息服务的 AWS 用户。它涵盖测试消息、OTP、按国家注册及生产准备,并提供安全与清理指引。
主要功能
- 01创建 RCS 测试 Agent 并发送消息
- 02通过 Notify 发送 OTP 短信
- 03查询各国注册要求
- 04执行注册及生产工作流
- 05落实 IAM 与消息安全措施
适用场景
- 01在已验证设备上测试品牌双向 RCS 消息
- 02通过 Notify 发送验证码
- 03为身份办理特定国家的注册
- 04推动 SMS、RCS 或 Notify 消息服务上线
MCP 相关
推荐使用 AWS MCP 服务执行 AWS API 调用,以获得沙盒执行、审计日志和可观测性。服务不可用时,也可使用 AWS CLI 或 SDK。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ aws/ agent-toolkit-for-aws --skill aws-sms-voice安装后在 Claude Code 中输入/aws-sms-voice确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/customer-go-to-production-guide.mdhello-notify-otp.mdhello-rcs-test-agent.mdregistration-core-engine.mdregistration-requirements-by-country.md详细介绍
AWS End User Messaging — SMS、Voice、RCS 和 Notify
概述
AWS End User Messaging SMS and Voice(pinpoint-sms-voice-v2 API)是 SMS、Voice、RCS Business Messaging 和 Notify(OTP)的控制与数据平面。本技能涵盖两种最快的入门方式——每种方式都能在约 5 分钟内向真实手机发送真实消息,无需购买电话号码,也无需进行运营商注册:
- 创建 RCS 测试代理并发送第一条品牌消息 — 创建品牌 RCS Business Messaging 代理、验证测试设备,并发送富媒体出站消息和接收入站消息。请参阅 references/hello-rcs-test-agent.md。
- 使用 Notify 发送 OTP — 通过 AWS 托管的发送身份和预先批准的模板发送一次性密码短信。请参阅 references/hello-notify-otp.md。
除了入门指南,本技能还分 3 个步骤,帮助你将身份推进到生产环境注册:
- 查找国家/地区要求的注册类型 — 查明目标国家/地区和身份类型所需的注册类型及其实时字段集,并与官方文档核对。请参阅 references/registration-requirements-by-country.md。
- 完成注册生命周期 — 使用适用于所有注册类型(包括 RCS 国家/地区发布)的通用引擎(创建、推导字段、填写、提交、轮询、处理拒绝并重新提交)。请参阅 references/registration-core-engine.md。
- 将身份推进到生产环境 — 退出 SMS 沙盒,在提供运营商监控和 SMS 回退的国家/地区推出 RCS,将 Notify 升级到 Advanced,并落实生产环境规范(关键字、配置集、保护配置)。请参阅 references/customer-go-to-production-guide.md。
防护指南 — 本技能文件所在位置(MCP 与本地安装)
本技能可通过两种方式加载,references/ 文件的解析方式也各不相同:
- 通过 AWS MCP
retrieve_skill工具加载。 参考文件不在本地文件系统中。使用retrieve_skill并通过file参数获取文件(例如file="references/hello-rcs-test-agent.md")。不要在本地对这些路径使用file_read——文件并不存在于本地。 - 本地安装(例如
.kiro/skills/aws-sms-voice/)。根据本文档中显示的相对路径,从本地技能目录读取参考文件。
这仅适用于本技能打包的文件。用户创建的构件(brand-assets/、临时文件)始终位于用户的工作目录中。
连接后,请使用 AWS MCP 服务提供的可用工具执行命令——它支持沙盒化执行、审计日志记录和可观测性。AWS MCP 服务不可用时,可按需改用 AWS CLI 或 shell。
选择路径
| 你想要…… | 前往 |
|---|---|
| 向自己的测试手机发送丰富的品牌消息(卡片、徽标、双向消息) | hello-rcs-test-agent.md |
| 向任何受支持的手机发送验证码 / OTP,选择最快路径 | hello-notify-otp.md |
| 了解某个国家需要哪种注册,以及需要填写哪些字段 | registration-requirements-by-country.md |
| 创建并提交任意类型的注册(10DLC、免费电话号码、发件人 ID、RCS 上线、Notify 层级) | registration-core-engine.md |
| 让身份配置投入生产(退出沙盒、RCS 运营商上线及回退、Notify Advanced、卫生检查) | customer-go-to-production-guide.md |
RCS 测试 Agent 仅向已验证的测试设备发送消息,并需要进行简短的品牌注册(几分钟内自动审核)。Notify 可立即向其支持国家/地区的任何收件人发送消息,但仅限 AWS 管理的 OTP 模板。选择 RCS 来体验丰富消息;选择 Notify,以最短路径发送可用于生产的验证码短信。
开始之前(两种路径均适用)
推荐使用 AWS MCP 服务,以获得最佳体验——它通过沙盒执行、审计日志记录和可观测性来运行多个 pinpoint-sms-voice-v2 和 sts 调用。这并非硬性要求:AWS MCP 服务不可用时,每个步骤也都可以通过普通 AWS CLI 或 AWS Agent Toolkit 完成。
- 凭证。 运行
aws sts get-caller-identity --region <REGION>(传入--region以使用区域 STS 端点;全局sts.amazonaws.com端点已过时)。如果失败,请配置用户身份验证(命名配置文件 / SSO / 访问密钥——如果使用配置文件,每条命令都要加上--profile <PROFILE>),并优先使用带有临时凭证的 IAM 角色。每个参考文件的前提条件部分都包含完整的身份验证、CloudTrail 审计和 CLI 版本检查步骤。 - 最小权限访问。 这些任务需要目标账户中的一小组特定
sms-voice:操作(参考文件会列出每个步骤所用的读 / 写操作,例如sms-voice:DescribeRcsAgents、CreateRcsAgent、CreateRegistration、CreateNotifyConfiguration和SendNotifyTextMessage)。将策略范围严格限定为所选路径使用的操作;不要授予sms-voice:*或*FullAccess。 - 不要轻信 CLI 版本。 在任何步骤中,如果
pinpoint-sms-voice-v2命令出现Invalid choice '<operation>',都应视为本地服务模型过时或不完整(而非权限或账户问题)。RCS 和 Notify 参考文件(前提条件 3)提供了完整的应对方案:清除过时的~/.aws/models/pinpoint-sms-voice-v2/覆盖项,否则升级 AWS CLI,并以 boto3 作为后备方案。AccessDeniedException表示该身份缺少所需的sms-voice:权限。
每个参考文件都是自包含的:它会将你收集的 ID 作为会话状态进行跟踪,在提交前核对必需输入与服务要求,并以故障模式表格和清理部分结尾。请根据用户选择的路径遵循相应文件,不要自行变更 API 调用顺序——某些步骤会静默失败,或依赖必须实时读取的特定服务版本字段集。
安全注意事项
- 最小权限 IAM。 将策略限制为特定的
sms-voice:操作;在生产环境中,切勿使用*FullAccess或sms-voice:*。参考文件列出了每种接入方式所需的最少读取和写入操作。 - 临时凭证。 使用临时凭证承担 IAM 角色;切勿在代码、配置或环境变量中嵌入长期访问密钥。
- 消息或字段中不得包含机密。 OTP 代码和消息正文可能出现在 CloudTrail 和下游日志中——应将其视为敏感信息,切勿硬编码真实代码。为
sms-voiceAPI 调用启用 CloudTrail 日志记录,并使用 KMS CMK 加密 CloudTrail 日志和 CloudWatch 日志组。在生产流量开始前,关联一个带有事件目标(CloudWatch Logs 或 Kinesis)的配置集,以便监控送达情况。针对关键安全信号(反复出现的AccessDeniedException、异常发送量、支出接近限额阈值)创建 CloudWatch 告警,以便主动预警。注册联系信息字段(电子邮件、电话、URL)会提交给合作伙伴审核;请填写真实但不敏感的业务联系信息。 - 征得同意并处理退订。 仅向已同意接收消息的收件人发送消息。遵守 STOP / 退订状态;RCS 路径展示了如何在发送前检查退订列表。测试 Agent 会有意限制为向已验证的测试设备发送消息——不要绕过限制,向未同意的号码发送消息。
- 支出限额和滥用防范。 账户默认支出限额有意设得较低;如需提高,请审慎操作并持续监控。Notify 对每个目标地址强制执行不可调整的每日限额——不要尝试绕过。
- 破坏性清理。 拆除步骤会删除 Agent、注册信息和配置,且无法撤销——运行清理前,请先向用户确认,并注意在接入流程中,RCS Agent 默认启用了删除保护。