BerrySDK/BerryProtocol

GitHub: BerrySDK/BerryProtocol

BerryProtocol 是一个基于 TypeScript 的 WhatsApp Web 自动化 SDK,用于构建交互式消息应用和自动化工作流。

Stars: 1 | Forks: 0

BerryProtocol

BerryProtocol

适用于 TypeScript 的原生 WhatsApp 交互式消息 SDK。

使用原生列表、按钮、轮播、OTP 流程、实时事件和多会话自动化构建现代 WhatsApp 体验。

npm version npm downloads github repo node version typescript focus

## 为什么选择 BerryProtocol BerryProtocol 是一个现代、开发者优先的 SDK,旨在使用 TypeScript 创建丰富的 WhatsApp 体验。 BerryProtocol 关注的核心不是低层的协议内部细节,而是: - 交互式消息 - 实时通信 - 多会话可扩展性 - 开发者体验 - 自动化工作流 - 简洁的 npm 集成 该项目是 BerrySDK 生态系统的一部分,通过简单且可扩展的 API 驱动现代 WhatsApp 自动化流程。 # 功能特性 ## 原生交互式消息 BerryProtocol 原生支持: - 列表 - 回复按钮 - CTA 按钮 - 复制按钮 - OTP 消息 - 轮播 - 投票 - 表情回应 - 在线状态 - 富媒体 - 实时事件 ## 多会话架构 专为可扩展的应用程序设计。 - 多个 WhatsApp 会话 - 独立的认证状态 - 二维码认证 - 配对码流程 - 会话恢复 - 自动重连 适用于: - SaaS 平台 - 自动化系统 - 客服工具 - 聊天机器人平台 - WhatsApp 集成 - API 服务 ## 开发者体验 BerryProtocol 的设计旨在提供简单、现代且可用于生产环境的体验。 ### 亮点 - TypeScript 优先的 API - ESM 优先的包 - 简洁的公共导出 - 分组的 SDK 模块 - 强类型事件 - 轻量级集成流程 - npm 优先的分发 # 安装说明 ``` npm install berryprotocol ``` # 快速上手 ``` import BerryProtocol, { makeLogger } from "berryprotocol"; const client = new BerryProtocol({ sessionId: "default", logger: makeLogger(), reconnectDelayMs: 1500, reconnectMaxAttempts: 12, printQrInTerminal: true, }); client.on("auth.qr", ({ value }) => { console.log("qr", value); }); client.on("connection.open", () => { console.log("connected"); }); client.on("message.received", (message) => { console.log("incoming", { from: message.from, type: message.type, }); }); await client.connectWithQr(); ``` # 交互式消息示例 ## 回复按钮 ``` await client.sendButtons(chatId, { text: "Choose an option", buttons: [ { id: "buy", text: "Buy now", }, { id: "support", text: "Support", }, ], }); ``` ## 列表 ``` await client.sendList(chatId, { title: "Menu", buttonText: "Open", sections: [ { title: "Pizzas", rows: [ { id: "calabresa", title: "Pizza Calabresa", }, ], }, ], }); ``` ## 复制按钮 ``` await client.sendCopyButton(chatId, { text: "Your verification code", code: "458921", }); ``` ## 轮播消息 ``` await client.sendCarousel(chatId, { text: "Featured products", cards: [ { title: "Berry Burger", body: "Special burger", footer: "BerryProtocol", }, ], }); ``` # 实时事件 BerryProtocol 为现代自动化系统暴露了类型化的实时事件。 ``` client.on("message.received", console.log); client.on("message.updated", console.log); client.on("message.reaction", console.log); client.on("presence.update", console.log); client.on("connection.update", console.log); ``` # 媒体支持 支持的媒体流程包括: * 图片 * 视频 * 音频 * 语音消息 * 贴纸 * 文档 * GIF 示例: ``` await client.sendImage(chatId, { url: "./image.png", caption: "BerryProtocol", }); ``` # 生态系统 BerryProtocol 是 BerrySDK 生态系统的一部分。 ## 包 * `berryprotocol` * `berryotp` * `berryapi` ## 未来工具 * BerryStudio * 可视化消息构建器 * 实时流程编辑器 * Webhook 检查器 * 自动化设计器 # 仓库结构 ``` src/ ├── Auth/ ├── Defaults/ ├── Media/ ├── Messages/ ├── Socket/ ├── Store/ ├── Types/ ├── Utils/ └── index.ts ``` # 环境要求 * Node.js >= 20 * npm # 实用脚本 ``` npm run build npm run clean npm run prepublishOnly ``` # 版本控制 BerryProtocol 使用手动语义版本控制。 推荐的发布流程: ``` npm version patch git push origin main --follow-tags ``` # 发展路线图 * 原生 Flow 消息 * WhatsApp 表单 * 高级轮播构建器 * 更好的媒体管道 * 内嵌 AI 助手 * BerryStudio 集成 * 可视化流程编辑器 * Webhook 重放工具 * 会话仪表板 # 支持 如果 BerryProtocol 对您的项目有帮助: * 为仓库点星 * 贡献示例 * 提交问题 * 分享集成方案 * 帮助改进文档 # 免责声明 BerryProtocol 是一个用于互操作性和自动化目的的独立工程项目。 它与 WhatsApp 无关,也未得到 WhatsApp 的认可。
标签:BerryProtocol, BerrySDK, GNU通用公共许可证, MITM代理, Node.js, npm, OTP流程, TypeScript, WhatsApp Web自动化, WhatsApp自动化, 交互式消息, 列表消息, 即时通讯开发, 可扩展架构, 多会话管理, 威胁情报, 安全插件, 实时通信, 开发者工具, 按钮消息, 消息SDK, 消息平台集成, 消息自动化, 自动化攻击, 轮播消息