QQ频道机器人零基础开发详解(基于QQ官方机器人文档)[第三期]

QQ频道机器人零基础开发详解(基于QQ官方机器人文档)[第三期]

第三期介绍:频道模块之频道成员

目录

  • QQ频道机器人零基础开发详解(基于QQ官方机器人文档)[第三期]
    • 第三期介绍:频道模块之频道成员
      • 获取子频道在线成员数
      • 获取频道成员列表
      • 获取频道身份组成员列表
      • 获取频道成员详情
      • 删除频道成员
      • 致谢和更新


不懂得的也可以来私聊或评论区问哦~
在这里插入图片描述
原力到一千才可以推广,三连啊喂!!!


在这里插入图片描述

获取子频道在线成员数

接口
GET /channels/{channel_id}/online_nums

功能描述
此接口用于查询音视频/直播子频道channel_id的在线成员数。

Content-Type
application/json

返回
成功时返回空对象,包含在线成员数:

{"online_nums": 1
}

错误码
具体错误码信息请参考错误码。

Python示例

import requestsurl = f"https://api.sgroup.qq.com/channels/{channel_id}/online_nums"
Authorization = f"QQBot {你的鉴权,不懂得看前面文章}"herders = {"Content-Type": "application/json","Authorization": Authorization}response = requests.get(url, headers=herders).json()print(response)

运行成功如下,因为我没有音频子频道,所以是如下输出:

{'code': 505007, 'message': 'requested channel is not audio or live channel'}

在这里插入图片描述

获取频道成员列表

接口
GET /guilds/{guild_id}/members

功能描述
用于获取指定guild_id的频道中所有成员的详情列表,支持分页。

注意事项

  • 公域机器人暂不支持申请,仅私域机器人可用。
  • 开通后需要先将机器人从频道移除,然后重新添加,方可生效。

Content-Type
application/json

参数

字段名类型描述
afterstring上一次回包中最后一个 memberuser id,如果是第一次请求填 0,默认为 0
limituint32分页大小,1-400,默认是 1。成员较多的频道尽量使用较大的 limit 值,以减少请求数

返回
返回Member对象数组。

返回结果说明

  1. 在每次翻页的过程中,可能会返回上一次请求已经返回过的member信息,需要调用方自己根据user id来进行去重。
  2. 每次返回的member数量与limit不一定完全相等。翻页请使用最后一个memberuser id作为下一次请求的after参数,直到回包为空,拉取结束。

错误码
具体错误码信息请参考错误码。

Python示例

import requestsurl = f"https://api.sgroup.qq.com/guilds/{guild_id}/members?limit=2"
Authorization = f"QQBot {你的鉴权}"herders = {"Content-Type": "application/json","Authorization": Authorization}response = requests.get(url, headers=herders).json()print(response)

运行结果如下:

# 运行出来的是一行的,不好展示,使用官方回复样式,实际获取数据和这个大差不差
[{"user": {"id": "xxxxxx","username": "xxxx","avatar": "xxxxxx","bot": false,"public_flags": 0,"system": false,"union_openid": "xxxxxx","union_user_account": ""},"nick": "","roles": ["1"],"joined_at": "2021-12-09T15:53:41+08:00","deaf": false,"mute": false,"pending": false},{"user": {"id": "xxxxxx","username": "秦时明月","avatar": "xxxxxx","bot": false,"public_flags": 0,"system": false,"union_openid": "xxxxxx","union_user_account": ""},"nick": "","roles": ["4"],"joined_at": "2021-12-02T15:19:00+08:00","deaf": false,"mute": false,"pending": false}
]

在这里插入图片描述

获取频道身份组成员列表

接口
GET /guilds/{guild_id}/roles/{role_id}/members

功能描述
用于获取 guild_id 频道中指定 role_id 身份组下所有成员的详情列表,支持分页。

注意

  • 公域机器人暂不支持申请,仅私域机器人可用,选择私域机器人后默认开通。
  • 开通后需要先将机器人从频道移除,然后重新添加,方可生效。

