nonebot2 plugin for group administration
Project description
权限说明:见下方指令↓
安装💿(pip)
pip install nonebot-plugin-admin
导入📲
在bot.py 导入,语句:
nonebot.load_plugin("nonebot_plugin_admin")
请注意与nonebot版本适配,匹配请查看:更新 Python 3.9+
安装💿(nb plugin)
nb plugin install nonebot-plugin-admin
更新
pip install --upgrade nonebot-plugin-admin
配置
鉴黄配置:
腾讯云图片安全,开通地址:https://console.cloud.tencent.com/cms
文档:https://cloud.tencent.com/document/product/1125
需要使用此功能时在 .env.*
文件中加入以下内容,并且设置你自己的 api id
与 api key
【不需要此功能可以不配置】:
# 腾讯云图片安全api
tenid="xxxxxx"
tenkeys="xxxxxx"
# 是否开启禁言等操作的成功提示【不开启的话踢人/禁言等成功没有QQ消息提示】
callback_notice=true # 如果不想开启设置成 false 或者不添加此配置项【默认关闭】
早晚安配置
额外依赖pip install nonebot_plugin_apscheduler 定时推送群消息需要在.evn中配置:
send_group_id = ["xxx","xxx"] # 必填 群号
send_switch_morning = False # 选填 True/False 默认开启 早上消息推送是否开启
send_switch_night = False # 选填 True/False 默认开启 晚上消息推送是否开启
send_mode = 1 # 选填 默认模式2 模式1发送自定义句子,模式2随机调用一句
send_sentence_moring = ["句子1","句子2","..."] # 如果是模式1 此项必填,早上随机发送该字段中的一句
send_sentence_night = ["句子1","句子2","..."] # 如果是模式1 此项必填,晚上随机发送该字段中的一句
send_time_moring = "8 0" # 选填 早上发送时间默认为7:00
send_time_night = "23 0" # 选填 晚上发送时间默认为22:00
更多配置项请查看 config.py
✨Pay tribute to A60 https://github.com/djkcyl/ABot-Graia
注意
由于API的加入,首次使用本插件时,会终止机器人程序,需要再启动一次
控制台会有对应提示
指令💻
Tips:
- 关于命令,对/sp这类
斜杠+英文
的命令做了保留,汉字命令去除了/
若使用者担心错误触发,可下载源码自行修改__init__.py
- 群词云功能所用库 wordcloud 未写入依赖,请自行安装:
pip install wordcloud
安装失败参考:WordCloud 第三方库安装失败原因及解决方法 - 一般情况下可正常使用,可能由于权重出现问题,matcher权重请自行查看代码
- 使用
开关状态
指令查看各功能状态,首次使用可能会下载100Mb+的Chromium
,请耐心等待
【初始化】:
群管初始化 :初始化插件
【群管】:
权限:permission=SUPERUSER | GROUP_ADMIN | GROUP_OWNER
禁言:
禁 @某人 时间(s)[1,2591999]
禁 时间(s)@某人 [1,2591999]
禁 @某人 缺省时间则随机
禁 @某人 0 可解禁
解 @某人
禁言时,该条消息中所有数字都会组合作为禁言时间,如:‘禁@某人 1哈2哈0哈’,则禁言120s
全群禁言 若命令前缀不为空,请使用//all,若为空,需用 /all 来触发
/all
/all 解
改名片
改 @某人 名片
踢出:
踢 @某人
踢出并拉黑:
黑 @某人
撤回:
撤回 (回复某条消息即可撤回对应消息)
撤回 @user [(可选,默认n=5)历史消息倍数n] (实际检查的历史数为 n*19)
【头衔】
改头衔
自助领取:头衔 xxx
自助删头衔:删头衔
超级用户更改他人头衔:头衔 @某人 头衔
超级用户删他人头衔:删头衔 @某人
【管理员】permission=SUPERUSER | GROUP_OWNER
管理员+ @xxx 设置某人为管理员
管理员- @xxx 取消某人管理员
【加群自动审批】:
群内发送 permission=GROUP_ADMIN | GROUP_OWNER | SUPERUSER
查看词条 : 查看本群审批词条 或/审批
词条+ [词条] :增加审批词条 或/审批+
词条- [词条] :删除审批词条 或/审批-
【superuser】:
所有词条 : 查看所有审批词条 或/su审批
指定词条+ [群号] [词条] :增加指定群审批词条 或/su审批+
指定词条- [群号] [词条] :删除指定群审批词条 或/su审批-
自动审批处理结果将发送给superuser
【分群管理员设置】*分管:可以接受加群处理结果消息的用户
群内发送 permission=GROUP_ADMIN | GROUP_OWNER | SUPERUSER
分管+ [user] :user可用@或qq 添加分群管理员
分管- [user] :删除分群管理员
查看分管 :查看本群分群管理员
群内或私聊 permission=SUPERUSER
所有分管 :查看所有分群管理员
群管接收 :打开或关闭超管消息接收(关闭则审批结果不会发送给superusers)
【群词云统计】
该功能所用库 wordcloud 未写入依赖,请自行安装
群内发送:
记录本群 : 开始统计聊天记录 permission=GROUP_ADMIN | GROUP_OWNER | SUPERUSER
停止记录本群 :停止统计聊天记录
群词云 : 发送词云图片
更新mask : 更新mask图片
增加停用词 停用词1 停用词2 ...
删除停用词 停用词1 停用词2 ...
停用词列表 : 查看停用词列表
群发言排行
- 日:
- 日榜首:今日榜首, aliases={'今天谁话多', '今儿谁话多', '今天谁屁话最多'}
- 日排行:今日发言排行, aliases={'今日排行榜', '今日发言排行榜', '今日排行'}
- 昨日排行
- 总
- 总排行:排行, aliases={'谁话多', '谁屁话最多', '排行', '排行榜'}
- 某人发言数
- 日:今日发言数@xxx, aliases={'今日发言数', '今日发言', '今日发言量'}
- 总:发言数@xxx, aliases={'发言数', '发言', '发言量'}
【被动识别】
涩图检测:
- 图片检测偏向于涩图检测,90分以上色图禁言,其他基本不处理
- 用户违禁一次等级+1 最高7级
- 禁言时间(s):
- time_scop_map = {
0: [0, 5*60],
1: [5*60, 10*60],
2: [10*60, 30*60],
3: [30*60, 10*60*60],
4: [10*60*60, 24*60*60],
5: [24*60*60, 7*24*60*60],
6: [7*24*60*60, 14*24*60*60],
7: [14*24*60*60, 2591999]
}
违禁词检测:
- 支持正则表达式(使用用制表符分隔)
- 可定义触发违禁词操作(默认为禁言+撤回)
- 可定义生效范围(排除某些群 or 仅限某些群生效)
- 示例:
- 加(群|君\S?羊|羣)\S*\d{6,} $撤回$禁言$仅限123456789,987654321
- 狗群主 $禁言$排除987654321
【功能开关】
群内发送:
开关xx : 对某功能进行开/关 permission=SUPERUSER | GROUP_ADMIN | GROUP_OWNER
开关状态 : 查看各功能的状态
xx in :
['管理', '踢', '禁', '改', '基础群管'] #基础功能 踢、禁、改、管理员+-
['加群', '审批', '加群审批', '自动审批'] #加群审批
['词云', '群词云', 'wordcloud'] #群词云
['违禁词', '违禁词检测'] #违禁词检测
['图片检测', '图片鉴黄', '涩图检测', '色图检测'] #图片检测
图片检测和违禁词检测默认关,其他默认开
截图🖼
禁 改 踢
管理员+ -
群词云
违禁词检测
图片检测
功能开关
TODO
- 加群自动审批#issues1
- /sp在未配置群聊中的提示
- /删头衔bug修复
- 加群处理状态分群分用户发送#issues2
- 关键词禁言,图片鉴黄(简单实现),#issues3
- 恶意检测, #issues3
-
鉴黄置信度呈现 - 头衔命令所有人可用,删头衔命令加权限
- 修复加群审批默认处理规则
- 词云停用词优化
- 分群群词云自定义停用词
- 违禁词优化
- 全局开关
- 潜水查询
- 群聊内容分析
- 写一个文档
- 一些大事
更新日志
-
0.3.21
- 优化默认配置;同时增加一个配置项:设置禁言等基础操作是否在 qq 返回操作结果 #18
- 修复
禁@xxx
的buggi
-
0.3.19
-
修复触发违禁词不会阻止事件传播的问题@lakwsh
-
修复可能会导致其他插件无法捕获消息的问题@lakwsh
-
修复部分文件编码错误,开关状态图片乱码及SIGINT信号被劫持的问题@lakwsh
-
0.3.18(beta)
- update LICENSE to AGPL-3.0
- 🐛修复
管理员-
无效的bug - 🐛修复
简单违禁词
、严格违禁词
无效的bug - 🐛修复
禁 解 改
等指令有无空格的问题 - 禁言命令新增不禁言superuser
- 鉴黄api改为腾讯云,请自行开通配置
- 违禁词词库每周一自动更新,手动更新:
更新违禁词库
- 分群功能开关
- 使用
开关状态
指令查看各功能状态,首次使用可能会下载109Mb的Chromium
-
0.3.16(b1)
- 修复启动时
word_analyze
报错 - 修复词云路径错误
- 分词优化
- 图片鉴黄
- 违禁词检测 违禁词词库整理上传于:f_words
- 词库有赘余,欢迎大神pr精简
- 修复启动时
-
0.3.15(a16)
- 同 0.3.16
-
0.3.6(b1)
- 修复适配错误
- 补充依赖
-
0.3.5(a16)
- 补充依赖(谁教教我项目管理..
-
0.3.4 (b1)
-
0.3.3(a16)
- 修复导入错误
- 修复路径错误
-
0.2.8 (nonebot b1适配)
- b1适配,功能同0.2.7
-
0.2.7 (nonebot a16适配)
- 对应adapter加入依赖
- 优化代码结构
- 增加群词云功能
- 更新后请执行
群管初始化
(不影响已保存的配置) - 机器人提示
成功
后开始记录本群所有文本内容 - 发送
群词云
使用此功能
- 更新后请执行
- 修复
禁@xxx 60
这类命令失效的bug
-
0.2.6 (nonebot a16适配)
-
0.2.5 (nonebot b1适配)
- 代码优化
- 踢禁改等命令增加权限:机器人主人,群主,群管理员
permission=SUPERUSER|GROUP_ADMIN | GROUP_OWNER
- 增加添加/删除管理员操作,命令:
管理员+@xxx
管理员-@xxx
- 修复
禁言多人而不带具体时间时只禁言第一位
的bug🐛
-
0.2.4 (nonebot b1适配)
- 同0.2.3
-
0.2.3 (nonebot a16适配)
- 代码优化
- 命令去除
/
- 摒弃英文命令,改为汉字命令
-
0.2.2 (适配 nonebot b1) issue#2
-
更新后请初始化:
/spinit
-
修复未配置时
/sp
,命令出现错误 -
修复
/删头衔
的bug -
增加分群管理,加群请求处理结果将发送给分群管理
-
加群处理结果消息对 superuser 可开启或关闭:
/sumsg
-
-
0.2.1
- 修复requiers
-
0.1.9
- 修复初始化功能
-
0.1.0 issue#1
-
支持入群自动审批
-
支持在线对不同群的关键词进行增减操作
-
0.0.1-4
- 支持 踢 、禁 、改 、头衔
其他插件
简易群管
在线运行代码
it咨讯(垃圾插件)
工作性价比(还没更新beta不能用)
黑丝插件(jsdelivr问题国内服务器不能用)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file nonebot-plugin-admin-0.4.0.tar.gz
.
File metadata
- Download URL: nonebot-plugin-admin-0.4.0.tar.gz
- Upload date:
- Size: 48.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | adba91b6062acf679ef7de127239e9cf6d157b52ff87e9ee26435a2e97945f7b |
|
MD5 | be6cfb55006628d03046102b38e7029c |
|
BLAKE2b-256 | 7ac5cf927dc8d9538365363238f557753b0574ba2c5785384c502c4a33991e15 |
File details
Details for the file nonebot_plugin_admin-0.4.0-py3-none-any.whl
.
File metadata
- Download URL: nonebot_plugin_admin-0.4.0-py3-none-any.whl
- Upload date:
- Size: 53.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.15
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b494a605f2006cb753e97923f22913b29fe3744a746b7a8e7ecb0ee5bdf0d04c |
|
MD5 | e4ddfe998dc9060bd2e72ea804fe013d |
|
BLAKE2b-256 | ac02808cb1090e80a93b220f6c7df16f59ce1650bcd7031155159569065a66e9 |