Skip to content

FAQ: 常见问题与解决方案 #188

Description

@HK6666

OpeniLink Hub 常见问题与解决方案

安装部署

Q: 安装后访问页面白屏

原因: 前端资源未构建。

解决:

  1. Docker 部署:确保使用的镜像包含前端资源,或使用 release 二进制
  2. 源码构建:先构建前端 cd web && pnpm install && pnpm build,再编译 Go

Q: 数据库文件在哪?

平台 路径
Linux ~/.local/share/openilink-hub/openilink.db
macOS ~/Library/Application Support/openilink-hub/openilink.db
root/service /var/lib/openilink-hub/openilink.db

PostgreSQL 模式下由 DATABASE_URL 环境变量指定。


Bot 连接

Q: Bot 显示「会话已过期」

原因: 微信登录 session 过期(通常 24 小时不活动后)。

解决: 在 Bot 详情页点击重新扫码登录。


Q: Bot 在线但收不到消息

排查步骤:

  1. 确认微信端能正常收发消息
  2. 查看 Hub 日志确认消息是否到达:在 Bot 详情页查看消息记录
  3. 如果消息到了 Hub 但没转发,检查 App 安装状态和事件订阅配置

App 相关

Q: 安装 App 后收不到消息事件

排查:

  1. 确认 App 订阅了 message 事件(App 详情页可查看)
  2. 确认 App Installation 的 scopes 包含 message:read
  3. 确认 Installation 状态为 enabled
  4. Hub 版本需 ≥ v0.1.1(修复了 builtin App 事件分发问题)

Q: WebSocket 连接正常但收不到事件推送

原因(v0.1.0 及之前): builtin App(如 OpenClaw)注册为内置应用但无 handler,事件分发被 continue 跳过,WebSocket 投递被绕过。

解决: 升级到 v0.1.1+,此版本修复了 builtin App 无 handler 时 fallthrough 到 WebSocket 投递的问题。


Q: 发送消息 API 返回 409

{"error":"暂无法发送:需要先收到用户消息","ok":false}

原因: Bot 还没有与目标用户建立过会话上下文(context_token)。

解决: 用户需要先主动发消息给 Bot,建立会话后才能回复。这是微信平台的限制。


Q: 发送消息 API 返回 503

{"error":"bot not connected","ok":false}

原因: Bot 不在线。

解决: 登录 Hub 后台,确认 Bot 状态为在线。如果显示离线,重新扫码登录。


多微信号

Q: 同一个 App 能接多个微信号吗?

可以。每个微信号在 Hub 上是一个独立的 Bot,分别安装同一个 App 即可。每个 Installation 有独立的 Token。

客户端(如 OpenClaw)使用多账户配置,每个账户填不同的 Token:

{
  "channels": {
    "openilink": {
      "hub_url": "https://hub.openilink.com",
      "accounts": {
        "bot1": { "app_token": "app_第一个bot的token" },
        "bot2": { "app_token": "app_第二个bot的token" }
      }
    }
  }
}

斜杠命令

Q: /s、/gi、/a 等命令怎么用?

这些是 Command Service App 提供的功能:

命令 功能
/s 600519 查股价
/gi 赛博朋克城市 生成图片
/a 帮我写邮件 AI 对话

需要在 Hub 后台单独安装:Bot 详情页 → 应用市场 → Command Service → 安装。


Q: @claw 提及命令怎么用?

在微信中发送 @claw 你的问题 即可触发 OpenClaw AI 回复。需要先在 Bot 上安装 OpenClaw App。

@handle 路由支持所有 App,handle 在 Installation 详情页可配置。


API

Q: Bot API 认证方式

所有 /bot/v1/* 接口使用 Bearer Token 认证:

curl -X POST https://hub.openilink.com/bot/v1/message/send \
  -H "Authorization: Bearer app_你的token" \
  -H "Content-Type: application/json" \
  -d '{"content":"hello","to":"user_id"}'

Token 在 Hub 后台 App Installation 详情页获取。


Q: WebSocket 连接地址

wss://hub.openilink.com/bot/v1/ws?token=app_你的token

连接后会收到 init 消息,包含 bot_id 和 installation_id。需定期发送 {"type":"ping"} 保持连接。


升级

Q: 如何升级 Hub?

二进制部署:

# 下载最新 release
# 停止旧服务 → 替换二进制 → 启动
systemctl stop openilink-hub
cp oih /usr/local/bin/oih
systemctl start openilink-hub

Docker 部署:

docker compose pull
docker compose up -d

数据库迁移会自动执行。


遇到其他问题?请提交 Issue。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions