邮箱格式怎么写,seo课程哪个好,自己做网站的软件,互联网品牌营销服务公司QQ频道机器人零基础开发详解(基于QQ官方机器人文档)[第二期]
第二期介绍#xff1a;频道模块之频道管理 目录 QQ频道机器人零基础开发详解(基于QQ官方机器人文档)[第二期]第二期介绍#xff1a;频道模块之频道管理获取用户详情获取用户频道列表获取频道详情获取子频道列表获…QQ频道机器人零基础开发详解(基于QQ官方机器人文档)[第二期]
第二期介绍频道模块之频道管理 目录 QQ频道机器人零基础开发详解(基于QQ官方机器人文档)[第二期]第二期介绍频道模块之频道管理获取用户详情获取用户频道列表获取频道详情获取子频道列表获取子频道详情创建子频道修改子频道删除子频道致谢和更新 不懂得的也可以来私聊或评论区问哦 原力到一千才可以推广三连啊喂 获取用户详情
接口
GET /users/me功能描述 用于获取当前用户机器人详情。
Content-Type
application/json返回 返回 User 对象。
错误码 详见错误码。
Python示例
# 用于获取当前用户机器人详情。
import requestsurl https://api.sgroup.qq.com/users/me
Authorization fQQBot {这个内容填写第一期我们获取的调用凭证}
herders {Content-Type: application/json,Authorization: Authorization}response requests.get(url, headersherders)print(response.json())获取的数据包如下
{id: 11586990140073229091,username: gitsub,avatar: https://thirdqq.qlogo.cn/g?boidbkM5TibpXicS7Jt4z89BZxiamAAs100t1641802698,union_openid: 74F138F7F3AF68C4B8E8325013FCA295,union_user_account:
}获取用户频道列表
接口
GET /users/me/guilds功能描述 用于获取当前用户机器人所加入的频道列表支持分页。
当 HTTP Authorization 中填入 Bot Token 是获取机器人的数据填入 Bearer Token 则获取用户的数据。
总的来说就是
Authorization fQQBot {这个内容填写第一期我们获取的调用凭证}你要获取机器人数据格式为QQBot {这个内容填写第一期我们获取的调用凭证}如果获取用户数据格式为Bearer 调用凭证
Content-Type
application/json返回 返回 Guild 对象数组。
错误码 详见错误码。
Python示例
import requests
用于获取当前用户机器人所加入的频道列表支持分页。当 HTTP Authorization 中填入 Bot Token 是获取机器人的数据填入 Bearer Token 则获取用户的数据。
url https://api.sgroup.qq.com/users/me/guilds
Authorization fQQBot {这个内容填写第一期我们获取的调用凭证}
headers {Content-Type: application/json,Authorization: Authorization
}response requests.get(url, headersheaders).json()
print(response)获取的数据包如下
[{id: 696527283900292399,name: 鹅们的萌宠啦咔咔啦,icon: https://groupprohead-76292.picgzc.qpic.cn/482231626508223/100?t1626508224633,owner_id: 4828365788198541698,owner: false,joined_at: 2021-12-08T16:12:3108:00,member_count: 17,max_members: 300,description: 123
}]这里需要注意当你有多个频道时你获取的数据包格式为
[{你第一个频道的数据},{你第二个频道的数据},{...}]当你想要获取其中某一个值时例如 id 的值可以使用
response[0][id]获取频道详情
接口
GET /guilds/{guild_id}在获取频道列表的数据包后数据包内包含了频道的 guild_id
功能描述 用于获取 guild_id 指定的频道的详情。
Content-Type
application/json返回 返回 Guild 对象
错误码 详见错误码。
Python示例
import requests用于获取 guild_id 指定的频道的详情。url fhttps://api.sgroup.qq.com/guilds/{guild_id}
Authorization fQQBot {这个内容填写第一期我们获取的调用凭证}
herders {Content-Type: application/json,Authorization: Authorization}response requests.get(url, headersherders).json()
print(response)获取的数据包如下
{id: 123456,name: xxxxxx,icon: xxxxxx,owner_id: xxxxxx,owner: false,joined_at: 2022-01-13T11:02:2108:00,member_count: 5,max_members: 300,description: 千江有水千江月万里无云万里天
}获取子频道列表
接口
GET /guilds/{guild_id}/channels在获取频道列表的数据包后数据包内包含了频道的 guild_id
功能描述 用于获取 guild_id 指定的频道下的子频道列表。
Content-Type
application/json返回 返回 Channel 对象数组。
错误码 详见错误码。
Python示例
import requestsurl fhttps://api.sgroup.qq.com/guilds/{guild_id}/channels
Authorization fQQBot {这个内容填写第一期我们获取的调用凭证}
herders {Content-Type: application/json,Authorization: Authorization}response requests.get(url, headersherders).json()
print(response)获取的数据包如下
[{id: xxxxxx,guild_id: 123456,name: 很高兴遇见你,type: 4,position: 2,parent_id: 0,owner_id: 0,sub_type: 0},{id: xxxxxx,guild_id: 123456,name: 管理员议事厅,type: 0,position: 1,parent_id: xxxxxx,owner_id: 0,sub_type: 0,private_type: 1},{id: xxxxxx,guild_id: 123456,name: 小黑屋,type: 0,position: 2,parent_id: xxxxxx,owner_id: 0,sub_type: 0,private_type: 0},{id: xxxxxx,guild_id: 123456,name: 新的子频道,type: 0,position: 2,parent_id: 123456,owner_id: 0,sub_type: 0,private_type: 2}
]这里需要注意当你有多个子频道时你获取的数据包格式为
[{你第一个频道的数据},{你第二个频道的数据},{...}]当你想要获取其中某一个值时例如 id 的值可以使用
response[0][id]获取子频道详情
接口
GET /channels/{channel_id}在获取子频道列表的数据包后数据包内包含了频道的 channel_id
功能描述 用于获取 channel_id 指定的子频道的详情。
Content-Type
application/json返回 返回 Channel 对象。
错误码 详见错误码。
Python示例
import requestsurl fhttps://api.sgroup.qq.com/channels/{channel_id}
Authorization fQQBot {这个内容填写第一期我们获取的调用凭证}
herders {Content-Type: application/json,Authorization: Authorization}response requests.get(url, headersherders).json()
print(response)获取的数据包如下
{id: 123456,guild_id: xxxxxx,name: 很高兴遇见你,type: 4,position: 2,owner_id: 0,sub_type: 0,private_type: 0,speak_permission: 0,application_id: 0
}创建子频道
接口
POST /guilds/{guild_id}/channels功能描述 用于在 guild_id 指定的频道下创建一个子频道。
要求操作人具有管理频道的权限如果是机器人则需要将机器人设置为管理员。创建成功后返回创建成功的子频道对象同时会触发一个频道创建的事件通知。 注意 公域机器人暂不支持申请仅私域机器人可用选择私域机器人后默认开通。 注意: 开通后需要先将机器人从频道移除然后重新添加方可生效。 Content-Type
application/json参数
字段名类型描述namestring子频道名称typeint子频道类型 ChannelTypesub_typeint子频道子类型 ChannelSubTypepositionint子频道排序必填当子频道类型为 子频道分组ChannelType4 时必须大于等于 2parent_idstring子频道所属分组IDprivate_typeint子频道私密类型 PrivateTypeprivate_user_idsstring 数组子频道私密类型成员 IDspeak_permissionint子频道发言权限 SpeakPermissionapplication_idstring应用类型子频道应用 AppID仅应用子频道需要该字段
返回 返回 Channel 对象。
错误码 详见错误码。
Python示例
import requestsurl fhttps://api.sgroup.qq.com/guilds/{guild_id}/channels
Authorization fQQBot {你自己的鉴权}data {name: 测试频道1,# 名字随意type: 0,# 文字子频道position: 1,parent_id: xxx,owner_id: xxx,sub_type: 0,private_type: 0
}herders {Content-Type: application/json,Authorization: Authorization}response requests.post(url, headersherders, jsondata).json()
print(response)获取的数据包如下
{id: xxxxxx,guild_id: xxxxxx,name: 测试频道1,type: 0,position: 1,parent_id: xxxxx,owner_id: xxxxxx,sub_type: 0
}修改子频道
接口
PATCH /channels/{channel_id}在获取子频道列表的数据包后数据包内包含了频道的 channel_id
功能描述 用于修改 channel_id 指定的子频道的信息。
要求操作人具有管理子频道的权限如果是机器人则需要将机器人设置为管理员。修改成功后会触发子频道更新事件。 注意 公域机器人暂不支持申请仅私域机器人可用选择私域机器人后默认开通。 注意: 开通后需要先将机器人从频道移除然后重新添加方可生效。 Content-Type
application/json参数
字段名类型描述namestring子频道名positionint排序parent_idstring分组 idprivate_typeint子频道私密类型 PrivateTypespeak_permissionint子频道发言权限 SpeakPermission
需要修改哪个字段就传递哪个字段即可。
返回 返回 Channel 对象。
错误码 详见错误码。
Python示例
import requestschannel_id xxx
url fhttps://api.sgroup.qq.com/channels/{channel_id}
Authorization fQQBot xxxdata {name: 测试频道2,
}herders {Content-Type: application/json,Authorization: Authorization}response requests.patch(url, headersherders, jsondata).json()
print(response)获取的数据包如下
{id: xxxxxx,guild_id: xxxxxx,name: 测试频道2,type: 0,position: 1,parent_id: xxxxx,owner_id: xxxxxx,sub_type: 0
}删除子频道
接口
DELETE /channels/{channel_id}在获取子频道列表的数据包后数据包内包含了频道的 channel_id
功能描述 用于删除 channel_id 指定的子频道。
要求操作人具有管理子频道的权限如果是机器人则需要将机器人设置为管理员。修改成功后会触发子频道删除事件。 注意 公域机器人暂不支持申请仅私域机器人可用选择私域机器人后默认开通。 注意: 开通后需要先将机器人从频道移除然后重新添加方可生效。 Content-Type
application/json返回 成功返回 HTTP 状态码 200。
错误码 详见错误码。
Python示例
import requestschannel_id xxx
url fhttps://api.sgroup.qq.com/channels/{channel_id}
Authorization fQQBot xxxherders {Content-Type: application/json,Authorization: Authorization}response requests.delete(url, headersherders, jsondata).json()
print(response)注意 子频道的删除是无法撤回的一旦删除将无法恢复。
致谢和更新
文章持续更新如果三连支持速更 请在评论区提出疑惑和建议 上次更新: 9/8/2024, PM
关于频道和子频道事件它们基于websocket方法。因为目前在讲openapi方法调用QQ频道机器人所以暂时跳过这部分当然放心啦三连我速更肯定会讲啦。 文章内容都是连续的如果你在本文没有找到解决办法不如前往其他几期寻找答案吧
⬅️QQ频道机器人零基础开发详解(基于QQ官方机器人文档)[第一期]
➡️QQ频道机器人零基础开发详解(基于QQ官方机器人文档)[第三期]