参数

字段名类型描述
start_indexstring将上一次回包中 next 填入,如果是第一次请求填 0,默认为 0
limituint32分页大小,1-400,默认是 1。成员较多的频道尽量使用较大的 limit 值,以减少请求数

返回

字段名类型描述
dataMember 对象数组一组用户信息对象
nextstring下一次请求的分页标识

有关返回结果的说明
每次返回的 member 数量与 limit 不一定完全相等。特定管理身份组下的成员可能存在一次性返回全部的情况。

错误码
详见错误码。

Python示例

import requestsurl = f"https://api.sgroup.qq.com/guilds/{guild_id}/roles/{role_id}/members?limit=2"
Authorization = f"QQBot {你的鉴权}"herders = {"Content-Type": "application/json","Authorization": Authorization}response = requests.get(url, headers=herders).json()print(response)

运行结果如下:

{"data": [{"user": {"id": "xxx","username": "xxx","avatar": "xxx","bot": false},"nick": "xxx","joined_at": "2021-11-03T20:41:36+08:00"}],"next": "0"
}

在这里插入图片描述

获取频道成员详情

接口
GET /guilds/{guild_id}/members/{user_id}

功能描述
用于获取 guild_id 指定的频道中 user_id 对应成员的详细信息。

Content-Type
application/json

返回
返回 Member 成员对象。

错误码
详见错误码。

Python示例

import requestsurl = f"https://api.sgroup.qq.com/guilds/{guild_id}/members/{user_id}"
Authorization = f"QQBot {你的鉴权}"herders = {"Content-Type": "application/json","Authorization": Authorization}response = requests.get(url, headers=herders).json()print(response)

运行结果如下:

{"user": {"id": "2823701233424295228","username": "xxx","avatar": "https://qqchannel-profile-1251316161.file.myqcloud.com/xxxxxxx","bot": false,"union_openid": "","union_user_account": ""},"nick": "","roles": ["1"],"joined_at": "2021-12-05T14:08:29+08:00"
}

在这里插入图片描述

删除频道成员

接口
DELETE /guilds/{guild_id}/members/{user_id}

功能描述
用于删除 guild_id 指定的频道下的成员 user_id

  1. 需要使用的 token 对应的用户具备踢人权限。如果是机器人,要求被添加为管理员。(读者需要知道的是,在我们提交的鉴权里,除了机器人的,也可以提交管理员的鉴权,当你提交的是机器人的鉴权,那么将是机器人执行,如果你提交的是操作者的鉴权,那么将是操作者执行,这在第一期提过一点)
  2. 操作成功后,会触发 频道成员删除事件
  3. 无法移除身份为管理员的成员

注意

  • 公域机器人暂不支持申请,仅私域机器人可用,选择私域机器人后默认开通。
  • 注意: 开通后需要先将机器人从频道移除,然后重新添加,方可生效。

Content-Type
application/json

参数

字段名类型描述
add_blacklistbool删除成员的同时,将该用户添加到频道黑名单中
delete_history_msg_daysint删除成员的同时,撤回该成员的消息,可以指定撤回消息的时间范围

:消息撤回时间范围仅支持固定的天数: 371530。 特殊的时间范围: -1: 撤回全部消息。默认值为 0 不撤回任何消息。

返回
成功返回 HTTP 状态码 204

错误码
详见错误码。

Python示例

import requestsurl = f"https://api.sgroup.qq.com/guilds/{guild_id}/members/{user_id}"
Authorization = f"QQBot {你的鉴权}"data = {{"add_blacklist": True,# 删除成员的同时,将该用户添加到频道黑名单中"delete_history_msg_days": -1# -1: 撤回全部消息
}
}
herders = {"Content-Type": "application/json","Authorization": Authorization}response = requests.delete(url, headers=herders).json()print(response)

