2024 年最新使用 Node 搭建QQ开放平台官方 QQ 频道机器人详细教程(更新中)

注册 QQ 开放平台账号

QQ 开放平台是腾讯应用综合开放类平台,包含 QQ 机器人、QQ 小程序、QQ 小游戏 等集成化管理,也就是说你注册了QQ 开放平台,你开发 QQ 机器人还是 QQ 小程序都是在这个平台进行部署上线和管理。

在这里插入图片描述
如何注册 QQ 开放平台账号?点击首页右上角【立即注册】

注意主体的选择,当然无论是企业还是个人,都是可以开发 QQ 小程序 或者 QQ 机器人 的,但是如果您是个人主体的话,那么你的权限将有所局限,因为部分服务权限是需要企业主体的。

企业主体入驻开发者默认支持频道、群场景开发能力;个人主体入驻开发者默认仅支持频道场景开发能力。除默认开通的能力外,后续其他接口能力申请上,企业开发者与个人开发者也存在差异。

在这里插入图片描述

温馨提示:姓名和身份证号码务必与手机号码对应运营商实名登记的信息一致,否则会提示错误。

创建 QQ 机器人

注册完成后登陆开放平台!在机器人分栏点击【创建机器人】
在这里插入图片描述
填写 QQ 机器人资料信息(名称、头像、介绍)

在这里插入图片描述
QQ 机器人管理端后台

QQ频道机器人是一种对QQ频道进行功能扩展的程序,通过开放的接口,让开发者能够实现开发出交互形式丰富的机器人,以辅助实现频道/社群内的管理、消息互动,满足频道主或群主运营者多样化、个性化的运营需求,从而提高运营效率,同时为用户带来丰富的服务和便捷的体验。

资料提交成功后,即会生成 appid,点击对应的应用即可跳转管理端。

在这里插入图片描述
机器人类型 和 测试频道 / 群 配置

机器人类型 包含 私域机器人或者 公域机器人。当然公域机器人对于服务器的要求过高,我们这边也可以选择私域机器人进行开发。特别注意在选择沙箱测试频道的时候,你必须提前创建个沙箱测试频道,必须<20人的频道。但是选择沙箱测试 QQ 群则需要您是企业资质。

沙箱频道仅可设置当前用户为频道主/管理员的频道、沙箱群仅可设置当前用户为群主/群管理员的群,且沙箱频道成员、沙箱群成员不可大于20人。

在这里插入图片描述

在沙箱配置页面不同类型开发者支持开发不同场景机器人功能

建议开发者根据实际的需要,选择在不同场景开发机器人,完成对应场景的沙箱环境配置。配置沙箱后,开发者可在「功能配置」、「使用范围与人员」页面解锁相应场景的配置能力。

认证身份QQ频道QQ群消息列表单聊
企业开发者申请后可开发
个人开发者暂不开放暂不开放

配置沙箱 QQ 群 / 频道,需要先在QQ客户端创建符合沙箱要求的QQ群/QQ频道。在频道场景,机器人仍然保留「公域」/「私域」机器人的区分,设置为公域机器人保存确认后不可切换为私域机器人,但在「使用范围与人员」可设置公域机器人的允许添加范围:“全部用户可添加”/“仅白名单用户可添加”。配置沙箱频道/群后,机器人会出现在沙箱频道/沙箱群的机器人列表当中。

搭建 qq-guild-bot 环境

国内安装 qq-guild-bot 使用腾讯源

npm i qq-guild-bot --registry=https://mirrors.tencent.com/npm/

配置 .env 文件:机器人信息

appId=申请机器人时获取到的机器人 BotAppID
token=申请机器人时获取到的机器人 BotToken

启动案例

const { createOpenAPI, createWebsocket } = require('qq-guild-bot');

const testConfig = {
	appID: process.env.appId,
	token: process.env.token,
	intents: ['PUBLIC_GUILD_MESSAGES'],
	sandbox: false,
};

const client = createOpenAPI(testConfig);

const ws = createWebsocket(testConfig);

配置属性说明

属性说明案例值
appID申请机器人时获取到的机器人 BotAppIDprocess.env.appId
token申请机器人时获取到的机器人 BotTokenprocess.env.token
intents事件订阅,用于开启可接收的消息类型[‘PUBLIC_GUILD_MESSAGES’]
sandbox沙箱支持,可选,默认 false(v2.7.0+及以后版本)false

请注意 process.env.appIdprocess.env.token是环境变量中存储的实际值,它们通常用于保护敏感信息,例如 API 密钥或令牌。在真实的应用程序中,您不会直接在代码中硬编码这些值,而是使用环境变量或配置文件来安全地存储和访问它们。

intents 可选值举例:

