Home Assistant データテンプレート

テンプレートはセンサの条件出しやデータ取得時間の表示などに必要な機能であるため、Home Assistant導入段階で良く理解する必要が有ります。

バイナリセンサのタイムスタンプの取得方法(開発者ツールのテンプレートにより確認)

    {{ as_timestamp(states.binary_sensor.motion_2.last_changed) | timestamp_local }}
    {{ states.binary_sensor.motion.last_updated }}
    {{ now() }}
    {{ is_state('binary_sensor.motion_2', 'on')  }}
    {{ states.sensor.si_t.state_with_unit }}

出力結果

2019-03-11 23:32:11
2019-03-11 13:50:17.570430+00:00
2019-03-11 23:32:14.698594+09:00
False
19.5 °C

入れ子形式のJSONデータの抽出方法

一つのデバイスから複数のIDによるデータをパブリッシュする場合、ID別にデータを入れ子にします。

送信フォーマット:入れ子JSONデータ

{
  "id1": {
    "hr": "65",
    "spo2": "98",
    "temp":"36.56"
  }
}

受信側(Home Assistant)では以下のフォーマットで入れ子のデータを抽出します。

受信側(Home Assistant)でデータ抽出

"{{ value_json['id1']['hr'] }}"
"{{ value_json['id1']['spo2'] }}"
"{{ value_json['id1']['temp'] }}"