Chat App 消息发送 Skill 操作手册

更新时间:
复制为 MD 格式

本文档详细为您介绍 Chat App 消息发送 Skill 的核心能力、安装方式及使用流程。通过本 Skill,您可以在 Agent 中完成 WhatsApp消息的发送、模板查询与会话管理,无需频繁切换控制台或手动构造 API 请求。

前提条件

  1. 拥有阿里云子账号 AccessKey ID 和 AccessKey Secret(由主账号在RAM控制台创建用户,并授予 CAMS 相关权限)。

  2. 已开通 Chat App 消息服务控制台,并完成以下操作:

    • 绑定 WhatsApp Business Account(WABA)

    • 注册并审核通过发送方手机号(From)

    • 创建并审核通过消息模板(发送模板消息时必须)

一、核心技能和优势

阿里云 Chat App 消息发送 Skill 将 WhatsApp消息的发送、模板查询、会话管理能力封装成 Agent 可调用工具。企业用户无需频繁切换控制台或手动构造 JSON 参数,就可以在 Agent 中完成客户通知、营销触达和会话交互。

能力

说明

发送模板消息

跨 24 小时会话窗口发送 WhatsApp模板消息,支持变量替换,适用于营销通知、订单状态、验证码、物流提醒等场景。

发送自定义消息

在 24 小时会话窗口内发送自有形态消息,支持 text / image / video / audio / document / interactive / location 七种类型。

查询模板列表

按审核状态、模板类型、语言筛选模板,供 Agent 自动选择或展示给用户。

查询模板详情

获取指定模板的变量结构,让 Agent 引导用户逐项填参,避免参数数量与格式错配。

核心优势

  • 对话式完成消息发送:用户无需频繁进入控制台,可直接在 Claude Code、Qwen Coder、OpenClaw 等 Agent 工具中,通过自然语言完成模板查询、变量填写和消息发送。

  • 降低参数构造成本:传统 API 调用对 Content JSON 格式要求严格,格式不符合要求可能导致任务失败。使用 Skill 后,Agent 可自动构造合法 JSON,并辅助完成变量匹配。

  • 自动错误诊断:Skill 内置常见错误码自动诊断与解决方案提示,例如 SessionWindowExpired 时自动切换至模板消息流程,RAM 权限不足时联动 ram-permission-diagnose 技能引导用户申请权限。

  • 发送前二次确认:所有可定制参数(From / To / 模板 / 变量 / Content JSON)必须显式向用户确认,Agent 永不假设默认值,确保消息发送准确无误。

二、安装方式

阿里云技能市场安装(推荐)

访问阿里云技能市场,搜索 “ChatApp 消息发送”进行安装。

ClawHub 安装

访问 ClawHub 平台,搜索“alibabacloud-chatapp-message-send”查看 Skill 说明和安装。

其他安装方式

ClaudeCode 安装

参考Claude Code官方文档

将下载的技能压缩包解压后,移入 ClaudeCode 的技能目录中:

  • 全局生效(所有项目):将技能移到 ~/.claude/skills/ 目录下

  • 项目级生效(仅当前项目):将技能移到 项目根路径/.claude/skills/ 目录下

移入完成后,重启 ClaudeCode 生效。

OpenClaw 安装

将下载的技能压缩包解压,复制技能所在的目录路径,在 OpenClaw 中输入该路径,直接对话“帮我安装一下这个目录下的技能”,等待技能安装完成的提示信息后即可使用。

三、环境配置

1. Aliyun CLI >= 3.3.3

运行 aliyun version 校验版本。若未安装或版本过低:

# macOS / Linux 一键安装或升级到最新版
curl -fsSL https://aliyuncli.alicdn.com/setup.sh | bash

# 验证版本(需 >= 3.3.3)
aliyun version

重要:在调用任何 CLI 前,启用自动插件安装与 AI-Mode:

aliyun configure set --auto-plugin-install true
aliyun plugin update
aliyun configure ai-mode enable
aliyun configure ai-mode set-user-agent \
  --user-agent "AlibabaCloud-Agent-Skills/alibabacloud-chatapp-message-send"

退出时必须关闭:会话结束/任务完成/异常退出,任何退出路径都需执行 aliyun configure ai-mode disable

2. 安装 cams 插件

aliyun plugin install --names aliyun-cli-cams

3. 凭证验证

安全规则

  • NEVER 读取、回显、打印 AK/SK 值

  • NEVER 在对话或命令行中要求用户直接输入 AK/SK

  • NEVER 使用 aliyun configure set 配合明文凭证

  • ONLY 使用 aliyun configure list 检查凭证状态

aliyun configure list

检查输出中是否存在有效的 profile(AK / STS / OAuth)。若无有效 profile,请停在此处,从 RAM控制台获取凭证后,在会话外通过 aliyun configure 或环境变量完成配置,再返回继续。

4. RAM 权限