['GUILDS', 'GUILD_MEMBERS', 'GUILD_MESSAGES','GUILD_MESSAGE_REACTIONS','DIRECT_MESSAGE', 'INTERACTION','MESSAGE_AUDIT','FORUMS_EVENT','AUDIO_ACTION', 'PUBLIC_GUILD_MESSAGES']

频道 API 官方文档

QQ机器人文档:https://bot.q.qq.com/wiki/develop/api-v2/

在这里插入图片描述

频道消息事件

{
	eventType: 'AT_MESSAGE_CREATE',
	eventId: 'AT_MESSAGE_CREATE:9cf66025-fd89-4474-8cff-5b653f13b793',
	msg: {
		author: {
			avatar: 'https://qqchannel-profile-1251316161.file.myqcloud.com/1690525084d31f5da18614da93?t=1690525084',
			bot: false,
			id: '3099335931735309862',
			username: '唤醒手腕'
		},
		channel_id: '633953187',
		content: '<@!4609307794105190966> 测试',
		guild_id: '11682521373910822180',
		id: '08a4daf3e6afe9a990a20110a3b7a5ae02381a48e5add3b006',
		member: {
			seq_in_channel: '26',
			timestamp: '2024-04-09T13:49:25+08:00'
		}
	}
}

回复事件

{
	eventType: 'READY',
	msg: {
		version: 1,
		session_id: 'fb73286a-fa79-4b52-a68b-193e3380e022',
		user: {
			id: '4609307794105190966',
			username: '边缘骇客机器人-测试中',
			bot: true,
			status: 1
		},
		shard: [0, 1]
	}
	member: {
		joined_at: '2023-11-09T22:46:01+08:00',
		nick: '唤醒手腕',
		roles: [Array]
	},
	mentions: [
		[Object]
	],
	seq: 24,
	seq_in_channel: '24',
	timestamp: '2024-04-09T13:45:49+08:00'
}

待更新······

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Internet Download Manager ( 极速下载器 ) 序列号注册码 IDM下载器注册机中文激活破解版

IDM下载器(Internet Download Manager)是一款专业的下载管理软件&#xff0c;它通过多线程技术和智能文件分段技术&#xff0c;有效提升下载速度&#xff0c;并支持断点续传&#xff0c;还具有计划下载功能&#xff0c;用户可以设置特定的下载时间&#xff0c;非常适合需要在特…

C#批量设置海康和大华录像机NVR,GB28181的通道编码.

我经常要把小区海康或者大华的硬盘录像机推送到自己搭建的gb28181监控平台,每次几百个摄像头编码,有点头大,就用了1个多周写了个批量设置海康和大华硬盘录像机的通道编码的程序,海康和大华的SDK简直不是人看的. 太乱了. 大华读取通道编码的代码 /// <summary>/// 获取通道…

虚拟机上安装centos7

目录 1&#xff0c;下载centos镜像2&#xff0c;在VMware中新建虚拟机3&#xff0c;为新创建的虚拟机挂载镜像4&#xff0c;安装centos75&#xff0c;配置网络 1&#xff0c;下载centos镜像 直接下载地址 https://mirrors.tuna.tsinghua.edu.cn/centos-vault/7.8.2003/isos/x8…

干部选拔任用的六条原则

在干部选拔任用的过程中&#xff0c;为确保选拔出的干部能够真正符合党和人民的期望&#xff0c;必须遵循以下六条原则&#xff1a; 一、党管干部原则 党管干部原则是指在整个干部选拔任用过程中&#xff0c;党要发挥总揽全局、协调各方的领导作用&#xff0c;确保选拔出的干…

[渗透测试学习] Runner-HackTheBox

Runner-HackTheBox 信息搜集 nmap扫描端口 nmap -sV -v 10.10.11.13扫描结果如下 PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 8.9p1 Ubuntu 3ubuntu0.6 (Ubuntu Linux; protocol 2.0) 80/tcp open http nginx 1.18.0 (Ubuntu) 8000…

Echarts图表:地图都有哪些配置项,一文告诉你

地图是可视化大屏中最常见的组件&#xff0c;echart图表中关于地图的组件非常多&#xff0c;那么该如何进行配置&#xff0c;让地图和自己的设计稿保持一致。贝格前端工场为大家列举一下。 charts地图图表在配置项中有以下常用的配置选项&#xff1a; title&#xff1a;图表标…

TCP协议报头详解

目录 前言 TCP特点 TCP报头 1.源端口和目的端口 2.序号 3.确认号 4.数据偏移 5.保留 6.控制位 ① 紧急URG&#xff08;URGent&#xff09; ② 确认ACK&#xff08;ACKnowledgment&#xff09; ③ 推送PSH&#xff08;PuSH&#xff09; ④复位RST&#xff08;ReSeT&…

【二】【动态规划NEW】91. 解码方法,62. 不同路径,63. 不同路径 II

