使用酷Q SDK开发QQ机器人
酷Q SDK下载地址:https://github.com/CoolQ/cqsdk-vc
打开工程,编辑appmain.cpp
将“私聊消息”处的代码
更改为
CQEVENT(int32_t, __eventPrivateMsg, )(int32_t subType, int32_t msgId, int64_t fromQQ, const char *msg, int32_t font) {
CString caption;
caption.Format(TEXT("QQ: %lld"), fromQQ);
MessageBox(nullptr, CString(msg), caption, MB_ICONINFORMATION);
//如果要回复消息,请调用酷Q方法发送,并且这里 return EVENT_BLOCK - 截断本条消息,不再继续处理 注意:应用优先级设置为"最高"(10000)时,不得使用本返回值
//如果不回复消息,交由之后的应用/过滤器处理,这里 return EVENT_IGNORE - 忽略本条消息
return EVENT_IGNORE;
}
这样就能在接收到私聊消息时弹出消息框。fromQQ是消息发送者的QQ号,msg是接收到的消息
将“群消息”处的代码
更改为
CQEVENT(int32_t, __eventGroupMsg, )(int32_t subType, int32_t msgId, int64_t fromGroup, int64_t fromQQ, const char *fromAnonymous, const char *msg, int32_t font) {
CQ_sendGroupMsg(ac, fromGroup, "自动回复的消息^_^");
return EVENT_IGNORE; //关于返回值说明, 见“_eventPrivateMsg”函数
}
这样就能在接收到群消息时自动回复。ac是AuthCode,fromGroup是群消息的来源群号
与CQ_sendGroupMsg类似的还有CQ_sendPrivateMsg(发送私聊消息)、CQ_sendDiscussMsg(发送讨论组消息)等
接下来,进入工程属性->C/C++->代码生成
将运行库更改为多线程调试
将工程属性->C/C++->预编译头->预编译头更改为不使用预编译头
构建工程,将文件cqsdk-vc-master\Release\com.example.democ.dll和cqsdk-vc-master\CQPdemo\com.example.democ.json
复制到酷Q Air\app目录中(我用的版本是酷Q Air 图灵版,https://cqp.cc/t/23253)
启动酷Q(建议用小号登录,因为酷Q会把手机QQ挤下线),打开应用管理后会发现列表里没有我们的应用
不要紧,打开酷Q Air\conf\CQP.cfg,在末尾添加
[Debug]
DeveloperMode=1
保存,重启酷Q后,在列表里就能看到我们的应用了
选中我们的应用,然后点击启用
一切就绪。接下来,当酷Q接收到私聊消息和群消息时,分别会弹出消息框和自动回复
参考博文:VC++开发酷Q插件随笔、【酷Q&C++】如何利用酷Q制作一个机器人?
使用酷Q SDK开发QQ机器人的更多相关文章
- NoneBot+酷Q,打造QQ机器人
NoneBot 是一个基于 酷Q 的 Python 异步 QQ 机器人框架,它会对 QQ 机器人收到的消息进行解析和处理,并以插件化的形式,分发给消息所对应的命令处理器和自然语言处理器,来完成具体的功 ...
- 基于酷Q的工作秘书机器人
代码地址如下:http://www.demodashi.com/demo/14617.html 环境准备 名称 版本 Jdk 8 groovy 2.4.12 gradle 4.6 酷Q 5.12.3A ...
- Python+mirai开发QQ机器人起步教程(2021.9.9测试有效)
参考:开发 mirai QQ机器人起步教程_叹之-CSDN博客_mirai python 本篇文章参考了以上博客,并对其中的失效内容和版本匹配问题进行了补充修改,实测能够成功运行.部分步骤的运行截图见 ...
- 【酷Q插件制作】教大家做一个简单的签到插件
酷Q插件已经有很多了,社区分享一大堆,不过还是自己写才有乐趣,哈哈.不得不吐槽一下,酷Q竟然不更新了,出了个酷Q pro,还收费!!诶.不过这也影响不了咱写插件的心情,今天教大家写一个酷Q签到插件,虽 ...
- 酷Q机器人,QQ机器人使用教程
软件介绍: 酷Q,软件酷Q机器人是一款基于webqq开发的一款自动接收.处理qq消息的软件. 改程序使用易语言编写,精简大量不必要代码,减小了软件体积,优化程序速度,使得酷Q更加轻巧好用. 在消息处理 ...
- Mirai qq机器人 c++版sdk(即用c++写mirai)
Mirai机器人c++版 前言 类似教程 本文git,gitee地址 c++开发mirai 原理 大概流程 实现 如何使用 注意事项 常见错误 前言 改分支版本以及过时,暂时不再维护 请看最新版kot ...
- 体验 QQ机器人C# SDK 1.X 特性总结
主要特性 依赖注入 框架本身采用 Autofac 作为依赖注入框架.进行插件开发时,必然会使用到该框架.建议开发者阅读官方文档熟悉其用法.https://autofac.readthedocs.io/ ...
- 【酷Q&C++】如何利用酷Q制作一个机器人?
——酷Q Air教程 要想阅读本篇教程,读者需要基本的C++知识以及Visual Studio 2010/2015/2017 首先,需要从官方网站下载软件 https://cqp.cc/t/23253 ...
- QQ机器人
先说下整体思路1.首先要借助一个QQ 插件,用来接收消息 发送消息2.要用个QQ 小号,这个QQ 你不能用来登,因为他相当于那个机器人3.要借助大神开发的SDK ,就是别人写的底层交互 ,我们只需要关 ...
随机推荐
- hdu 4937 2014 Multi-University Training Contest 7 1003
Lucky Number Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) T ...
- js 时间戳与yyyy-mm-dd或yyyy-MM-dd HH-mm-ss互相转换
首先是获取当前系统时间转换为时间戳 var timestamp = Date.parse(new Date());//获取当前时间 timestamp = timestamp / 1000; 然后是时 ...
- 微信小程序 赋值问题
通常我们在页面跳转传递过来的参数要用到页面渲染时或是请求接口回来的数据要用到页面渲染时 对page的data赋值可不能用简单的变量赋值,要用微信小微信专有的this.setData方法 Page({ ...
- Codeforces Gym101502 F.Building Numbers-前缀和
F. Building Numbers time limit per test 3.0 s memory limit per test 256 MB input standard input ou ...
- Swoole RPC 的实现
目录 概述 实现效果 代码 小结 概述 这是关于 Swoole 学习的第七篇文章:Swoole RPC 的实现. 第六篇:Swoole 整合成一个小框架 第五篇:Swoole 多协议 多端口 的应用 ...
- GRDB使用SQLite的WAL模式
GRDB使用SQLite的WAL模式 WAL全称是Write Ahead Logging,它是SQLite中实现原子事务的一种机制.该模式是从SQLite 3.7.0版本引入的.再此之前,SQLi ...
- python3:requests模块-写了一点
使用requests,它的七个主要方法,在这里只讲两个:get.post >>> import requests >>> r=requests.get(" ...
- spring事物,在service层如果进行了异常处理,则不会回滚
今天进行了事物处理的验证,发现如果在在service层如果进行了异常处理,则不会回滚. 看来异常的处理还是统一放在controller层比较好,service如果是查询方法,出现了异常,就不要做处理了 ...
- (BruteForce)暴力破解经典题目总结
在算法竞赛中,很多问题是来不及用数学公式推导出来的.或者说根本就找不到数学规律,这时我们就需要使用枚举来暴力破解. 不过枚举也是需要脑子的,一味的暴力只能超时.因此我这里选择了几道mooc上经典的题目 ...
- error错误信息状态码含义
XMLHttpRequest.status: 200:成功. 401:拒绝访问. 403:禁止访问. 404:找不到. 405:方法不被允许. 407:要求进行代理身份验证. 500:内部服务器错误. ...