这是一个为AstrBot设计的课程表插件,它可以帮助群组成员方便地管理和查询自己以及群友的课程安排。
- 多种绑定方式:支持通过发送
.ics
日历文件或 WakeUp课程表 分享口令,将个人课表与QQ号绑定。 - 今日课程查询:快速查看今天还有哪些课程,并以精美的图片形式展示。
- 群友课程总览:一条指令查看群里所有已绑定用户的课程状态(进行中 / 下一节),方便约饭、约游戏。
- 本周上课排行:查看本周群友上课时长和节数的排行榜。
- 智能状态显示:自动判断课程是“进行中”还是“下一节”,并计算剩余/等待时间。
- 高度定制化:
- 支持显示用户昵称,而非QQ号。
- 为个人课表、群友课表和排行榜提供三种不同的、精心设计的渲染样式。
- 自动处理时区,确保时间准确。
- 支持自定义字体:只需将你喜欢的
.ttf
或.otf
字体文件放入插件目录,即可自动应用。
命令 | 功能描述 |
---|---|
/绑定课表 |
在群聊中发送此命令,然后根据提示发送你的 .ics 文件或 WakeUp 分享口令来绑定课表。 |
/查看课表 |
显示你自己今天接下来要上的课程。 |
/群友在上什么课 |
显示群里所有成员当前正在上或下一节要上的课程。 |
/本周上课排行 |
显示本周群友上课时长和节数的排行榜。 |
- .ics 文件:将你的课表导入课表软件(如 Wakeup课程表 或类似应用),然后从软件的设置中选择“导出”,并导出为日历文件(通常文件后缀为
.ics
),即可获得所需文件。 - WakeUp 口令:在 WakeUp课程表 应用中,选择“分享课表”,然后选择“分享给好友”,复制生成的口令即可。
群友课表样式 (/群友在上什么课
)
个人课表样式 (/查看课表
)
排行榜样式 (/本周上课排行
)
main.py
: 插件主逻辑文件。ics_parser.py
: 负责解析.ics
文件和 WakeUp 口令。image_generator.py
: 负责生成课程表和排行榜图片。data_manager.py
: 负责数据管理。constants.py
: 存放插件常量。metadata.yaml
: 插件元数据。requirements.txt
: Python 依赖。README.md
: 你正在阅读的这个文件。
欢迎提交 Pull Request 或 Issue 来改进这个插件!