91. 解码方法 一条包含字母 A-Z 的消息通过以下映射进行了 编码 &#xff1a; ‘A’ -> “1” ‘B’ -> “2” … ‘Z’ -> “26” 要 解码 已编码的消息&#xff0c;所有数字必须基于上述映射的方法&#xff0c;反向映射回字母&#xff08;可能有多种方法&#xff…

AI Vs 作家?Groqbook: AI写书神器,使用 Groq 和 Llama3 几秒生成一本完整的书籍!

✨点击这里✨&#xff1a;&#x1f680;原文链接&#xff1a;&#xff08;更好排版、视频播放、社群交流、最新AI开源项目、AI工具分享都在这个公众号&#xff01;&#xff09; AI Vs 作家&#xff1f;Groqbook: AI写书神器&#xff0c;使用 Groq 和 Llama3 几秒生成一本完整的…

awtk如何实现键盘和输入框

1.创建默认键盘 新建窗体-keyboard 2.新建编辑框 3.设置编辑框属性 4.点击编辑框即可打开默认键盘&#xff0c;若想修改键盘样式可以在默认键盘修改或自定义键盘 5.获取输入字符 widget_t* wifi_edit widget_lookup(win, "edit", TRUE);//获取单行编辑控件 widge…

python简单练习案例-石头剪刀布小游戏

&#x1f308;所属专栏&#xff1a;【python】 ✨作者主页&#xff1a; Mr.Zwq ✔️个人简介&#xff1a;一个正在努力学技术的Python领域创作者&#xff0c;擅长爬虫&#xff0c;逆向&#xff0c;全栈方向&#xff0c;专注基础和实战分享&#xff0c;欢迎咨询&#xff01;…

在 Windows 环境下安装mysql步骤(MySQL)

文章目录 一、下载 MySQL二、解压安装包到磁盘三、配置环境&#xff08;管理员权限&#xff09;四、安装 MySQL&#xff08;管理员权限&#xff09; 一、下载 MySQL 如下图&#xff1a;为你的电脑下载对应操作系统的 MySQL 安装包 二、解压安装包到磁盘 三、配置环境&#x…

sprintboot容器功能

容器 容器功能Spring注入组件的注解Component&#xff0c;Controller&#xff0c;Service&#xff0c;Repository案例演示 Configuration应用实例传统方式使用Configuration 注意事项和细节 Import应用实例 ConditionalConditional介绍应用实例 ImportResource应用实例 配置绑定…

金融科技:推动保险行业数字化转型的引擎

随着科技的飞速发展&#xff0c;金融科技&#xff08;FinTech&#xff09;已经成为推动金融行业变革的重要力量。特别是在保险行业&#xff0c;金融科技正引领着一场深刻的数字化转型&#xff0c;为保险公司带来了前所未有的机遇与挑战。本文将探讨金融科技如何推动保险行业的数…

redis设计与实现(五)RDB与AOF持久化

RDB持久化 因为Redis是内存数据库&#xff0c;它将自己的数据库状态储存在内存里面&#xff0c;所以如果不想办法将储存在内存中的数据库状态保存到磁盘里面&#xff0c;那么一旦服务器进程退出&#xff0c;服务器中的数据库状态也会消失不见。 为了解决这个问题&#xff0c;…

Go TOKEN机制与跨域处理方式

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

java学习 项目篇 一

学习地址&#xff1a;https://www.bilibili.com/video/BV1TP411v7v6?p6&spm_id_frompageDriver&vd_sourcea6f7db332f104aff6fadf5b3542e5875 后端环境搭建 Entity 实体&#xff0c;通常和数据库的表对应DTO 数据传输对象&#xff0c;用于程序中各层之间传递数据 (前端…

Windows安装配置CUDA12.5

搞大模型往往都需要GPU加速&#xff0c;本次在家里的PC上安装CUDA来实现GPU加速。 一、环境准备 操作系统&#xff1a;Windows11 23H2 GPU&#xff1a;RTX 4070 Ti Super 显卡驱动&#xff1a;555.99 &#xff08;NVIDIA GeForce 驱动程序 - N 卡驱动 | NVIDIA&#xff09; …

LaDM3IL:多实例学习用于免疫库分类

一个人的免疫组库由某一时间点的大量适应性免疫受体组成&#xff0c;代表了该个体的适应性免疫状态。免疫组库分类和相关受体识别有可能为新型疫苗的开发做出贡献。大量的实例对免疫组库分类提出了挑战&#xff0c;这可以表述为大规模多实例学习 (MMIL&#xff0c;Massive Mult…

C#——只读属性readonly

只读属性readonly 类的字段可以通过一个readonly(只读)表示这个为只读字段&#xff0c;不能被构造函数之外地方进行修改&#xff0c;静态只读字段不能在非静态的构造函数中使用 定义 只读属性的特点&#xff1a; 字段是只读的非静态 只能在非静态方法中进行修改 字段是只读的…