广告助手插件
这是一个为 AstrBot 开发的插件,用于向 QQ 群定时发送广告消息。
功能特性
- 存储多个广告内容
- 设置定时发送时间点
- 群组广播控制(可选择哪些群接收广告)
- 随机发送广告内容
安装方法
进入 AstrBot 的插件目录:
cd AstrBot/data/plugins克隆此插件仓库:
git clone <插件仓库地址>重启 AstrBot 或在 WebUI 中重新加载插件
使用说明
广告内容管理
添加广告内容
/添加广告
发送该指令后,30秒内发送要添加的广告内容(支持文字、图片等),系统会自动保存。
查看广告列表
/广告列表
查看所有已保存的广告内容及其ID。
查看指定广告
/查看广告 <ID>
根据ID查看指定的广告内容,会显示广告的详细信息和内容预览。
删除广告内容
/删除广告 <ID>
根据ID删除指定的广告内容。
定时发送设置
设置定时发送时间
/定时广告 09:00,14:30,20:00
设置在每天的指定时间点发送广告,多个时间点用逗号分隔。
查看定时发送时间
/定时广告
不带参数时,显示当前设置的定时发送时间点。
停止定时发送
/停止广告
停止定时广告发送任务。
群组广告控制
开启广播
/开启广告
允许当前群组接收广告消息。
关闭广告
/关闭广告
禁止当前群组接收广告消息。
查看广告列表
/广告群列表
查看所有群组的广告状态。
配置说明
插件配置存储在 AstrBot 的配置文件中,包含以下配置项:
disable_gids: 关闭广告的群聊ID列表
数据存储
广告内容存储在 data/furry_dsgg_ads.json 文件中,包含以下信息:
id: 广告IDcontent: 广告内容(消息链格式)created_at: 广告创建时间
注意事项
- 只有管理员可以管理广告内容和设置定时任务
- 定时任务精确到分钟级别
- 发送广告时会随机选择一条广告内容
- 为避免被举报,建议合理设置发送频率
更新内容
v1.0.3
- 更新日志器获取方式,使用
from astrbot.api import logger替代旧方式 - 使用
StarTools.get_data_dir()获取数据持久化目录,符合 AstrBot 框架规范 - 优化数据文件路径处理,提高插件在不同环境下的兼容性
v1.0.2
- 新增
/查看广告 <ID>指令,可以预览指定ID的广告内容 - 优化广告发送机制,添加了更完善的错误处理和异常提示
- 改进内容预览功能,支持显示广告内容的摘要信息
- 增强定时任务的稳定性,添加任务取消和重启机制
- 修复了一些潜在的bug,提高插件整体稳定性
v1.0.1
- 实现基础广告管理功能(添加、删除、列表展示)
- 实现定时广告发送功能
- 实现群组广播控制功能
- 添加数据持久化存储机制
插件部分代码采用broadcast插件的