我懒得删除自己的用户,这里返回就不展示了,官方也没有给示例,成功了就是返回状态码。
在这里插入图片描述

致谢和更新

文章持续更新,如果三连支持,速更!!!
请在评论区提出疑惑和建议
上次更新: 9/10/2024, PM

👻关于频道成员事件和音视频/直播子频道成员进出事件 ,它们基于websocket方法。因为目前在讲openapi方法调用QQ频道机器人,所以暂时跳过这部分,当然放心啦,三连我速更,肯定会讲啦。


在这里插入图片描述
⬅️第二期:频道模块之频道管理
➡️第四期:频道模块之频道身份组与权限管理

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/879409.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java项目: 基于SpringBoot+mybatis+maven课程答疑系统(含源码+数据库+毕业论文)

一、项目简介 本项目是一套基于SpringBootmybatismaven课程答疑系统 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试,eclipse或者idea 确保可以运行! 该系统功能完善、界面美观、操作简单、…

102.WEB渗透测试-信息收集-FOFA语法(2)

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于: 易锦网校会员专享课 上一个内容:101.WEB渗透测试-信息收集-FOFA语法(1) FOFA使用实例 • title&q…

资深盘点:国内外知名的ERP管理系统厂商有哪些?

已经考虑引入ERP系统却担心面临以下问题?ERP系统流程僵化难以调整?流程与实际业务脱节?培训不到位、技术支持不及时导致难以实现全员使用、共创?市面上的ERP系统众多不知道如何选择? 今天就根据2024最新市场动态&…

ISAC: Toward Dual-Functional Wireless Networks for 6G and Beyond【论文阅读笔记】

此系列是本人阅读论文过程中的简单笔记,比较随意且具有严重的偏向性(偏向自己研究方向和感兴趣的),随缘分享,共同进步~ Integrated Sensing and Communications: Toward Dual-Functional Wireless Networks for 6G and…

react crash course 2024 (1)理论概念

state的作用 react hooks 而无需写一个class jsx 样式用 spa

决策树算法上篇

决策树概述 决策树是属于有监督机器学习的一种,起源非常早,符合直觉并且非常直观,模仿人类做决策的过程,早期人工智能模型中有很多应用,现在更多的是使用基于决策树的一些集成学习的算法。 示例一: 上表根据…

怎样在备忘录中添加提醒?怎么设置备忘录提醒

备忘录作为我们日常生活中常用的软件,其记录事项的便捷性已经得到了广泛认可。无论是工作计划、购物清单还是个人日记,备忘录都能帮助我们将这些信息快速记录下来。然而,如果备忘录能够进一步提供提醒功能,那么它将变得更加实用&a…

Facebook的虚拟现实功能简介:社交网络的新前沿

在科技飞速发展的今天,虚拟现实(VR)已经从科幻小说中的梦想变成了触手可及的现实。作为全球领先的社交平台,Facebook(现已更名为Meta)正大力推动虚拟现实技术的发展,以重新定义用户的社交体验。…

C++ | Leetcode C++题解之第394题字符串解码

题目&#xff1a; 题解&#xff1a; class Solution { public:string src; size_t ptr;int getDigits() {int ret 0;while (ptr < src.size() && isdigit(src[ptr])) {ret ret * 10 src[ptr] - 0;}return ret;}string getString() {if (ptr src.size() || src[…

Nacos下载和启动

Nacos是什么&#xff1f; 一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台 下载 https://github.com/alibaba/nacos/releases/tag/2.1.1启动 将下载好的Nacos解压缩&#xff0c;然后到bin目录下打开cmd 输入指令&#xff1a;startup.cmd -m standalone 出…

工业大模型市场图谱:53个工业大模型全面梳理

工业场景要求严谨、容错率低&#xff0c;核心业务场景对模型准确率的要求达到95%以上、对幻觉的容忍率为0&#xff0c;因此通用基础大模型的工业知识往往不足以满足工业场景的应用需求。 根据沙丘智库发布的《2024年中国工业大模型应用跟踪报告》&#xff0c;工业大模型是指在…

