应该可以说安卓上最强大的自动化APP就属TASKER了,它根据用户定制的配置文件执行指定任务,基本android机上想要实现的自动化功能都可以实现。TASKER与Homeassistant联动,让home assistant的TTS在有来电、短信、微信等自动播报来电人、短信内容、微信内容等。
基于的需求:
当手机放在客厅,而你自己在另一个房间打电动的时候,手机提示音未必能够听到。即使听到了提示音也不确定是否重要来电或来信而中断紧张刺激的在线游戏。那么,TASKER与Homeassistant联动,让home assistant的TTS在有来电、短信、微信等自动播报来电人、短信内容、微信内容等(当然,这样的前提条件是你的HA有个喇叭)。
TASKER操作配置(微信)
-
- 在
配置文件
页面点击右下角的+
,选取事件
选项,类别选择通知
- 点击
所有者程序
选择微信app,这里你也可以选择其他如qq、line等使用的聊天软件 - 不需要指定发件人的话就可以退出了,如果需要则在
文字
这输入*指定用户名*
这样就只会播报指定人的来信内容 - 配置文件完成后tasker会要求
新建任务
,随便起个名字,操作类别选择网络 > HTTP POST
- 服务器端口填写home assistant的地址和端口
- 路径填写和上一篇说amazon dash button里差不多,
/api/services/script/incoming_wx?api_password=XXXXXX
。这里的incoming_wx可以自己定义,之后与HA里script脚本对应就可以。 数据/文件
这里定义2个变量%NTITLE
和%evtprm3
在HA脚本里调用的名称,名称随便写喜欢的,{"wxtz":"%NTITLE","wxnr":"%evtprm3"}
内容类型
填application/json
- 在
Home Assistant配置操作
- 建立脚本文件(script)
script: incoming_wx: sequence: - condition: and conditions: - condition: time after: '08:00:00' before: '22:00:00' - service: tts.baidu_say data_template: message: > 你有一条来自{{ wxtz }}的微信,内容是, {{ wxnr }}
这里我增加一个时间条件condition
,执行时间从每天早上8点到晚上22点,其余时间不执行,不然大晚上睡这了喇叭一下子响起来要吓死人的。TTS这里用的百度TTS,相对google的TTS说中文会稍微好点,这个看个人喜好,也可以针对不同app不同发件人另外设置。 - 重启Home Assistant
Posted from my blog with SteemPress : https://otichi.com/homeassistant-and-tasker-tts-incoming-weixin.html