聊天屏蔽词插件是所有adapter的通用的插件,可以对用户发送的词进行检测然后进行自定义操作,例如屏蔽词中加入一些辱骂词汇,检测到辱骂词汇时进行撤回或者禁言等操作,也可以对机器人发送的进行检测,如果存在屏蔽词进行拦截发送或者替换屏蔽词。
-
配置
env中的blockwords配置项例如blockwords=["鸡", "垃圾", "废物"]
-
通过导入文件的方式可以配置
env中的blockwords_fileblockwords_file="blockwords.txt"
-
多文件导入方式
blockwords_file=["blockwords1.txt", "blockwords2.txt"]
在env中配置blockwords_bot开启bot发送消息检测
blockwords_bot = True # 开启后机器人发送的消息会被进行检测上述例子中,因为检测到机器人发送的消息存在屏蔽词,插件会拦截机器人发送的消息,如果不希望进行拦截,可以查看如何将机器人发送的屏蔽词进行替换
在env中配置blockwords_replace配置项,以下是blockwords_replace配置项使用例子。
BLOCKWORDS_REPLACE="*" # 将屏蔽词替换为*在env中配置blockwords_user开启接收用户所发送的消息进行检测
blockwords_user = True # 开启后机器人发送的消息会被进行检测在检测到屏蔽词时会触发到blockwords_matcher,可以导入blockwords_matcher对触发屏蔽词后进行自定义操作
from nonebot.internal.matcher import Matcher
from nonebot_plugin_blockwords import blockwords_matcher
@blockwords_matcher.handle()
async def _(matcher: Matcher):
await matcher.finish("不许说脏话")

