一个可低延迟检测 B 站动态/直播并转发到 Q 群的 Mirai 插件
Stars
Downloads
Release
无论多少订阅均可在最低 10s 内检测所有动态
使用 skiko 绘图
动态过滤
扫码登录
可配置性高
v3需 >= mirai 2.12.0
v3完全重构, 使用 skiko 绘图, 更加美观。同时增加稳定性与可配置性
v2版本
建了个QQ群,有问题可即时反馈 734922374
V3样式预览demo1.png
demo2.png
demo3.png
前置插件: mirai-skia-plugin
插件命令依赖: chat-command
插件本体: releases
MCL 指令安装 (与上面二选一)中央仓库会延迟几个小时
./mcl --update-package top.colter:bilibili-dynamic-mirai-plugin --channel maven --type plugin
常用指令帮助图
可通过 /bili help 指令获取
如果你对这张图有什么建议也可以反馈
<img src="docs/img/help.png" width="500" alt="帮助">
推荐使用 config 指令配置 模板 过滤器
扫码登录请在配置文件中填写管理员账号
<..> 尖括号为必填参数 [..] 中括号为可选参数
[群/Q号] 不填的话默认对话所在地
<HEX颜色> 必须带#号 支持多个值自定义渐变 中间用分号‘;’分隔 例: #fde8ed;#fde8ed
单个值会自动生成渐变色
uid / 用户名 使用名称可以本地模糊匹配(只有订阅过才能匹配)
推荐使用 /bili config 交互式配置
两种过滤器:
类型过滤器: 通过动态类型进行过滤 可选类型 动态 转发动态 视频 音乐 专栏 直播 内容正则过滤器: 对动态进行正则匹配过滤可同时添加两种过滤器,但两种过滤器是独立先后执行的
过滤器的两种模式:
黑名单:当动态匹配过滤器时不推送动态 白名单:仅当动态匹配过滤器时推送动态过滤器模式黑名单模式
指令 描述 /bili <filterType / ft / 类型过滤> <类型> [uid] [群/Q号] 为目标 [群/Q号] 添加 uid 的动态类型过滤器 /bili <filterReg / fr / 正则过滤> <正则表达式> [uid] [群/Q号] 为目标 [群/Q号] 添加 uid 的动态正则过滤器 /bili <filterMode / fm / 过滤模式> <过滤器类型> <过滤器模式> [uid] [群/Q号] 切换过滤器模式 <br/>过滤器类型: t(类型过滤器) r(正则过滤器) <br/>过滤器模式: w(白名单模式) b(黑名单模式) /bili <filterList / fl / 过滤列表> [uid] [群/Q号] 列出 uid 的过滤器列表 /bili <filterDel / fd / 过滤删除> <index> [uid] [群/Q号] 删除 uid 中 index 的过滤器 # 栗子 /bili ft 转发动态 487550002 # 为当前群/好友订阅的 487550002 设置类型为“转发动态”的过滤 # 当 487550002 用户动态类型为“转发动态”时触发过滤器(是否推送要看过滤器模式) /bili fr ^新年好 0 111111 # 为 111111 群/好友订阅的所有用户设置内容为“^新年好”的包含 # 当 111111 群/好友订阅的所有用户的动态内容开头包含“新年好”时触发过滤器(是否推送要看过滤器模式) /bili fl 487550002 # 查询当前群/好友订阅的 487550002 设置过的过滤列表 # 当前目标过滤器: # # 动态类型过滤器: # 模式: 黑名单 # t0: 转发动态 # t1: 视频 # 正则过滤器: # 模式: 黑名单 # r0: 转发抽奖 # # t0 t1 r0 等为删除的索引<index> /bili fd t1 487550002 # 删除上面t1的过滤 # 特例 # uid 为 0 时,代表群/好友订阅的所有用户 # 不填默认也为 0 权限插件命令依赖 chat-command 来正确处理聊天环境下的命令,请确保有此插件,否则插件可能无法正常工作
权限名 ID 基础权限ID top.colter.bilibili-dynamic-mirai-plugin:* 动态指令ID top.colter.bilibili-dynamic-mirai-plugin:command.bili 跨通讯录控制 top.colter.bilibili-dynamic-mirai-plugin:crossContact跨通讯录控制可以让你修改查看别人的配置
如果你不会给权限可以点击下面展开查看简略教程
...在控制台输入 /perm add <许可人 ID> top.colter.bilibili-dynamic-mirai-plugin:command.bili
其中的 许可人 ID 如果你要让所有群所有人都可以用此插件就是 * 即 /perm add * top.colter.bilibili-dynamic-mirai-plugin:command.bili
具体的用户: u123456789 全部用户: u*
具体的群: g123456789 全部群: g*
更多的配置见 被许可人 ID 字符串表示
At全体权限3.0.0-BETA4 后废弃
废弃后仍可使用, 但不推荐, 推荐使用前面的指令进行配置
配置文件位于 mirai 根目录/config/top.colter.bilibili-dynamic-mirai-plugin/
基础配置文件 BiliConfig.yml
图片分辨率配置 ImageQuality.yml
图片主题配置 ImageTheme.yml
分辨率与主题配置已经内置了多套数据
{draw}: 绘制的动态图
{name}: 名称
{uid}: 用户ID
{did}: 动态ID
{type}: 动态类型
{time}: 时间
{content}: 动态内容
{images}: 动态中的图
{link}: 动态链接
{links}: 视频专栏等有多个链接
\n: 换行
\r: 分割对话(会生成多个QQ消息)
{>>} {<<}: 包装成转发消息
栗子: {draw}{>>}作者:{name}\nUID:{uid}\n时间:{time}\n类型:{type}\n链接:{link}\r{content}\r{images}{<<}
直播模板配置项{draw}: 绘制的直播图
{name}: 名称
{uid}: 用户ID
{rid}: 房间号
{time}: 直播开始时间
{title}: 直播标题
{area}: 直播分区
{cover}: 直播封面
{link}: 直播链接
\n: 换行
\r: 分割对话(会生成多个QQ消息)
注: 直播模板不支持 ({>>}{<<}) 转发消息
转发卡片配置项{name}: 名称
{uid}: 用户ID
{did}: 动态ID
{type}: 动态类型
{time}: 时间
{content}: 动态内容
{link}: 链接
{name}: 名称
{uid}: 用户ID
{id}: 动态/直播ID
{type}: 类型
{time}: 时间
因此,本插件需要一个 B 站账号来订阅用户。
强烈推荐使用小号 如果让bot用你经常使用的账号可能会出现长期多次异地访问造成风控 无法添加关注
(插件有扫码登陆和自动关注自动添加分组功能,详细见下文)
如果账号没有关注过此人,bot 会自动关注并把他分到一个新分组中,方便管理
是否开启自动关注以及新分组的名称都可以在配置文件中进行配置
如果关闭自动关注,那么在 QQ 中订阅一个未关注的人时会提示 未关注
开启自动关注后,bot 会生成一个新分组(分组名可以在配置中设置),由 bot 新关注的人会被分到这个分组内,之前就关注过的不会移动
如果你想让 bot 关注就保存在默认分组中,请在配置中替换 followGroup 后面的值为两个引号 ""
选择下载 52.2MB 的字体压缩包文件, 请使用压缩包内 HarmonyOS_Sans_SC 目录下的字体, 此目录下的字体为简体中文
里面不同文件代表不同的粗细, 建议使用 Medium
推荐使用 /bili login 指令进行登录
通过开发者工具获取建议开启浏览器无痕模式
浏览器打开 BiliBili 并登陆
注:登陆后不要点退出登陆
按F12,打开开发者工具,找到Network / 网络并点击
按F5刷新页面,按下图复制 Cookie
<img src="docs/img/cookie.png" width="500">
把复制的 cookie 粘贴到配置文件中对应的位置, 并使用双引号包裹
通过 EditThisCookie 获取 在浏览器中安装 EditThisCookie 插件 在b站打开EditThisCookie面板, 点击刷新按钮, 再点击导出按钮 在插件数据路径 data/top.colter.bilibili-dynamic-mirai-plugin 下新建 cookies.json 文件 把第二步中复制的数据粘贴到文件中 图片缓存所有的图片都会缓存在 data/top.colter.bilibili-dynamic-mirai-plugin/cache 下
更新日志 相关链接Mirai
ViViD按钮
B站: 猫芒ベル_Official 这么可爱不关注一下吗(❁´◡`❁)
B站: Colter_null 如果 GitHub 或论坛太长时间没回复可以去 B 站私信
cssxsh: bilibili-helper
Twitter Emoji: Twemoji