Skip to content

Linux QQ API 使用范围

Linux QQ 是萌卡 NT 1.8.2 的原生账号协议。它与 Android 账号共享插件 WebSocket 通道和 action 信封,但使用独立的账号存储、登录管理器、在线实例和事件来源。

json
{
  "type": "action",
  "id": "request-id",
  "action": "send_group_msg",
  "params": {
    "self_id": 10000,
    "client_type": "linuxqq",
    "group_id": 20000,
    "message": "hello"
  }
}

官方 SDK 推荐使用:

js
const linuxApi = api.forProtocol('linux')
await linuxApi.send_group_msg(self_id, group_id, message)

协议选择器接受以下写法:

写法AndroidLinux QQ
SDKapi.forProtocol('android')api.forProtocol('linux')
client_typeandroidlinuxqqlinux_qqlinux-qq
platformandroidphonepadlinux

省略选择器时固定使用 Android。client_typeplatform 同时出现时必须指向同一协议,否则请求会失败。同一 QQ 双协议在线时,框架绝不会把 Linux 请求交给 Android 实例,或反向转交。

原生 Linux QQ 已开放动作

类别动作
系统get_login_infoget_statusget_version_infocan_send_imagecan_send_recordget_online_clients
消息send_msgsend_private_msgsend_group_msgsend_friend_msgsend_group_temp_msgdelete_msgrecall_group_msgget_msg、好友/群历史和已读动作
联系人和群get_friend_listget_group_listget_group_member_list
群管理管理员、群名片、专属头衔、单人/全员禁言、单人/批量移出
媒体和文件好友/群图片、群语音、群视频、私聊/群文件上传、合并转发读取与发送
Bot 管理Bot 列表/信息、缓存检查/登录、离线和删除

未列出的 Bot 业务 action 默认仅 Android 可用。Linux 请求遇到未实现 action 会返回 Linux QQ 暂不支持 action: <action>,不会伪造成功结果。

两套登录流程

Android 使用 add_accountlogin_account、安全验证、短信和登录安全二维码。Linux QQ 不接收 QQ 密码、Android 协议 ID 或 Android 设备指纹,使用以下独立流程:

Linux 登录完整使用管理端 /admin/linux-qq/accounts 原生链路:保存账号后由登录管理器生成二维码、以附件设定的节奏轮询并完成登录。插件 API 不提供第二套创建二维码或查询接口,避免与管理器同时轮询同一会话。

scan_qrauth_qr 属于 Android Bot 的二维码操作能力,不参与 Linux 原生登录管理器的自动扫码流程。 4. 已保存 Linux 票据时,可使用 cache_login 发起自动登录。

不要用 login_account 给 Linux QQ 发起密码登录,也不要把 Linux 二维码交给 Android 安全验证接口 create_login_qr / query_login_qr_status

事件来源

私聊消息、群消息、好友事件、群事件、请求事件和下线事件继续使用萌卡 NT 原生事件结构。事件数据额外包含:

json
{
  "platform": "linux",
  "client_type": "linuxqq"
}

插件应使用该字段选择自己的账号状态、缓存键和业务队列,不能只用 self_id 作为唯一键。

萌卡NT 开发文档