关于 sms-10dlc-registration
sms-10dlc-registration 是用于美国 A2P 10DLC 注册准备的技能,面向需要整理合规材料和 Sent campaign 请求的团队。它区分证据包与 API 载荷,并指导品牌继承选择和分层验证。
主要功能
- 01整理版本化合规证据包
- 02验证 campaign API 载荷
- 03选择品牌与 campaign 继承方式
- 04区分创建、TCR 提交和激活状态
适用场景
- 01准备美国 10DLC campaign 注册
- 02检查营销或混合流量样例要求
- 03排查注册状态与 TCR 提交情况
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ sentdm/ sent-plugin --skill sms-10dlc-registration安装后在 Claude Code 中输入/sms-10dlc-registration确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
agents/openai.yamlreferences/10dlc-evidence-checklist.md10dlc-rejection-remediation.mdtcr-use-cases.mdscripts/validate_10dlc_packet.pyvalidate_campaign_payload.pyscripts/fixtures/bad.jsoncampaign_bad.jsoncampaign_good.jsongood.json详细介绍
SMS 10DLC 注册
对于通过 10 位长代码发送的美国 A2P SMS,请使用此技能。合规证据包与精确的 Sent API 请求应分开处理;二者使用不同的架构和验证器。
如需了解当前字段和文档要求,或获取精确的 SMS 设置调用,请在准备此处的注册证据前使用 sent-compliance。其计划会创建新的 Sender Profile,不会管理现有 Profile 上的活动。
当前 Sent 资源模型
当前 v3 API 中没有独立的品牌 CRUD 路径。
- 在
POST /v3/profiles中使用brand和inherit_tcr_brand: false创建专用品牌。 - 使用
GET|POST /v3/profiles/{profileId}/campaigns列出/创建活动。 - 使用
PUT|DELETE /v3/profiles/{profileId}/campaigns/{campaignId}更新/删除活动。
拒绝会重新引入独立品牌路径的指导。
谨慎选择继承方式
| 品牌 | 活动 | 设置 |
|---|---|---|
| 两者均继承 | 组织品牌和活动 | inherit_tcr_brand: true,inherit_tcr_campaign: true |
| 继承品牌,使用自有活动 | 共享的法律实体品牌,使用租户专属流量 | 品牌为 true,活动为 false |
| 两者均自有 | 专属租户/企业 | 两者均为 false,并在创建 Profile 时提供 brand |
继承的活动为只读。当品牌继承为 true 时,Profile 不能提供 brand。
两个验证层
证据准备包
私有证据包使用明确的内部版本 sent-10dlc-evidence/v1 和 snake_case 证据字段。它不是 API 负载。
python scripts/validate_10dlc_packet.py evidence.json
收集法律实体信息、公开网站/政策链接、同意证明、消息流程、选择加入/退出/帮助响应及关键词、用途和真实可信的示例。请参阅 references/10dlc-evidence-checklist.md。
Sent 活动请求
API 请求使用精确的 camelCase 和 campaign 封装:
{
"campaign": {
"name": "Acme account notifications",
"description": "Account and delivery notifications for opted-in customers.",
"type": "App",
"useCases": [
{
"messagingUseCaseUs": "ACCOUNT_NOTIFICATION",
"sampleMessages": [
"Acme Example: Your account preference was updated. Reply STOP to opt out."
]
}
],
"volume": "2000",
"messageFlow": "Customers opt in in account settings before notifications begin.",
"privacyPolicyLink": "https://example.com/privacy",
"termsAndConditionsLink": "https://example.com/terms",
"optinMessage": "Acme Example: You are subscribed. Reply STOP to opt out.",
"optoutMessage": "Acme Example: You are unsubscribed and will receive no more messages.",
"helpMessage": "Acme Example: Visit https://example.com/support for help.",
"optinKeywords": "START,YES",
"optoutKeywords": "STOP,UNSUBSCRIBE",
"helpKeywords": "HELP,INFO"
},
"sandbox": true
}
使用以下内容验证:
python scripts/validate_campaign_payload.py campaign.json
API 用途
支持当前全部 13 个值:
MARKETING、ACCOUNT_NOTIFICATION、CUSTOMER_CARE、FRAUD_ALERT、TWO_FA、DELIVERY_NOTIFICATION、SECURITY_ALERT、M2M、MIXED、HIGHER_EDUCATION、POLLING_VOTING、PUBLIC_SERVICE_ANNOUNCEMENT 和 LOW_VOLUME。
每种用途在结构上接受 1–5 条示例,每条不超过 1,024 个字符。合规层要求营销和混合流量至少提供两条示例,包括低流量混合型。应明确呈现这一政策差异,不要误称 OpenAPI 要求所有流量都提供两条示例。
流量和状态
volume 为可选字段;如提供,必须是数字字符串。低于 "2000" 的值使用文档规定的低流量档;"2000" 是进入下一档的分界值。
活动响应当前会显示 SENT_CREATED、ACTIVE 和 EXPIRED 状态,以及 submittedToTCR。保留未知的未来状态字符串。不要将成功创建 Sent 记录与提交到 TCR 或运营商激活混为一谈。
安全工作流
- 确认这是美国 A2P 10DLC 流量,并已识别实际发送业务的企业。
- 选择品牌/活动继承方式。
- 验证有版本标记的证据包。
- 创建或确认 Profile 品牌。
- 将证据转换为精确的 camelCase 活动请求。
- 在本地验证,并使用
sandbox: true。 - 显示负载,并在执行实际创建/更新/删除前获取确认。
- 保存 Profile ID、活动 ID、
submittedToTCR、原始状态和审核证据。 - 仅在准备好前置条件后,使用必需的
webHookUrl完成 Profile。
绝不要在固定数据或示例中使用真实消费者数据。用途分类请参阅 references/tcr-use-cases.md,故障处理请参阅 references/10dlc-rejection-remediation.md。