从 /ping 到 pong:5 分钟实现飞书机器人与本地大模型的深度集成

总结从解决 .bat 关联失效到成功搭建 OpenClaw + Ollama + 飞书桥接器 全流程的经验。你可以将其收藏,作为日后的"排障手册"。


第一部分:Windows 环境基础修复

1. .bat 文件无法打开或右键无"打开方式"

  • 现象:双击脚本没反应,或者右键菜单里找不到"打开方式"。
  • 根源 :Windows 注册表中的脚本关联损坏,系统不认识 .bat 执行引擎。
  • 修复方法
  • 以管理员身份打开 CMD,运行:assoc .bat=batfileftype batfile="%1" %*
  • 进阶编辑 :若想编辑代码,按住 Shift + 右键 往往能强制调出隐藏的"打开方式"。

第二部分:AI 服务一键启动配置

为了方便日后一键启动并自动对齐 Token,请保留以下优化后的脚本。

1. 自动化启动脚本 (start_ai.bat)

该脚本解决了多窗口杂乱Token 不匹配的问题。

batch 复制代码
@echo off
chcp 65001
:: 1. 定义安全令牌 (用于 Bridge 与 Gateway 握手)
set "MY_TOKEN=xx"
:: 2. 飞书 API 配置
set "FEISHU_APP_ID=xx"
set "FEISHU_APP_SECRET=xx"
set "GATEWAY_TOKEN=%MY_TOKEN%"

:: 3. 使用 Windows Terminal (wt) 在标签页中启动
wt -w 0 nt --title "Ollama Server" cmd /k "ollama serve"; ^
nt --title "OpenClaw Gateway" cmd /k "openclaw gateway --token %MY_TOKEN%"; ^
nt --title "Feishu Bridge" --startingDirectory "C:\Users\an\.openclaw\workspace\skills\feishu-bridge-1.0.0" cmd /k "node bridge.mjs"

第三部分:飞书机器人排障指南

当你发现飞书机器人不回消息或报错时,请按顺序检查:

1. 错误代码速查表

错误代码 / 提示 含义 解决方法
1000040345 (System Busy) 握手失败 1. 确认后台开启了"长连接"模式;2. 确认 App ID/Secret 正确。
unauthorized: token mismatch 暗号对不上 脚本中的 MY_TOKEN 必须同时传递给 openclaw 参数和 GATEWAY_TOKEN 变量。
AxiosError: 400 Bad Request 鉴权失败 飞书后台修改权限后,必须创建新版本并点击"申请发布",配置才会生效。

2. 飞书后台必看设置

  • 订阅方式 :必须在"事件订阅"中选择 "长连接"
  • 应用能力 :必须启用 "机器人" 功能。
  • 权限范围 :必须包含 im:resource(获取资源)、im:message(消息相关)等权限。

第四部分:功能验证流程

  1. 链路测试 :在飞书私聊机器人发送 /ping,收到 pong 代表整条链路(飞书 -> 桥接器 -> 网关)已通

如果没通:查看C:\Users\an.clawdbot里面的配置文件中的appID,appSecret,gatewayToken是否配置正确


bash 复制代码
如果链路测试发送 `/ping` 后没有收到 `pong` 响应,请按照从外到内的顺序排查以下关键点:

### 1. 飞书云端与桥接器(Bridge)的连接

* **长连接状态**:检查飞书开放平台"事件订阅"页面,确认订阅方式已切换为"长连接"并显示为"已启用"。
* **版本发布情况**:确认在修改权限或配置后,已在"版本管理与发布"中创建并上线了新版本,否则云端配置不会生效。
* **错误代码 1000040345**:若桥接器日志出现此代码,通常代表 App ID 或 App Secret 填错,或者机器人能力未在"应用能力"中开启。
* **权限范围**:确认已在权限管理中搜索并启用了"获取机器人信息"或类似的机器人基本信息权限。

### 2. 桥接器(Bridge)与网关(Gateway)的通信

* **Token 匹配验证**:检查日志中是否出现"unauthorized: gateway token mismatch"错误。
* **变量对齐**:确保启动脚本中 `openclaw gateway` 后的 `--token` 参数值与 `set GATEWAY_TOKEN` 的变量值完全一致。
* **网关地址配置**:检查 `bridge.mjs` 或其配置文件,确认其指向的 OpenClaw 网关地址和端口(默认通常为 `http://127.0.0.1:11451` 或 `18789`)是否正确。

### 3. OpenClaw 网关自身状态

* **端口监听**:查看 OpenClaw 启动日志,确认其显示"listening on ws://127.0.0.1:18789"或指定的端口。
* **插件冲突**:检查日志开头是否有"duplicate plugin id detected"警告,若有则需删除重复的扩展目录(如 `C:\Users\an\.openclaw\extensions\feishu`),只保留工作空间内的版本。
* **认证模式**:观察日志中"Browser control listening"后是否显示"(auth=token)",若有则必须提供 Token 才能连接。

### 4. 系统环境排查

* **环境变量继承**:在 Windows Terminal 的标签页中输入 `echo %GATEWAY_TOKEN%`,确认变量已成功注入当前会话。
* **防火墙与拦截**:确认本地杀毒软件或防火墙未拦截端口通信,或尝试暂时关闭第三方安全软件进行测试。

如果您完成了上述检查仍无法收到响应,您希望我为您编写一段专门用于诊断 App ID 有效性的测试脚本吗?
  1. 模型测试 :直接发送任意问题,观察 OpenClaw 窗口是否有 agent model: qwen... 的推理日志。
  2. 冲突处理 :若日志提示 duplicate plugin id,请删除 C:\Users\an\.openclaw\extensions\feishu,只保留 workspace\skills 下的桥接器。

相关推荐
KOYUELEC光与电子努力加油2 小时前
JAE日本航空端子推出支持自走式机器人的自主充电功能浮动式连接器“DW15系列“方案与应用
服务器·人工智能·机器人·无人机
feasibility.6 小时前
DreamZero技术解析:当世界模型成为机器人“物理大脑”
论文阅读·人工智能·机器人·零样本·具身智能·vla·世界模型
gf13211116 小时前
【python_往飞书群或者话题下发送卡片和发送文件】
java·python·飞书
maxmaxma8 小时前
ROS2机器人少年创客营:Python第三课
开发语言·python·机器人·ros2
Tisfy8 小时前
LeetCode 3418.机器人可以获得的最大金币数:动态规划
leetcode·机器人·动态规划
kobesdu9 小时前
ROS Flutter GUI App:跨平台机器人可视化控制界面使用记录
flutter·机器人·ros
kobesdu10 小时前
LeRobot “机器人万能接口”:现状与前沿进展
机器人·ros
u868811 小时前
MaixinVoiceAI 3.0家电售后电话报修机器人解决方案
人工智能·机器人·大模型电话对接·coze 智能体接入电话·ai语音智能体
manyikaimen11 小时前
博派智能-运动控制技术-RTCP-五轴联动
c++·图像处理·qt·算法·计算机视觉·机器人·c#
才兄说12 小时前
机器人二次开发数据中心巡检?人力省60%
机器人