Skip to content

3.3.1.8

Latest

Choose a tag to compare

@github-actions github-actions released this 25 Oct 11:50
· 12 commits to main since this release

RemoteCI 3.3.1.8

本次更新新增远程屏幕截图,以服务端“调课记录”重建临时换课,完善换课申请,并支持每周重复的个人课程与学期设置。以下内容相对于 3.3.1.7。

屏幕截图(新)

  • 在班级“控制”页一键查看教室电脑当前屏幕(全部显示器),可下载原图并查看最近截图;系统管理员可在“设备状态”页按设备截图。
  • 新增“屏幕截图”权限:班主任默认拥有(升级时自动补上),老师需管理员开启;截图保留 24 小时、每班最多 30 张,并写入操作记录。
  • 系统设置可开启“截图后在教室端提示”,默认静默。
  • Android“课堂控制 → 屏幕截图”支持双指缩放与保存到相册;AstrBot 支持 /rci 截图 <班级> 与自然语言,图片直接发到聊天;新增 REST 接口 POST /api/classes/{id}/screenshot。

调课记录与临时换课

  • 临时换课改为服务端“调课记录”统一管理,教室端插件按“基础课表 + 调课 + 调休”生成并维护当天的临时层;WebUI、手机、手表与 ClassIsland 看到同一份生效课表。
  • 在 ClassIsland 里直接修改临时层的换课会同步回服务端;基础课表变化、放假或插件过旧导致无法套用时,调课标记为失效并通知相关老师。
  • 新增永久换课:写入 ClassIsland 源课表,本周及以后每周生效。
  • 调休适配改为基于托管临时层,放假日关闭课表、调休上学日自动开课更稳定;升级时自动把已有的换课回填为调课记录。
  • 新增调课记录查询与删除接口(GET /api/classes/{id}/schedule-adjustments、DELETE /api/schedule-adjustments/{id})。

换课申请

  • 任课冲突提示:换课后同一老师同一时间要在两个班上课时提示确认,确认后仍可提交或通过;新增预检接口 POST /api/swap-requests/preview。
  • 班主任和系统管理员可撤回已通过或已强制的换课,课表恢复原状并通知双方老师。
  • 新增“已失效”状态:同一节课已有换课生效时,其余待审批申请自动失效;换课后的单节临时任课老师会显示在各端课表与“我的日程”中。
  • 强制换课被对方查看后不再计入待处理角标;AstrBot 支持冲突确认(/rci 换课 确认通过)与撤回(/rci 换课 撤回换课)。

我的日程与学期

  • 个人自定义课程支持按星期重复,可设单双周或三/四周轮换;原有课程保留为单次课程。
  • 系统管理员可设置学期开始日期,统一教学周与单双周,并可同步到教室端 ClassIsland 的单周起始日期(新增 schedule.semester 能力)。
  • Android、手表与 WebUI 新增星期、时间与轮换编辑器;AstrBot 可用自然语言创建每周课程。

界面

  • Android 底部导航改为 今天 / 课表 / 控制 / 我的,换课申请收进课表分段;手机 WebUI 同步新增课表分段。
  • 网页侧边栏按 日常 / 我的 / 本班 / 记录与统计 / 设备与控制 / 教务 分组并可折叠;“班级档案”改名“本班档案”,“档案管理”改名“档案库”。
  • 系统设置拆为 常规与维护 / 登录与访问 / 插件与课表同步 三个标签页,插件凭据与自动拉取间隔移到新页面。
  • 默认主题改为动态取色。

升级说明

  • 软件版本为 3.3.1.8,通信协议仍为 V3。调课记录、屏幕截图与学期同步需要同时更新服务端和 ClassIsland 插件;旧插件不会收到调课集合,尚未送达的调课会标记失效并通知相关老师。
  • 升级前备份 SQLite 数据卷。本次包含数据库迁移(调课记录、个人课程结构、截图设置);截图文件保存在数据目录的 screenshots 下,不进入配置备份。
  • 发布产物包括 Windows/Linux 服务端、ClassIsland 插件包、手机与手表 APK、fnOS 在线及双架构离线包,并发布多架构容器镜像。

完整代码变更

Full Changelog: 3.3.1.7...3.3.1.8