1. 首页
  2. 事件参考
  3. 请求事件
  4. 请求事件

请求事件

  • 发布于 2026-09-04
  • 3 次阅读

请求事件的 category 固定为 request,可通过 request 大类监听。

当前契约对应框架 v2.0.6。推荐声明 request: true,SDK 应在连接前注册监听器;好友申请必须有 request,群申请当前接受 requestgroup_event 任一权限。权限只决定是否投递已有事件,不会主动制造申请。普通账号请求按事件的 self_id + client_type 路由,不按 WS 固定节点分割。

好友申请

QQ 推送好友申请提示后,框架会回读好友系统消息,以接口返回的数据生成事件,而不是猜测提示包字段。

api.on('friend_request_received', event => {
  console.log(event.user_id, event.comment)
})
{
  self_id,
  post_type: 'request',
  request_type: 'friend',
  sub_type: 'add',
  user_id,
  nickname,
  comment,
  source,
  flag,
  requested_at
}

flag 是不透明请求标识,调用 set_friend_add_request 时必须与事件的 self_idclient_type 一起原样传回。不同协议的原生申请标识可以不同,不能跨协议搬用或解析成数字。

Android 与 Linux 都由原生申请提示触发系统消息回读,普通申请与同意结果按原生状态区分,不依赖通知文案。同一账号/协议的重复提示按 flag 去重;不同协议分别生成账号事件,同一账号事件在多条合法 WS 中保持同一个 event_id。仅有 UID 时提供 user_uid,不把未知 QQ 号伪装为 user_id: 0

处理流程:保存真实事件 → 用户确认同意或拒绝 → 使用同一账号、协议与原样 flag 调用 set_friend_add_request → 查询好友列表确认实际关系。拒绝不产生 friend_added;再次申请必须使用新事件的 flag。网络超时不代表审批未执行,不应自动重复审批。

get_doubt_friends_add_request 只查询 Android 的可疑申请,不能作为普通申请的总表,空列表也不代表没有收到普通申请。断线期间不保证重放申请事件;已保存的标识在处理前仍由框架回读验证,失效时返回错误。

无需验证的直接添加不是待审批申请。在已验证的策略0场景中,只有发起方好友列表新增关系,原生好友新增事件也只投递给发起方的在线协议会话;接收方没有产生待审批申请。不要用缺少申请事件判定这一分支失败,应核对该账号自己的好友列表。

入群申请与邀请

api.on('group_request_received', event => {
  console.log(event.group_id, event.user_id, event.request_id)
})
字段 说明
group_id, group_name 目标群
user_id, nickname 申请者
user_uid 原生申请者 UID;没有可确认 QQ 号时保留 UID,不填 user_id: 0
comment 申请附言,存在时返回
request_id, request_type 原生请求标识
request_extra 附加请求标识,存在时返回
invitor_id, invitor_nickname 邀请者,邀请入群时返回
invitor_uid 原生邀请者 UID,存在时返回

request_idrequest_typerequest_extra 应原样用于入群申请处理接口。

框架按原生群、类型、状态、申请者及已知邀请者/处理者匹配当前申请,再选最新服务器序号;不会用已处理记录遮蔽新申请。缺少 QQ 号但有有效 UID 时保留 UID。空响应不当成审批成功,同一账号/协议的相同请求短时去重。

收到请求后,通过 approve_group_applyreject_group_apply 使用原事件的账号、协议及请求标识处理。group_member_joined 表示已加入,不是待审批请求,不能拿成员事件虚构申请编号。主动提交 send_group_join_request 仅支持 Android;Linux 接收和审批是独立能力,不能与 Linux 主动提交混淆。

已验证范围

v2.0.6 发布前已使用两个 QQ、Android/Linux、两节点及双正向/单反向 WS 验证好友申请接收、拒绝旧标识、再次申请、同意与关系确认,以及 Android 入群申请、跨协议审批、拒绝后无虚假加入、新申请批准及成员关系恢复。Linux 主动好友申请已覆盖有目标 UID 的场景;无 UID 缓存的陌生账号、群邀请待审批和任意外部通知模板未包含在该实测范围内。