supabase链接vecs文档

使用Supabase链接本地数据库 Vecs 如何使用本地数据库工作。确保机器上安装了Supabase CLI。 # Initialize your project supabase init# Start Postgres supabase startSupabase vecs同步数据 vecs官方文档 创建集合 import vecs #下面这一行是本地的postgre数据库连接 #…

Nginx快速使用

如果本系列文章对您有帮助&#xff0c;可以 star 一下我的 limou-learn-note&#xff0c;求求惹(๑&#xff1e; &#xff1c;)☆♡~ 叠甲&#xff1a;以下文章主要是依靠我的实际编码学习中总结出来的经验之谈&#xff0c;求逻辑自洽&#xff0c;不能百分百保证正确&#xff…

37拼购:电商新风尚,共享双赢的购物革命

随着2024年电商市场的日益繁荣&#xff0c;商品海洋中的同质化问题愈发严峻&#xff0c;消费者在茫茫商海中寻觅独特价值的难度陡增。在此背景下&#xff0c;一种名为“37悦享拼”的创新电商模式横空出世&#xff0c;它巧妙融合了私域社交与电商精髓&#xff0c;旨在打破传统壁…

YOLOv8+Deepsort+PyQt+GUI 语义分割+目标检测+姿态识别 三者合一(集成于一套系统)综合视觉分析系统

综合视觉分析系统 技术栈&#xff1a; YOLOv8&#xff1a;用于目标检测&#xff0c;是一个快速且准确的目标检测框架。DeepSORT&#xff1a;用于目标跟踪&#xff0c;结合了深度学习特征提取和卡尔曼滤波器来预测目标轨迹。GUI&#xff1a;提供一个直观易用的图形用户界面&am…

随着Batch size增加,最佳learning rate如何选择?

最近读到《Surge Phenomenon in Optimal Learning Rate and Batch Size Scaling》这篇论文&#xff0c;里面通过实验和理论证明了learning rate和batch size之间的关系&#xff0c;觉得很有意思&#xff0c;就简答写个blog记录下。 1. 简介 在影响模型训练效果的所有参数中&a…

顶刊算法 | 鹈鹕算法POA-Transformer-LSTM多变量回归预测

顶刊算法 | 鹈鹕算法POA-Transformer-LSTM多变量回归预测 目录 顶刊算法 | 鹈鹕算法POA-Transformer-LSTM多变量回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现顶刊算法 | 鹈鹕算法POA-Transformer-LSTM多变量回归预测&#xff08;程序可以作为JCR…

录屏工具 win10:优化你的Windows 10屏幕录制体验,高清好用录屏软件推荐

在数字时代&#xff0c;屏幕录制已成为日常工作和娱乐中不可或缺的一部分。无论是制作教程、录制游戏高光时刻&#xff0c;还是进行远程协作&#xff0c;一个好的录屏工具都是你成功的关键。Windows 10作为全球广泛使用的操作系统&#xff0c;其自带的录屏工具已经为许多用户所…

【Go】Go语言介绍与开发环境搭建

✨✨ 欢迎大家来到景天科技苑✨✨ &#x1f388;&#x1f388; 养成好习惯&#xff0c;先赞后看哦~&#x1f388;&#x1f388; &#x1f3c6; 作者简介&#xff1a;景天科技苑 &#x1f3c6;《头衔》&#xff1a;大厂架构师&#xff0c;华为云开发者社区专家博主&#xff0c;…

大语言模型之ICL(上下文学习) - In-Context Learning Creates Task Vectors

本文译自 《In-Context Learning Creates Task Vectors》 —— 论文中的作者也在用LLaMA模型&#xff0c;笔者自我感觉拉近和世界顶级人才的距离&#xff0c;哈哈内容较长&#xff0c;如想看结论直接看 摘要、介绍与结论几个章节即可&#xff0c;看细节请看目录索引。经验风险最…