HomeAssistant与Tasker,自动播报微信内容、来电、短信

in android •  6 years ago 

应该可以说安卓上最强大的自动化APP就属TASKER了,它根据用户定制的配置文件执行指定任务,基本android机上想要实现的自动化功能都可以实现。TASKER与Homeassistant联动,让home assistant的TTS在有来电、短信、微信等自动播报来电人、短信内容、微信内容等。

基于的需求:

当手机放在客厅,而你自己在另一个房间打电动的时候,手机提示音未必能够听到。即使听到了提示音也不确定是否重要来电或来信而中断紧张刺激的在线游戏。那么,TASKER与Homeassistant联动,让home assistant的TTS在有来电、短信、微信等自动播报来电人、短信内容、微信内容等(当然,这样的前提条件是你的HA有个喇叭)。

TASKER操作配置(微信)

    1. 配置文件页面点击右下角的+,选取事件选项,类别选择通知
    2. 点击所有者程序选择微信app,这里你也可以选择其他如qq、line等使用的聊天软件
    3. 不需要指定发件人的话就可以退出了,如果需要则在文字这输入*指定用户名*这样就只会播报指定人的来信内容
    4. 配置文件完成后tasker会要求新建任务,随便起个名字,操作类别选择网络 > HTTP POST
    5. 服务器端口填写home assistant的地址和端口
    6. 路径填写和上一篇说amazon dash button里差不多,/api/services/script/incoming_wx?api_password=XXXXXX。这里的incoming_wx可以自己定义,之后与HA里script脚本对应就可以。
    7. 数据/文件这里定义2个变量%NTITLE%evtprm3在HA脚本里调用的名称,名称随便写喜欢的,{"wxtz":"%NTITLE","wxnr":"%evtprm3"}
    8. 内容类型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
至于来电提醒、短信提醒其实流程和上述的是差不多的,只是选择的事件类别会不同,这个tasker里有可以自行研究,另外就是变量的问题,可以参考这篇说明,不同需求不同变量的选择。

Posted from my blog with SteemPress : https://otichi.com/homeassistant-and-tasker-tts-incoming-weixin.html
Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!