众所周知,我们的调制度会导致日常生活节奏被打乱,如果使用的是iphone手机更是麻烦,不能够直接根据法定节假日来设置闹钟的开关,所以本文就是为了解决这个问题而存在。
iphone的自动化
其实iphone的自动化功能很强大,可以实现包含晚上回家打开门时自动打开玄关灯,卫生间监测到人时自动打开卫生间的灯,无人时自动关闭灯等等功能。除了智能家居中的使用,生活中也可以带来遍历,比如让闹钟自动化。
省流
直接导入我写好的快捷方式链接https://www.icloud.com/shortcuts/2029c92ea52e4e03bb68054f7f77192a,然后自己设定一个闹钟,修改导入的快捷方式中的闹钟,再在自动化中添加一个每天凌晨运行的自动化后添加该快捷方式即可。
视频演示(如果想看具体说明和原因可以往下看,否则到这一步即可)
分析及准备
首先设置一个每天重复的闹钟,以做备用
查看日历并订阅中国节假日
拿当月来说,可以分为四种情况
- 今天是周一~周五,打开闹钟
- 今天是周一~周五,但是是节假日,关闭闹钟
- 今天是周六或者周日,关闭闹钟
- 今天是周六或者周日,但是调休要上班,开启闹钟
转换成if...else...伪代码可得
IF (当前日期是周一到周五) THEN
IF (日历标题包含 "休") THEN
关闭闹钟
ELSE
打开闹钟
END IF
ELSE
IF (日历标题包含 "班") THEN
打开闹钟
ELSE
关闭闹钟
END IF
END IF
分析在iphone自动化过程中所需要的流程及变量
- 获取中国大陆节假日中今天的日程
- 格式化日期并判断是周一到周五还是周六或者周日
- 获取日历标题,判断其中是否有
班或休 - 打开/关闭 闹钟
配置自动化
设置一个根据上方伪代码形成的快捷方式
新建快捷方式并设置名称和图标。
格式化当前日期
添加if...else...
自动化中就是如果、否则
格式化时间进行判断
根据苹果官方文档说明,日期可经过如下的格式化
根据文中的时间标准化文档链接
使用
e可以获取周几的数字,但是在iphone的日历中(如下图),每周的第一天为周日,所以周日对应的数字为1,周一对应数字为2,周二对应数字3,以此类推。
视频中第一个判断是周一到周五就是判断星期数字是否在2到6之间,如果是单休就设置2到7。
获取临近日程
临近日程指的是点开日历下面的那部分,往往包含班或者休得日程在最下方,有时候还有你自己定义得日程,所以获取临近日程时要多获取几个。这也是视频中获取5个日程的原因。
查找标题中是否包含班或者休
上方劳动节括号中有个休代表今天休息,如果周末有班则说明今天哪怕是周末也要调休上班
开启/关闭闹钟
指开/关自己指定的会自动化的闹钟。