feat: 支持忽略指定格式的消息 (#165)

This commit is contained in:
Rock Chin
2023-02-23 10:02:55 +08:00
parent 215ed7ab0e
commit 352930694a
3 changed files with 36 additions and 0 deletions
+19
View File
@@ -0,0 +1,19 @@
import re
def ignore(msg: str) -> bool:
"""检查消息是否应该被忽略"""
import config
if not hasattr(config, 'ignore_rules'):
return False
if 'prefix' in config.ignore_rules:
for rule in config.ignore_rules['prefix']:
if msg.startswith(rule):
return True
if 'regexp' in config.ignore_rules:
for rule in config.ignore_rules['regexp']:
if re.search(rule, msg):
return True
+5
View File
@@ -22,6 +22,7 @@ import pkg.qqbot.command
import pkg.plugin.host as plugin_host
import pkg.plugin.models as plugin_models
import pkg.qqbot.ignore as ignore
processing = []
@@ -44,6 +45,10 @@ def process_message(launcher_type: str, launcher_id: int, text_message: str, mes
logging.info("根据禁用列表忽略群{}的消息".format(launcher_id))
return []
if ignore.ignore(text_message):
logging.info("根据忽略规则忽略消息: {}".format(text_message))
return []
# 检查是否被禁言
if launcher_type == 'group':
result = mgr.bot.member_info(target=launcher_id, member_id=mgr.bot.qq).get()