Note
软件具有-桌面时钟 -课程表 -天气预报 -自动新闻联播 -定时关机 -消息通知栏 -随机点名 -新闻看板 -定时消息等功能
协议:GPLv3
GitHub仓库: https://github.com/Return-Log/Education-Clock
Warning
设置信息存储在./data下,修改设置会自动保存,操作不可逆,请注意进行数据备份
到达设定时间后对应课程加粗并使用高亮边框
主界面可以选择显示其它时间课程表以适应调休
Warning
修改项后务必点击表格空白处以保存,直接关闭窗口可能会导致数据丢失
对应日期为空时,点插入行按钮会自动添加一行
不为空时需选择一行,点击插入按钮会在选中行下方插入一行
选中要删除的行点击删除按钮即可删除
双击需更改的单元格即可进行更改
日期须符合HH:MM格式
事件最多4个字符,也不要设置过长的倒计时(大于9999天),否则会导致窗口显示超出范围
使用和风天气的格点天气服务
API可在和风天气开发平台自行注册获得
Caution
注意经纬度不要填反
-
以时间倒序显示近7天数据
-
最新消息以弹幕形式在屏幕上滚动
-
支持markdown格式
-
当过滤群组名字包含“管理组”关键字时,对应群组信息头用黄色显示
Warning
通知栏信息编码为base64加密存储,只能在设置界面更改
公告板现支持md格式解析,图片解析,视频、文档等文件保存与快速打开
- 可选发件人昵称,群聊名字进行过滤
- 有多个过滤项时使用逗号分隔
- 过滤项间彼此互不干扰
数据库中构建如下表
CREATE TABLE IF NOT EXISTS `messages` (
`id` INT AUTO_INCREMENT PRIMARY KEY, -- 自增主键
`robot_name` VARCHAR(255) NOT NULL, -- 机器人名称
`sender_name` VARCHAR(255) NOT NULL, -- 发送者名称
`message_content` TEXT NOT NULL, -- 消息内容
`timestamp` DATETIME NOT NULL, -- 时间戳
`conversationTitle` VARCHAR(255) NOT NULL -- 群聊标题
);Important
记得放行 3306 MySQL服务默认端口
可以使用你自己的程序执行如下语句进行插入
INSERT INTO `messages` (`robot_name`, `sender_name`, `message_content`, `timestamp`, `conversationTitle`) VALUES
('机器人名字', '发送者名称', '展示的消息内容', '时间戳(2024-11-04 15:00:04)', '群聊名称');需自建一个组织,机器人每月有3000次调用限制
开放平台: https://open-dev.dingtalk.com/fe/app?hash=%23%2Fcorp%2Frobot#/corp/robot
在自建组织中创建一个机器人应用,将应用凭证中三个项记下来
对应机器人开发管理中添加服务器出口IP,和消息接收地址
python版本: 3.10.14 使用flask框架
./dingtalk-service/app.py 为服务端需运行软件
将app.py中以下部分改为你自己的配置信息
"""以省略上方代码"""
# 数据库配置
db_config = { # 数据库配置
"host": "localhost",
"user": "",
"password": "",
"database": ""
}
# 钉钉机器人配置(多个机器人)
robots = { # 机器人应用凭证
"": { # ""中填写AppKey
"agent_id": "", # AgentId
"app_secret": "" # AppSecret
}
# 可以继续增加更多的机器人配置
}
"""中间部分已省略"""
if __name__ == '__main__':
app.run(host='0.0.0.0', port=20000, debug=True) # 改为自己的端口宝塔面板网站管理:
添加一个python项目
所需的库,装最新版即可
flask # 用于创建 Web 应用程序
pymysql # 用于连接和操作 MySQL 数据库
alibabacloud-dingtalk # 用于调用钉钉的 API
alibabacloud-tea-openapi # 钉钉 SDK 依赖的 Alibaba Cloud TEA OpenAPI 库
alibabacloud-tea-util # 钉钉 SDK 依赖的 TEA 工具库
最后重启项目
在自建组织下添加一个内部群,添加上自定义机器人,@机器人 即可发送信息,一切顺利话此时数据库中已有这条信息
一天中多个关机时间使用逗号分隔
到达时间会弹出确认倒计时窗口,点取消即可终止关机
到达7:30会自动使用默认浏览器访问央视网,根据是否有声音播放模拟鼠标双击进行全屏操作,到达7:30自动关闭浏览器窗口
模块默认为关闭状态
点击小猫悬浮球可打开工具栏,目前有随机点名、通知消息本地发送功能
显示效果
目前只能解析新闻类API(需要显示的项都在"data"下)
使用md格式,API中的内容显示需加{},如上图所示
从悬浮窗启动
具有秒表和倒计时功能
可设置定时消息和循环消息,定时消息中设置为Sunday等可实现每周显示
-
英文星期格式(Monday, Tuesday等)
-
中文星期格式(星期一, 星期二等)
-
完整日期格式(YYYY-MM-DD)
-
月日格式(MM-DD)
-
支持逗号分隔的多个日期
-
同时支持中文逗号和英文逗号
Copyright © 2024-2025 Log All rights reserved.








