# 获取频道和当前人信息

适用场景: 1.机器人服务打开小程序后(机器人服务需在机器人开发者端-服务配置)

2.机器人发出的ark 打开小程序后(ark模版的跳转link可以带上对应的参数)

# 从 extendData 中获取频道ID

# 机器人服务打开小程序

开发者在开发者平台配置服务功能的时候,在 extData 支持使用占位符来获取频道ID,子频道ID。

如:guildID=$OPENGUILDID$&channelID=$CHANNELID$

平台会在频道中打开机器人面板的时候,对占位符进行替换。开发者可以在App的 onShow 里的 options.extendData 中获取数据。

options.extendData是一个字符串变量,开发者解析该字符串后就可以获取频道ID与子频道ID。

# 机器人发出的ark打开小程序

由于机器人发送消息到频道的时候,是知道 $OPENGUILDID$$CHANNELID$ 的,所以可以在发送消息的时候将对应参数的值直接带到小程序地址上用于打开的时候调用小程序接口

# 获取频道信息与当前人身份

qq.getGuildInfo(Object object)

# 调用参数 Object object

属性 类型 默认值 必填 说明 最低版本
open_guild_id string 频道在机器人场景的 Guild id 1.40.0
channel_id string 子频道Id 1.40.0
success function 接口调用成功的回调函数 1.40.0
fail function 接口调用失败的回调函数 1.40.0
complete function 接口调用结束的回调函数(调用成功、失败都会执行) 1.40.0

open_guild_id 从小程序的 extendData 上获取,即开发者在机器人平台配置小程序服务时候提示到的 $OPENGUILDID$

# Object.success 回调函数参数 Object res

# 解密前

res 得到的是加密之后的数据,需要开发者解密,解密方案参考: https://q.qq.com/wiki/develop/game/frame/open-ability/signature.html

属性 类型 说明
encryptedData string 加密之后的数据,需要解密
iv string 对称解密算法初始向量(base64)
signature string 签名(base64)

# encryptedData 解密后的数据

属性 类型 说明
guild_name string 频道名称
member_role number 当前成员角色 0成员/1管理员/2频道主
channel_info Object 子频道信息,只在请求上有channel_id的时候才会返回
member_userid string 当前用户在机器人场景的 User id
member_nick string 当前用户在频道内的昵称
open_guild_id string Guild id

# Object channel_info 子频道信息

属性 类型 说明
channel_name string 子频道名称
channel_type number 子频道类型
is_accessible number 是否可以访问该子频道,0不可访问、1可访问
上次更新: 12/26/2021, 6:57:43 PM
手机QQ扫码
开发者社区
加入官方频道开发者社区