阿里云短信发送助手
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md 的指南,将 @user_15292d5a/yjkj-alibabacloud-sms-send-short-message 技能安装到我的 AI 助手中。
技能介绍
发送一条短信往往卡在三处:签名/模板是否审核通过、CLI 参数是否合规、失败时如何定位。这个技能把阿里云短信的端到端流程收进 aliyun CLI 调用,并强制走一套前置检查,适合需要从 Agent 或脚本里可靠发信的场景。
核心能力
- 单发与批量:
send-sms最多 1000 个号码共享签名与模板;send-batch-sms最多 100 个号码,可按号码指定不同签名/模板参数。 - 签名/模板:查询审批状态和列表,识别可用与不可用项。
- 查询与统计:发送详情、回执、日期区间内发送/成功/失败计数,以及资质记录与单条详情(详见
references/sms-qualification.md)。 - 包装脚本:
scripts/send_sms.sh自动补齐--api-version 2017-05-25、合规--user-agent与--read-timeout 3。
发送前的工作方式
- 参数确认:
--sign-name、--template-code、--template-param、--phone-numbers/--phone-number-json。用户未明确提供签名/模板时不猜测,先询问;同意后再调用aliyun dysmsapi query-sms-sign-list ...、aliyun dysmsapi get-sms-sign --sign-name、aliyun dysmsapi query-sms-template-list ...。 - 硬过滤:仅保留
SignStatus = 1、TemplateStatus = 1。不为通过过滤而丢弃签名,而是把SignIspRegisterDetailList[*].RegisterResult作为额外列,交由用户决定;号码必须显式提供。 - 变量解析:模板含
${xxx}占位符时,逐项补齐并组装为--template-paramJSON。 - 最终确认:完整复述发送计划,待用户明确确认后再调用
send-sms或send-batch-sms。
CLI 合规前置
- 环境要求:
aliyun version不低于3.3.3,并执行aliyun configure set --auto-plugin-install true、aliyun plugin update。 - AI 模式:开始前开启,任何退出路径(成功、失败、异常、取消、结束)都先关闭。
- 用户代理:每次调用带
--user-agent AlibabaCloud-Agent-Skills/alibabacloud-sms-send-short-message。 - 凭据:使用默认凭证链(环境变量 →
~/.aliyun/config.json→ ECS RAM 角色 → OIDC Token),不硬编码 AK/SK。
使用边界与注意点
- 依赖已开通的阿里云短信服务、审核通过的签名与模板;签名/模板状态
0/2/10在对应阶段不可发送,1可用。 send-sms与send-batch-sms的数量上限与参数结构不同,选错接口会直接失败。- 常见错误码:
isv.SMS_SIGN_NAME_ILLEGAL、isv.SMS_TEMPLATE_ILLEGAL、isv.MOBILE_NUMBER_ILLEGAL、isv.AMOUNT_NOT_ENOUGH、isv.BUSINESS_LIMIT_CONTROL;前两者出现时应主动提出列签名/模板再处理,不要盲目重试。 - 签名场景与模板场景需匹配;上游扩展码、
--out-id等可选字段按需使用。 - 本资料未声明跨区域发送、多账号聚合、自动充值或自动补发能力。
使用场景
- 运营需要给同一批号码发不同验证码,按号码组装参数并批量发送。
- 运维要在发送前核对签名与模板审核状态,避免调用后失败。
- 数据同事按日期区间查询发送、成功与失败统计,定位问题时段。
- 开发要把短信发送封装进自动化脚本,统一参数与超时设置。
适合人员
- 要在 Agent 工作流里可靠触发阿里云短信发送的开发工程师。
- 负责验证码、通知与营销短信下发,需要核对签名模板的运营。
- 需要按日期统计短信发送结果并排查失败原因的平台运维。
- 把短信调用做成脚本化任务,希望统一 CLI 合规参数的自动化工程师。