飞书简易打卡

2024.04.23.91
评分人数不足
我要评分

已测试飞书版本6.6.6,仅在自由班次测试,测试机型为红米Note4X、K20、华为Mate10Pro和树莓派4B搭配LineageOS18.1。需要手机在解锁状态。建议手机设置为不锁屏,或无锁屏密码(机器人可能离线)

设置中可以选择是否判断工作日,可以只在法定工作日打卡
判断工作日使用的api是http://timor.tech/api/holiday,如果判断失败,可能是ip被cdn封禁,具体可以通过日志自行判断

支持通过pushplus推送打卡信息到WX,需要在设置中填写token

华为Mate10Pro等OLED机型可能不支持长时间亮屏,通常在开发者选项内可以设置充电时不锁屏。脚本在锁屏状态会尝试唤醒屏幕

树莓派4B搭配LineageOS18.1需要保持横屏(默认状态),此系统的无障碍在旋转屏幕后会导致部分点击失效。横屏时飞书考勤页面的UI会挤成一团,但不影响打卡

完全0基础自己照着开发文档写的,可能有bug。不支持解锁手机屏幕,需要提前用其他脚本解锁或设置成不锁屏。请优先使用另外两位大神写的脚本,用不了再试这个。如果显示点击成功,但实际没有点击,可能是无障碍权限的问题

打卡步骤如下:判断工作日判断是否在飞书,不在就跳转寻找text值是“更多”的控件,点击控件所在区域的中间以此类推点击工作台点击假勤寻找“下班打卡”,有就打下班卡,没有就打上班卡

打卡时如果已经在假勤页面不影响流程。找不到“更多””工作台“”假勤“的按钮的话,超时(16s)会自动跳过

没试过固定班次,如果固定班次无法打卡,可以通过议题反馈


2024/04/23更新:读取打卡记录来判断打卡是否成功。在非测试模式下,执行打卡后如果记录没有加一,推送的标题会增加“警告”,控制台里脚本消息会有对应警告,以及读取的打卡记录。
2024/04/10更新:步骤”假设已在假勤页面“里增加判断。读取当前页面的时间字符串,如果不是当前日期则退出。有时保持在假勤页面,第二天需要打卡时不会自动刷新,导致打卡失败。
推送消息里增加了打卡记录。点击打卡按钮后5S会读取页面内包含”已打卡“的字符串。收到推送后点开通知可看到,辅助判断打卡是否成功。
2024/03/30更新:脚本运行步骤增加:脚本开始时如果在息屏状态,则点亮屏幕。测试华为Mate10Pro通过,息屏状态下可唤醒(无锁屏密码)。
2024/03/12更新:查找“更多”的条件从限制区域更换为id包含“textItem”,适配更多分辨率的机型。飞书的“更多”页面,在未点击时收在屏幕下面,左上角的文字“更多”与按钮的文字控件有一样的text值,位置与“消息”可点击区域重合。
测试树莓派4B打卡成功。
2024/02/26更新:替换了默认的判断无障碍权限的阻塞函数。改为如果没打开无障碍权限(通常是手机出bug导致掉无障碍),会推送通知并自动结束脚本。
2024/02/04更新:解决调休工作日时判断为非工作日。原因是调休工作日时API返回类型为3,正常工作日返回0。
2023/12/25更新:流程“判断是否在飞书”前增加了启动飞书的步骤。一直在假勤页面时,会出现到了第二天没有打卡选项。启动飞书后再打开假勤可刷新假勤页面。
2023/12/18更新:增加选项:假设已在假勤页面。选择后在步骤“判断是否在飞书”前查找有无“上班打卡”或“下班打卡”控件。适合性能差的手机定时使用此脚本时使用,可减少内存不足导致启动飞书时机器人掉线(测试的Note4X容易判断当前所在APP失败,在飞书假勤页面却返回不在飞书,按照步骤多次跳转后在启动假勤时爆内存)。
测试模式下,推送消息的标题后加上“测试”二字
2023/12/10更新:解决工作日判断可能出错的问题。原因是date对象转换为ISO格式字符会有8小时时差
2023/12/09更新:解决工作日判断错误的问题。原因是直接不加日期调用,返回的缓存可能是昨天的数据

分享
声明:本平台所有脚本均由开发者自主开发,如涉及侵权或违规,请联系本平台进行下架处理,本平台不承担任何经济和法律责任。侵权申诉

定价和安装

免费

飞书简易打卡

免费

¥0
卑微打工人 吃瓜 🍈
鼓励 TA 持续创作 (゚∀゚) ノ♡

遇到问题?

三步完成运行,没有麻烦

如何使用

安装 Hamibot
安装脚本
运行脚本