- QQ机器人、QQ消息匹配规则模板
- 开发QQ机器人,方便生成一套对应的消息匹配规则,自动回应消息
messageMaps
消息匹配文件,example.js 是模板文件,大家可以参考对应里面的规则开发自己的机器人config.js
项目配置文件,主要用来配置登录的QQ账号,默认是密码 + 手机验证码登录,请在文件配置正确的账号密码index.js
项目主文件,主要是消息匹配规则的遍历匹配messageMap.js
消息匹配规则的统一导入uitils/TimeEventManger.js
此文件是开发 群消息备忘录功能 单独加上的,与项目无关
主要是对 github.com/takayama-lily/oicq 的二次开发,感谢此作者提供的SDK
-
$ git clone https://github.com/GitHub-ZC/QQRobot.git
-
$ cd QQRobot $ npm i
-
$ #请在项目主目录中执行下面语句 $ node index.js
说明
: 请在项目启动前 在 config.js 中配置 QQ账号 和 QQ密码 ,登录的时候,可能会需要输入手机验证码 ,在命令行输入验证码之后按回车就行,登录一次成功之后,会生成身份令牌文件,后续登录就不需要再输入验证码,默认生成在主目录的 data 目录中,并且支持拷贝 data 目录
每个消息匹配文件请以 好友QQ号码 或者 群聊ID 为文件命名
示例:群号为 : 123456789
文件需要命名为 : 123456789.js
/**
* 此文件为模板文件
* 1. 可以定义多条消息匹配规则, 一个对象对应一个规则
* 2. 具体属性规则可以看下面对应的注释
* 3. 需要自定义功能的可以在 functions 属性中,编写自己的函数,在Reply中返回
*/
module.exports = [
{
// 消息类型 group(群聊) private(私聊)
message_type: 'private',
// 匹配规则 填写正则表达式 为空代表匹配所有消息
MatchRule: ``,
// true表示引用对方的消息 false表示引用对方的消息 只在群聊中 有效果
Is_AITE_Reply: true,
// 回复的消息内容 Reply为一个函数 如何需要 使用 functions 中的函数 请使用 function 写法
// Reply: function () {
// // 调用自定义函数
// this.functions.函数();
// return "回复的消息内容"
// },
// 如果只需要返回消息 使用箭头函数就可以
// Reply: () => "<<特定规则>> 回复内容",
Reply: () => "回复的消息内容,请在此更改内容",
// 自定义函数
functions: {
}
},
{
// 消息类型 group(群聊) private(私聊)
message_type: 'private',
// 匹配规则 填写正则表达式 为空代表匹配所有消息
MatchRule: `特定规则`,
// true表示引用对方的消息 false表示引用对方的消息 只在群聊中 有效果
Is_AITE_Reply: true,
// 回复的消息内容 Reply为一个函数 如何需要 使用 functions 中的函数 请使用 function 写法
// Reply: function () {
// // 调用自定义函数
// this.functions.函数();
// return "回复的消息内容"
// },
// 如果只需要返回消息 使用箭头函数就可以
// Reply: () => "<<特定规则>> 回复内容",
Reply: () => "<<特定规则>> 回复内容",
// 自定义函数
functions: {
}
},
]
主要实现的功能是 对群成员 输入的时间时间消息进行提取 会在特定的时间提醒你
会自动匹配一下格式的消息:
不支持 两点 这种写法
2022年10月15日 下午 二点五十一 需要提醒的事件
二零二二年十月十五日 下午 二点五十一 需要提醒的事件
今天下午三点一十五 需要提醒的事件
明天晚上9点一十五 需要提醒的事件
后天上午三点 需要提醒的事件
后天 早上三点 需要提醒的事件
后天上午3.15 需要提醒的事件
10月31 下午 二点一十 需要提醒的事件
10月31号 下午 二点一十 需要提醒的事件
10月31日 二点一十 需要提醒的事件
输入 查询所有:会查询当前用户所有的时间事件,会对时间序列进行编排序号
输入 删除备忘录 1 :会删除序号为 1 的时间事件
输入 删除所有备忘录: 会清空所有备忘录事件