@chat-adapter/twilio

中文文档
4.44.0发布于 2026/11/02MITTypeScriptES Module构建来源已验证近 30 天下载 42.8万

Chat SDK 的 Twilio 适配器 : 短消息和 MMS bots 有消息webhooks 和信件 API

中文使用文档
文档目录11 节
  1. 安装
  2. 带CLI的脚手架
  3. 使用量
  4. 配置
  5. 打字指标
  6. 媒体
  7. 模板
  8. 低级助手
  9. 语音
  10. AI 编码代理
  11. 许可证

Twilio adapter for Chat SDK

@chat-adapter/twilio (英语)

npm 软件包 : @chat-adapter/twilio

Agent Stack MIT License

Twilio 适应器 聊天SDK。用 Twilio Messing webhoks 和 Messages API 构建短消息和 MMS bots .

联合国 聊天-sdk.dev/适应者/官方/twilio 指南: vercel.com/kb/chat-sdk (英语)

安装

pnpm add @chat-adapter/twilio

带CLI的脚手架

用这个适配器预选的新Twilio机器人:

npx create-chat-sdk@latest my-bot --adapter twilio memory

访问 适配器目录 见其他官方和供应商官方适配器.

使用量

适配器自动检测器 TWILIO_ACCOUNT_SID, (中文(简体) ), TWILIO_AUTH_TOKEN, (中文(简体) ), TWILIO_PHONE_NUMBER,以及 TWILIO_MESSAGING_SERVICE_SID 从环境变量:

import { createTwilioAdapter } from "@chat-adapter/twilio";
import { Chat } from "chat";

const bot = new Chat({
  userName: "mybot",
  adapters: {
    twilio: createTwilioAdapter(),
  },
});

bot.onDirectMessage(async (thread, message) => {
  await thread.post(`You said: ${message.text}`);
});

指向您的 Twilio 网络通讯路径 bot.webhooks.twilio(request)数字 :

import { bot } from "@/lib/bot";

export async function POST(request: Request): Promise<Response> {
  return bot.webhooks.twilio(request);
}

配置

createTwilioAdapter({
  accountSid: process.env.TWILIO_ACCOUNT_SID,
  authToken: process.env.TWILIO_AUTH_TOKEN,
  phoneNumber: process.env.TWILIO_PHONE_NUMBER,
  messagingServiceSid: process.env.TWILIO_MESSAGING_SERVICE_SID,
  webhookUrl: "https://your-domain.com/api/webhooks/twilio",
});

使用 phoneNumber 用于一个Twilio数字,或 messagingServiceSid 当通过Twilio通讯服务发送时.

打字指标

WhatsApp 和 RCS 对话可以通过 thread.startTyping(). Twilio's v3 In指示器 API 使用一个带有频道特定 JSON 的 URL :

  • 何为App: { channel: "WHATSAPP", messageId } (输入信件 SID)
  • RCS: 请检查URL=值 (帮助) { channel: "RCS", from: "rcs:<agent_id>", to: "rcs:+E164", event: "START" }

在WhatsApp上,Twilio也将被引用的消息标为已读. 电话号码线程是短消息,从不发送打字. 通讯服务MG…) 线索仅在 rcsSenderId 已设定,线程有输入消息; rcs: 线程总是这样。 如果Twilio拒绝请求,适配器会记录一个警告而不是扔出. 设定 messagingApiUrl (或 apiUrl)将打字请求指向代理或模拟器.

媒体

入境的MMS媒体作为附件被曝光. Twilio 媒体 URL 是私有的, 因此附件包括 fetchData() 用于认证下载.

外出 MMS 支持公开附件 url 数值。 Chat SDK不能将二进制文件上传到Twilio,因为Twilio的Messages API需要Twilio可以获取的媒体URL.

模板

卡片只根据RCS发送者的需求创建内容API模板. 要在任何频道上发送一个模板, 例如一个经批准的WhatsApp模板, 请将其内容Sid 传递给 sendTemplate数字 :

const twilio = bot.getAdapter("twilio");

const threadId = twilio.encodeThreadId({
  sender: "whatsapp:+15550000001",
  recipient: "whatsapp:+15551234567",
});

await twilio.sendTemplate(threadId, {
  contentSid: "HXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  contentVariables: { "1": "Tomorrow at 2pm" },
});

什么App模板需要一个 whatsapp: 发送器或带有WhatsApp发送器的邮件服务。 以这种方式发送的模板上的快速复制自带不作为 Chat SDK 动作解码: 带信体的自带作为正则消息到达, 且自带无法到达 onAction 以原始按钮打印为 actionId。 。 。 .

低级助手

运行时间灯 api, (中文(简体) ), format, (中文(简体) ), voice,以及 webhook 子路径可用于仅需要Twilio原始物的应用. 这些子路径不导入完整的 Chat SDK 适配器或 twilio npm 软件包.

语音

语音呼叫被曝光为低级帮助者,而不是通过短消息/MMS适配器进行路由. 使用 @chat-adapter/twilio/voice 与 @chat-adapter/twilio/webhook 当您的应用程序拥有语音路由, 并想要重用 TwiML 或调用更新助手时 .

自定义语音路由在返回TwiML之前,应当验证Twilio签名并应用自己的呼叫器许可列表.

AI 编码代理

如果您使用OpenAI Codex, Claude Code, 或 Cursor 等AI编码代理, 在写入代码前安装 Chat SDK 技能, 使其了解 SDK API, 适配器模式, 以及项目常规 .

npx skills add vercel/chat

技术参考文献 node_modules/chat/docs,加上已发布的软件包中的适配器指南和启动模板.

您也可以安装 Vercel 插件 包括Chat SDK技术与专家代理、代理斜线指令

npx plugins add vercel/vercel-plugin

插件是可选的;单是技能就足以用Chat SDK来构建.

关于可代理阅读的文件,见 聊天- sdk.dev/llms.txt (页数索引)或 聊天- sdk.dev/llms- full.txt (全文).

许可证

麻省理工学院

版本与发布记录

@chat-adapter/twilio 共发布 18 个版本,首次发布于 2026/05/28;过去 12 个月发布了 18 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
4.44.0latest2026/11/026 天前
4.43.02026/10/1921 天前
4.42.02026/10/1425 天前
4.41.12026/09/291 个月前
4.41.02026/09/181 个月前
4.40.02026/09/052 个月前

关于 @chat-adapter/twilio 的常见问题

@chat-adapter/twilio 是什么?

Chat SDK 的 Twilio 适配器 : 短消息和 MMS bots 有消息webhooks 和信件 API

如何安装 @chat-adapter/twilio?

在项目目录运行 npm install @chat-adapter/twilio,或使用 pnpm add / yarn add / bun add。

@chat-adapter/twilio 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@chat-adapter/twilio 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@chat-adapter/twilio 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=20。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@chat-adapter/twilio 可以商用吗?

@chat-adapter/twilio 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@chat-adapter/twilio 的下载量有多少?

根据 npm 官方下载统计,@chat-adapter/twilio 在 2026/10/10 – 2026/11/08 这 30 天内被下载 427,724 次,日均约 14,257 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@chat-adapter/twilio 还在维护吗?

最新版本 4.44.0 发布于 2026/11/02(6 天前);至今共发布 18 个版本,其中过去 12 个月发布了 18 个;首次发布于 2026/05/28。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。