# AutoClassBellPlayer **Repository Path**: zzrcmd/auto-class-bell-player ## Basic Information - **Project Name**: AutoClassBellPlayer - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-05-13 - **Last Updated**: 2025-09-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 自动铃声播放系统 一款轻量、可靠的自动铃声播放解决方案,支持按日程自动播放与手动触发,适配Windows环境,易于配置和扩展。 ## 项目简介 该系统旨在通过简单的配置实现铃声的自动化播放,适用于学校、企业等需要定时播放铃声的场景。核心功能包括按日程表自动触发铃声、实时监控配置变更、手动播放控制及详细日志记录,无需复杂操作即可快速部署使用。 ## 核心功能 - **自动播放**:根据预设的每日时间配置,自动在指定时刻播放铃声 - **手动控制**:支持通过命令行参数随时播放指定铃声文件,并可调节音量 - **配置监控**:实时监测配置文件变化,自动重载更新,无需重启服务 - **多格式支持**:兼容 MP3、WAV、FLAC、OGG 等主流音频格式 - **日志记录**:详细记录运行状态、错误及警告信息,便于问题排查 - **跨平台支持情况**:目前仅支持 Windows 操作系统 ## 核心组件 | 组件文件 | 功能描述 | |-------------------|--------------------------------------------------------------------------| | `BellPlayer.py` | 音频播放核心模块,负责解析音频文件、调节音量、显示播放进度 | | `AutoPlayBell.py` | 自动播放调度模块,读取每日配置、监控时间触发、实时检测配置文件变更 | | `app.py` | Web 辅助界面模块(可选),提供简单的可视化操作入口(需配合 templates 使用) | | `daemon.py` | 实现启动选择脚本 | | `run.bat` | 实现一键启动选择脚本(需配合 daemon.py 使用) | ## 快速开始 ### 环境准备 1. 依赖 Python 3.x 环境 (./runtime 文件夹下已包含 Python3.8.10) 2. 安装依赖包(./runtime 运行环境已包含): ```bash pip install -r requirements.txt ``` ### 使用方法 #### 1. 一键启动脚本 ```bash start run.bat ``` #### 2. 自动播放服务 启动自动播放服务,系统将根据日程配置自动运行: ```bash ./runtime/python.exe AutoPlayBell.py ``` 服务启动后,会自动读取 `daily_configs` 目录下的配置文件(如 `Mon.ini` 对应周一),按预设时间播放铃声。 #### 3. 手动播放铃声 通过命令行指定音频文件和音量(可选): ```bash # 基本用法(默认音量) ./runtime/python.exe BellPlayer.py -f 1.mp3 # 指定音量(音量增益范围:0.0-2.0,1.0为原音量) ./runtime/python.exe BellPlayer.py -f yancao.mp3 -v 1.5 ``` ## 配置说明 ### 配置文件位置 每日铃声时间配置文件位于 `daily_configs` 目录下,文件名对应星期几: - `Mon.ini`(周一)、`Tue.ini`(周二)... `Sun.ini`(周日) ### 配置格式 配置文件采用 INI 格式,在 `[TIME]` 节点下填写需要播放铃声的时间(24小时制): ```ini [TIME] 08:00 # 早上8点播放 09:40 # 上午9点40分播放 14:30 # 下午2点30分播放 17:00 # 下午5点播放 ``` > 提示:修改配置文件后无需重启服务,系统会自动检测并加载新配置。 ## 日志说明 - 日志文件分别存储在 `BellPlayerLog`(播放日志)和 `AutoPlayBellLog`(自动调度日志)目录 - 日志级别: - `INFO`:记录正常运行状态(如“已播放铃声”“配置已重载”) - `WARNING`:记录非致命问题(如“音频文件不存在”) - `ERROR`:记录严重错误(如“播放失败”) ## 打包部署 如需生成可执行文件(无需Python环境运行),执行以下命令: ```bash # 打包自动播放模块 pyinstaller --onefile AutoPlayBell.py # 打包手动播放模块 pyinstaller --onefile BellPlayer.py # 打包Web界面模块(如需) pyinstaller --onefile --add-data "templates:templates" app.py ``` 生成的可执行文件位于 `dist` 目录下。 ## 项目结构 ``` fork-class-bell/ ├── daily_configs/ # 每日时间配置文件 ├── config/ # 系统配置目录 ├── templates/ # Web界面模板(app.py使用) ├── BellPlayer.py # 音频播放核心 ├── AutoPlayBell.py # 自动播放调度 ├── app.py # Web辅助界面 ├── requirements.txt # 依赖清单 ├── daemon.py # 一键启动脚本(python) ├── run.bat # 命令行一键启动脚本 └── dist/ # 打包后的可执行文件(生成后出现) ``` ## 许可证 本项目基于 MIT 许可证开源,详情见 [LICENSE](LICENSE)。 ## 联系方式 - 邮箱:zzrcmd@163.com - GitHub:zzrcmd - 微信:zzrcmd666 如有问题或建议,欢迎随时联系反馈!