如何使用 WhatsApp Cloud API 构建企业级聊天机器人
通过集成 Meta 官方的 WhatsApp Business Cloud API,开发者可以构建专业的自动化客服系统,支持多种交互消息、安全的回调机制以及基于 AI 的对话流。
为什么需要这个技能
在企业级沟通中,WhatsApp 是全球最主流的触达工具。传统的个人账号无法支撑高并发的自动化需求,且容易被封号。
使用官方 Cloud API 能够提供稳定的发送通道、合规的模板消息机制以及强大的 Webhook 实时接收能力。无论是发送订单通知(Utility)、营销推广(Marketing)还是构建 AI 客服(Service),都需要掌握 Graph API 的调用规范和安全验证机制。
适用场景
- 自动化通知:发送订单确认、验证码(OTP)或预约提醒。
- 智能客服:结合 Claude 或 GPT 等 AI 模型,通过 Webhook 实时响应用户咨询。
- 交互式营销:利用按钮(Buttons)或列表(Lists)引导用户选择产品。
- 复杂表单采集:使用 WhatsApp Flows 在对话界面内完成预约或注册。
核心工作流
1. 环境配置与初始化
首先需要在 Meta for Developers 创建应用并获取 System User Token。配置基础环境变量:
WHATSAPP_TOKEN=your_access_token
PHONE_NUMBER_ID=your_phone_number_id
APP_SECRET=your_app_secret
VERIFY_TOKEN=your_custom_verify_token
2. 发送消息
根据 24 小时会话窗口规则,区分发送类型:
- 会话内消息:用户在 24h 内发过消息,可发送任意文本、媒体或交互按钮。
- 会话外消息:必须使用经 Meta 审核通过的 Template Message。
Python 示例:发送简单文本
import httpx
import os
GRAPH_API = "https://graph.facebook.com/v21.0"
async def send_text(to: str, message: str) -> dict:
async with httpx.AsyncClient() as client:
response = await client.post(
f"{GRAPH_API}/{os.environ['PHONE_NUMBER_ID']}/messages",
json={
"messaging_product": "whatsapp",
"to": to,
"type": "text",
"text": {"body": message}
},
headers={"Authorization": f"Bearer {os.environ['WHATSAPP_TOKEN']}"}
)
return response.json()
3. 实现安全 Webhook
为了接收用户消息,必须实现一个 HTTPS 端点。Meta 会通过 GET 请求验证端点,通过 POST 请求推送数据。必须使用 HMAC-SHA256 校验签名以防止伪造请求。
Node.js 签名验证示例:
import crypto from 'crypto';
function validateSignature(rawBody: Buffer, signature: string): boolean {
const expectedSig = crypto
.createHmac('sha256', process.env.APP_SECRET!)
.update(rawBody)
.digest('hex');
return crypto.timingSafeEqual(
Buffer.from(`sha256=${expectedSig}`),
Buffer.from(signature)
);
}
下载和安装
下载 whatsapp-cloud-api 中文版 Skill ZIP
解压后将目录放入你的 AI 工具 skills 文件夹,重启工具后即可使用。具体路径参考内附的 USAGE.zh.md。
你可能还需要
暂无推荐