@bitbasti/聊天适应器-webex
社区 Webex 适配器 聊天SDK。 。 。 .
安装
npm install chat @bitbasti/chat-adapter-webex
使用量
import { Chat } from "chat";
import { createWebexAdapter } from "@bitbasti/chat-adapter-webex";
const bot = new Chat({
userName: "mybot",
adapters: {
webex: createWebexAdapter({
botToken: process.env.WEBEX_BOT_TOKEN!,
webhookSecret: process.env.WEBEX_WEBHOOK_SECRET,
}),
},
});
bot.onNewMention(async (thread, message) => {
await thread.post(`Hello from Webex! You said: ${message.text}`);
});
环境变量
| 变量 | 需求 | 说明 |
|---|---|---|
WEBEX_BOT_TOKEN | 对 | 来自 Webex 开发者门户网站的瓶式访问令牌 |
WEBEX_WEBHOOK_SECRET | 建议 | 用于 Webhook 签名验证的共享秘密 |
WEBEX_BASE_URL | 没有 | 覆盖 Webex API 基础 URL( 默认 ): https://webexapis.com/v1(中文(简体) ) |
WEBEX_BOT_USERNAME | 没有 | 覆盖机器人显示名称 |
配置
| 选项 | 类型 | 默认 | 说明 |
|---|---|---|---|
botToken | string | WEBEX_BOT_TOKEN | Bot 访问令牌 |
webhookSecret | string | WEBEX_WEBHOOK_SECRET | 用于验证 Webhook 签名的共享秘密 |
baseUrl | string | "https://webexapis.com/v1" | Webex API 基础 URL |
userName | string | "webex-bot" | 瓶子显示名( 在初始化时被瓶子的 Webex 配置所覆盖) |
botUserId | string | 自动检测通过 /people/me | 机器人的Webex人名标识(将 /people/me 电话(如果提供) |
logger | Logger | ConsoleLogger | 自定义日志实例 |
平台设置
- 转到 Webex 开发者门户 并签入.
- 导航到 我的 Webex 应用程序 → 创建新 App → 创建瓶。 。 。 .
- 填写机器人名称、用户名和图标,然后单击 添加瓶。 。 。 .
- 复制 装瓶访问托肯 - 这是你的
WEBEX_BOT_TOKEN。安全存储;只显示一次. - 创建指向服务器的 Webhook :
- 目标 URL:
https://your-domain.com/api/webhooks/webex - 资源 :
messages| 事件 :created - 资源 :
attachmentActions| 事件 :created - 秘诀 : 随机字符串——这是您的
WEBEX_WEBHOOK_SECRET
- 目标 URL:
- 在 Webex 空间中添加机器人并提及以验证整合.
见 Webex 网络用户指南 详情请查看webhook注册.
特征
- 提及和模式
- 通过Markdown的丰富文本(粗体、斜体、代码、链接)
- 适应卡(按钮、选择、收音机选择、字段、部分)
- 模块(带有提交/关闭动作的窗体卡)
- 文件上传( 每封信单文件)
- 线程支持( 基于父目录的线程)
- Webhook 签名验证(HMAC-SHA1)
限制
- 反应不支持 Webex bot 令牌——
addReaction编号 :removeReaction掷出NotImplementedError - Webex 通讯API 中没有打字指标
- 每个信件只支持一个文件上传
- 无法在同一信件中合并卡片和文件上传
许可证
麻省理工学院