Keyword 插件使用教程 - 进阶篇

Keyword 插件使用教程 - 进阶篇

𝚠𝚑𝚒𝚕𝚎(𝟷) (𝚒𝚗𝚝*)𝚖𝚊𝚕𝚕𝚘𝚌(𝟼𝟻𝟻𝟹𝟼); | Memory Leak

一、回复限制 ( -replyset )

1. 黑名单、白名单 ( -replyset mode )

黑名单 : 不回复在列表中的用户。

白名单 : 仅回复在列表中的用户。

设置为黑名单 :

-replyset mode 0 ( 注意,这里是数字零而不是英文字母 o,仅仅因为显示问题 )

设置为白名单 :

-replyset mode 1

清除黑白名单设置 : -replyset mode clear

2. 列表 ( -replyset list )

添加用户 : -replyset list add 100000000 ( 将用户 id 为 100000000 的用户添加进列表 )

删除用户 : -replyset list del 100000000 ( 将用户 id 为 100000000 的用户从列表移除 )

显示列表 : -replyset list show ( 显示已有用户列表 )

清空列表 : -replyset list clear ( 清空用户列表 )

3. 频率限制 ( -replyset freq )

限制 : 最短回复间隔 ( 秒 )

设置限制 : -replyset freq 7.5 ( 设置最短回复间隔为 7.5 秒 )

清除限制 : -replyset freq clear ( 清除设置的频率限制,使用默认值 )

4. 文件缓存 ( -replyset cache )

功能 : 当设置打开后,自动缓存规则中的文件和图片,下次发送时不用再次下载。

打开缓存 : -replyset cache 1

关闭缓存 : -replyset cache 0 ( 注意,这里是数字零而不是英文字母 o,仅仅因为显示问题 )

清除缓存 : -replyset cache remove

删除缓存设置 : -replyset cache clear

可以使用全局设置和单独设置,具体参考第 7 和第 8 条 : 全局设置、单独设置。

5. 自我触发 ( -replyset trig )

功能 : 当此设置开启后,自己发送的消息也将会触发规则,同样可以使用全局设置和单独设置。

开启关闭和缓存设置一样,清除为 -replyset trig clear。

6. 显示设置 ( -replyset show )

显示所有设置,包括黑白名单,列表和频率限制。

7. 清除设置 ( -replyset clear )

清除所有设置,慎用。

8. 全局设置 ( global )

在 -replyset 后面加上 global,如 -replyset global list add 1234。

9. 单独设置 ( plain / regex )

在 -replyset 后面加上 plain 或者 regex 加上对应规则编号 ( -keyword list 查看 ) ,

如 -replyset plain 1 list add 1234。

二、规则进阶 ( -keyword )

看这里之前请务必了解 入门篇 中的所有内容。

1. 回复信息 ( reply_to )

-keyword new regex '^/prpr$' 'reply::NM$L'

效果图

2. 正则捕获组 ( ${regex_<捕获组名称>} )

-keyword new regex '(?P<text>[\S\s]+)' 'reply::${regex_text}' ( 复读机,${regex_text} 中的 text 为捕获组名称 )

效果图

3. 回复文件或图片 ( file, photo, tgfile, tgphoto )

本机文件 : -keyword new plain 'file' 'file::file_name file:///home/ubuntu/testfile' ( 发送 /home/ubuntu/testfile,送出的文件名为 file_name )

网络图片 : -keyword new plain 'photo' 'photo::photo.png https://test.test/test.png' ( 以 file_name 发送此网络文件,文件名处必须以图片的后缀结尾 )

TG 中的文件和图片同理,将文件链接替换成包含文件的消息链接即可。

效果图

4. 外部回复 ( ext_<chat_id> )

-keyword new plain 'test' 'ext_100000000,plain::message' ( 在聊天中匹配到 test 后给 user_id 为 100000000 的用户发送 message )

5. 删除信息 ( op::delete )

-keyword new plain 'test' 'op::delete' ( 如果消息含有 test 就删除 )

6. 睡眠时间 ( op::sleep <time> )

-keyword new plain 'test' 'op::sleep 1' ( 如果消息含有 test 就休息 1 秒 )

7. 删除自己的信息 ( op::delself <int> )

用法 : op::delself 回复序号 ( 本条规则中的回复中的序号,序号从 0 开始 )

-keyword new plain 'test' 'reply1||reply2||op::sleep 5||op::delself 1' ( 检测到发送 test 后发送 reply1 和 reply2,发送五秒后删除 reply2 )

8. 属性混用 ( 逗号分隔 )

eg : -keyword new plain 'test' 'ext_100000000,file::file_name file:///home/ubuntu/testfile' ( 如果检测到文本中有 test,给 user_id 为 100000000 的用户发送 /home/ubuntu/testfile,文件名为 file_name )

9. 多个回复 ( || 分隔 )

eg : -keyword new plain 'cnm' 'reply::warn||op::sleep 2||op::delete' ( 检测到消息中含有 cnm 后,回复发送 warn,2 秒后删除含有 cnm 的消息 )

Report Page