# IslandMQ-Client **Repository Path**: ElofHew/IslandMQ-Client ## Basic Information - **Project Name**: IslandMQ-Client - **Description**: 一个适用于ClassIsland+IslandMQ插件实现发送通知的ZeroMQ客户端 - **Primary Language**: Python - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-26 - **Last Updated**: 2026-10-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
# IslandMQ Client ![Icon](./icon/icon.ico) 适用于 [ClassIsland](https://github.com/ClassIsland/ClassIsland) 的 [IslandMQ](https://github.com/doudou0720/IslandMQ) 插件的**通知发送客户端**
>[!TIP] > 本项目由AI **全盘接手** 程序主体更新 ## 项目背景 众所周知,[ClassIsland](https://github.com/ClassIsland/ClassIsland)是一款功能强、可定制、跨平台,适用于班级多媒体屏幕的课表信息显示工具,可以一目了然地显示各种信息。(From ClassIsland Project Repository Page) 并且,它也支持**发送通知**。 还有一款适用于ClassIsland的插件:[IslandMQ](https://github.com/doudou0720/IslandMQ),其功能就是将 **ZeroMQ** 搬到了ClassIsland上,使得ClassIsland可以利用IslandMQ,通过ZeroMQ实现一些局域网/互联网功能。(应该是) 即使目前IslandMQ插件还处于早期开发阶段,项目代码仓库还比较简陋,但已经实现了**发送普通通知**的功能。 但IslandMQ插件并没有提供现成的客户端,仅在项目仓库中留了一个 `client.py` 的Python接入API模板。于是,本项目就基于该模板,结合Tkinter框架,写了一个GUI客户端程序。 ## 适用场景 - 需要经常给班级内下发通知的班主任老师 - 办公室距离教室比较远的任课老师传达消息 - 级部办公室统一给各班下发通知,召集学生等 ## 使用方法 1. 【前提】学校各个教室内的大屏电脑处于学校广域网下(172.x.x.x)。 2. 【前提】教室电脑已经安装 **ClassIsland** ,并处于运行状态。 3. 【前提】ClassIsland中已安装并启用 **IslandMQ** 插件。 4. 【配置】IslandMQ插件配置中,**监听IP地址**设为 `0.0.0.0` 或 `172.0.0.0`,**REQ端口**不与其他端口冲突(一般默认5555即可) 5. 【确保】教室电脑防火墙没有设置额外的入站和出站规则。 6. 【安装】老师电脑连接校园网,并安装本客户端。 7. 【使用】在客户端中添加教室电脑IP和端口(例如:`172.18.34.114:5555`),输入通知标题和正文,设置通知显示时间,发送通知即可(支持批量多班发送)。 ## 编译 1. `pip install -r requirements.txt`,安装依赖库(`pyzmq` 和 `pyinstaller`)。 2. `build.bat`,使用 `pyinstaller` 编译成可执行文件(Windows)或 `build.sh`(Linux)。 3. `SFX_config.txt` 配置文件,并使用 `7Z SFX Builder` 打包成自解压安装包(可选)。 ## 已知问题 1. 当ClassIsland端有计划通知任务正在进行时(比如上下课提醒、天气提醒等),人为发送的通知会等计划通知完成后再显示。 >[!NOTE] >班级电脑设置了上课前2分钟显示**即将上课提醒**,但是这个时间段有老师发送了一条消息到本班,这条通知就会延后提醒,即:开始上课后(即将上课通知结束)再显示并提醒。 --- © 2026 ElofHew All Rights Reserved.