User Guide
Gateway 公共隧道与飞书 Webhook
在桌面端通过 Gateway 公共隧道配置 Cloudflare Tunnel,并完成飞书事件回调接入
Gateway 公共隧道与飞书 Webhook
本文用于桌面端场景:本机没有公网 IP,通过 Gateway 公共隧道暴露 webhook 地址,给飞书事件订阅使用。
适用版本
- Lime 已支持“渠道管理 > Gateway 公共隧道”配置卡片
- 飞书渠道支持
webhook模式
前置条件
- 已安装
cloudflared,并确保命令可执行:
cloudflared --version
- 已准备 Cloudflare 账号和域名(若使用固定域名)
- 飞书应用已创建,拿到
App ID与App Secret
桌面端已支持在「渠道管理 > Gateway 公共隧道」中直接点击:
检测 cloudflared、一键安装 cloudflared(支持 macOS / Windows / Ubuntu 等常见 Linux 发行版)。
步骤 1:配置 Gateway 公共隧道
进入:设置 > 渠道管理,在顶部找到 Gateway 公共隧道 卡片。
推荐配置:
启用隧道: 开启Provider:cloudflare模式:managed本地 Host:127.0.0.1(或0.0.0.0)本地 Port:3000
Cloudflare 相关字段(二选一):
Run Token(推荐)Tunnel ID + Credentials File
如果你希望应用内创建隧道,可填写:
Tunnel NameDNS Name(例如bot.example.com)
然后点击 创建隧道。
步骤 2:同步飞书回调地址
在同一个卡片中:
- 填
同步回调账号 ID(Feishu),单账号一般为default - 点击
同步飞书回调 URL
该动作会自动:
- 计算并返回完整 webhook URL
- 将飞书渠道切换为
webhook模式 - 回填飞书
webhook_host/webhook_port/webhook_path
步骤 3:启动隧道并验证状态
在 Gateway 公共隧道卡片依次点击:
探测启动查询状态
正常时状态里应看到:
running: truepublic_base_url不为空last_error为空
步骤 4:配置飞书后台事件订阅
进入飞书开发者后台,事件订阅选择“发送至开发者服务器”。
将上一步返回的 webhook_url 填入请求地址,并保存。
如果你启用了飞书验证或加密,请确保以下字段一致:
Verification TokenEncrypt Key
步骤 5:启动飞书 Gateway 并联调
在 渠道管理 > 飞书 中:
- 确认
连接模式 = webhook - 点击飞书调试工具中的
重启或启动 - 在飞书给机器人发消息,观察是否收到回复
常见问题
1) 飞书后台提示“未检测到应用连接信息”
常见原因:
- 隧道未启动
public_base_url为空或不可访问- 飞书仍在
websocket模式(当前版本不建议)
处理:
- 在 Gateway 卡片点击
查询状态 - 确认
running: true - 重新执行
同步飞书回调 URL
2) 启动隧道失败
常见原因:
cloudflared不在 PATHRun Token/Tunnel ID/Credentials File缺失或无效
处理:
- 先点
探测看具体错误 - 优先改为使用
Run Token - 如果提示未安装 cloudflared,可先点
检测 cloudflared,再点一键安装 cloudflared
3) 飞书保存回调 URL 失败
常见原因:
- URL 不可公网访问
- Token/加密配置不一致
处理:
- 确认 URL 为
https://且可访问 - 对齐飞书后台与 Lime 的 Token/Encrypt Key
运维建议
- 生产场景优先使用固定域名,不建议临时域名
- 将
Run Token存储在受控环境,避免明文传播 - 隧道可用后再启动渠道 Gateway,减少“启动成功但回调不可达”的误判
进程常驻策略(Tauri + Cloudflared)
桌面端建议按环境选择:
managed(应用内托管,默认)
由 Lime 在启动后自动拉起 tunnel,并定时检查进程状态;异常退出会自动重拉。external(系统级常驻,生产更稳)
由系统服务管理cloudflared,Lime 仅做状态诊断与 webhook 同步。
何时用 external
- 需要长期稳定在线(飞书后台持续探活)
- 本机网络波动较大,应用重启不希望影响 tunnel
- 需要把 tunnel 运维与桌面应用生命周期解耦
常见连通性检查
curl -i "https://<你的域名>/feishu/default"
cloudflared tunnel info "<tunnel-id>"
期望结果:
curl返回 2xx/4xx(只要不是 Cloudflare 1033/530,说明已到达你的应用入口)tunnel info显示有 active connectors