本 Skill 需要以下 RAM Action:

API

Action

说明

SendChatappMessage

cams:SendChatappMessage

发送消息

SendChatappMassMessage

cams:SendChatappMassMessage

批量发送

ListChatappTemplate

cams:ListChatappTemplate

查询模板列表

GetChatappTemplateDetail

cams:GetChatappTemplateDetail

查询模板详情

ListChatappMessage

cams:ListChatappMessage

查询消息列表

最小权限策略 JSON:

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "cams:SendChatappMessage",
        "cams:SendChatappMassMessage",
        "cams:ListChatappTemplate",
        "cams:GetChatappTemplateDetail",
        "cams:ListChatappMessage"
      ],
      "Resource": "*"
    }
  ]
}

四、Skill 使用说明

核心功能

  • 支持对话式查询模板列表和详情,获取可用的模板和变量结构。

  • 支持自动发送模板消息和自定义消息,可跨 24 小时会话窗口触达用户。

  • 支持会话窗口检测:超时自动切回模板消息流。

  • 支持多语言模板(如 en / zh_CN / zh_HK 等)。

  • 支持 ISV 多租户场景:--cust-space-id。

五、典型应用场景

海外订单通知

订单发货、物流更新、支付确认,是海外业务中常见的消息触达场景。

过去,运营人员需要查模板、填变量、准备号码,再通过控制台或脚本完成发送。使用 Skill 后,用户可以直接向 Agent 提出需求,由 Agent 协助完成模板匹配、变量填写、消息发送和结果返回。

营销活动触达

海外营销活动中,WhatsApp 常用于新品通知、促销提醒、会员唤醒等场景。

需要注意的是,WhatsApp 模板消息仍需提前完成审核,Skill 不会缩短 Meta 的模板审核周期。但在模板审核通过后,Agent 可以帮助用户更高效地调用模板,还能自动验证号码格式和模板匹配度,完成客户名单处理、变量匹配、分批发送和结果复盘。

客服回访跟进

客服回访中,24 小时会话窗口是一个重要规则。客户主动发起会话后,企业可在窗口内发送自由体消息;窗口外则需要使用模板消息。

通过 Skill,Agent 可以协助判断应使用自由体消息还是模板消息,并推荐合适的发送方式,帮助客服人员减少规则理解和人工判断成本,避免失败重发。

六、常见问题

这个 skill 支持哪些 AI agent 工具?

目前支持 Claude Code、Cursor、OpenClaw、Qoderwork、悟空等遵循 Agent Skills 标准的工具。更多平台持续接入中。

skill 和控制台的能力有什么区别?

skill 当前支持发送模板消息、发送自定义消息、查询模板列表、查询模板详情。创建模板,消息控制台功能暂不支持,仍需通过控制台操作。

没注册账号,可以发消息吗?

不可以。您需要注册阿里云账号,并开通 Chat App 消息服务,完成 WABA 绑定、发送方手机号注册和模板审核。

个人用户可以使用吗?

WhatsApp Business API 需要企业资质。个人用户如果有企业信息,可使用企业资质;不支持个人资质发送消息。

模板变量必须严格按格式填写吗?

是的。模板变量需要按编号顺序填写(如 1=value1 2=value2 3=value3),Agent 会引导您逐项确认,避免数量或格式错配。

什么样的模板可以用来发消息?

模板审核状态为"通过"且语言与目标用户匹配,即可使用该模板发送消息。可通过 list-chatapp-template --audit-status pass 查询已审核模板。

一次可以发多少条消息?

可以,如果有多个手机号,可以发给多个用户,只需要告知 Agent 目标手机号列表即可。

自定义消息只能在 24 小时内发送吗?

是的。WhatsApp 自定义消息只能在用户最近一次消息后 24 小时内发送,超时将报 SessionWindowExpired,此时 Agent 会自动切换至模板消息流程。

七、常见错误码

错误码

含义

解决方案

InvalidParameter.FromOnlyNumeric

手机号包含 +

API 仅接受纯数字,移除 +,例如 8613867404376

TemplateNotFound

模板不存在

核对 template-code 与 biz-language

TemplateParamInvalid

模板变量错误

检查变量数量与格式是否与模板匹配

SessionWindowExpired

24h 会话窗口超时

切换至模板消息流程

PhoneNumberNotRegistered

发送方未注册

在控制台完成手机号注册与审核

Forbidden.RAM

RAM 权限不足

使用 ram-permission-diagnose 技能联动开通缺失权限

InvalidAccessKeyId.NotFound

AccessKey ID 错误

检查 AK ID

SignatureDoesNotMatch

AccessKey Secret 错误

检查 AK Secret

权限失败联动:当任何命令因 RAM 权限失败时,Skill 自动读取 references/ram-policies.md,调用 ram-permission-diagnose 技能引导用户申请权限,等待确认后再恢复执行。

八、相关资源