tasker构建节假日区别情景模式

最开始的想法来源于华为闹钟的智能跳过节假日,就是日历中订阅中国节假日,闹钟从日历中获取数据,非工作日就不闹钟了。这个功能非常好,但不知道为什么华为只在闹钟里面设了。

因为工作关系,我上班时间手机需要设为静音,而早上、中午、晚上需要设音量最高防止漏接电话。当时使用tasker实现了这个功能,但是并不完美,只能做到传统的周一到周五应用工作日状态。最理想的自然是非工作日就不用给我设静音了,于是我就想参照华为闹钟的功能来实现这一想法。然而华为并没有公开相关的API,系统里面其他app没办法调用数据,只能另辟蹊跷。

为此我写了两个版本的配置:

一、在线查询版

利用了tasker的http get功能,通过http get连接网络免费的节假日API接口,返回数据判断当天是否工作日。

以上代码另存为xml供tasker导入即可

然后建立一个定时任务,每天早上或者晚上运行这个任务一次,即可每天更新%Holiday2的值,再把相关工作的情景模式添加状态条件,只有%Holiday2=0的时候条件启动即可。

这里用到的是api.goseek.cn提供的接口,如果想自己搭建api,可以参考

http://tool.bitefu.net/jiari/

下载里面的源代码,上传到自己网站,再更改相关tasker代码。不详细叙述。

二、离线可用版

上面的方法是第一版本,好处是比较简单(并不)、适应性比较广,基本上导入即可用,但有时如果遇到网络故障或者不方便上网就2b了。于是想到了第二版本,本地查询版。

这个也是另存为一个xml文件导入tasker。

好处是不再依赖网络,坏处是通用性较差。

需要先在手机内建立一个txt文件,

把节假日写入,例如2019年

调休上班为0,放假设1或者2。

建立后导入第一个xml,然后在tasker中修改第一步为读取你建立的txt文件。

这样你就得到了一个%Holiday31,放假则为1或2,工作日为0。

同样加入你的启动条件。

 

三、碎碎念

1.这种格式化txt用excel生成比较方便;

2.除了可以用来设置声音大小,还可以让勿扰模式在节假日加长,例如说工作时我的午休时间只有一个小时,多了这个API我就可以在节假日多设置两个小时的勿扰模式。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据