『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 6187|回复: 9

[技术探讨] 如何把装置状态整合到script

[复制链接]

6

主题

43

帖子

140

积分

注册会员

Rank: 2

积分
140
金钱
97
HASS币
0
发表于 2017-12-2 14:41:38 | 显示全部楼层 |阅读模式
这帖中见到wqqs大神的教学

  binary_sensor:
    - platform: ping
      name: device_name
      host: xx.xx.xx.xx
      scan_interval: 15
      count: 5

  switch:
    - platform: template
      switches:
        device_name:
          value_template: "{{ is_state('binary_sensor.device_name', 'on') }}"

请问如何把收集了的装置状态整合到script?

  tv_off_plex_off:
    alias: Turn TV & Plex off
    sequence:
    - service: switch.turn_off
      data:
        entity_id: switch.tv_power

#如果装置状态为开,才执行以下部分

if "{{ is_state('binary_sensor.plex', 'on') }}"

run

    - service: switch.turn_off
    data:
      entity_id: switch.plex_power

#如果装置状态为关,就不用按开关制

else

------------------------------------------------
求高人指点 !

回复

使用道具 举报

30

主题

997

帖子

4151

积分

论坛元老

Rank: 8Rank: 8

积分
4151
金钱
3149
HASS币
0

活跃会员

发表于 2017-12-2 16:36:34 | 显示全部楼层
  tv_off_plex_off:
    alias: Turn TV & Plex off
    sequence:
      service_template: "switch.turn_{{ 'off' if states.binary_sensor.plex.state == 'on' else 'off' }}"
      data:
        entity_id: switch.tv_power

评分

参与人数 1金钱 +10 收起 理由
+ 10 我来瀚思就为看你!

查看全部评分

回复

使用道具 举报

6

主题

43

帖子

140

积分

注册会员

Rank: 2

积分
140
金钱
97
HASS币
0
 楼主| 发表于 2017-12-2 16:39:24 | 显示全部楼层
wqqs 发表于 2017-12-2 16:36
  tv_off_plex_off:
    alias: Turn TV & Plex off
    sequence:

谢谢高人指点,万分感激 orz
回复

使用道具 举报

6

主题

43

帖子

140

积分

注册会员

Rank: 2

积分
140
金钱
97
HASS币
0
 楼主| 发表于 2017-12-2 21:34:13 | 显示全部楼层
本帖最后由 hioasjgo3 于 2017-12-2 21:35 编辑
wqqs 发表于 2017-12-2 16:36

"switch.turn_{{ 'off' if states.binary_sensor.plex.state == 'on' else 'off' }}"

不好意思,想再请教一下,这句最后的 'off' 可以变成 none 吗?
因为这博联红外线的 switch,on 和 off 都是同一个红外码,如 state 已是 on 就不用发射了
回复

使用道具 举报

30

主题

997

帖子

4151

积分

论坛元老

Rank: 8Rank: 8

积分
4151
金钱
3149
HASS币
0

活跃会员

发表于 2017-12-2 21:51:42 | 显示全部楼层
hioasjgo3 发表于 2017-12-2 21:34
不好意思,想再请教一下,这句最后的 'off' 可以变成 none 吗?
因为这博联红外线的 switch,on 和 off 都 ...

写成none的话,运行时会报错
回复

使用道具 举报

6

主题

43

帖子

140

积分

注册会员

Rank: 2

积分
140
金钱
97
HASS币
0
 楼主| 发表于 2017-12-2 23:03:00 | 显示全部楼层
wqqs 发表于 2017-12-2 21:51
写成none的话,运行时会报错

谢谢wqqs大大指点
回复

使用道具 举报

6

主题

43

帖子

140

积分

注册会员

Rank: 2

积分
140
金钱
97
HASS币
0
 楼主| 发表于 2017-12-3 02:54:58 | 显示全部楼层
wqqs 发表于 2017-12-2 16:36
  tv_off_plex_off:
    alias: Turn TV & Plex off
    sequence:

大大,请问你在 这帖中用的是value_template,但在上面教我用service_template,大家都是call switch,请问有什么分别呢?
回复

使用道具 举报

30

主题

997

帖子

4151

积分

论坛元老

Rank: 8Rank: 8

积分
4151
金钱
3149
HASS币
0

活跃会员

发表于 2017-12-3 09:13:58 | 显示全部楼层
放的位置不同叫法不同,但使用的语法是一致的

评分

参与人数 1金钱 +2 收起 理由
jyz_0501 + 2 赠人玫瑰,手留余香!

查看全部评分

回复

使用道具 举报

6

主题

43

帖子

140

积分

注册会员

Rank: 2

积分
140
金钱
97
HASS币
0
 楼主| 发表于 2017-12-3 23:48:06 | 显示全部楼层
wqqs 发表于 2017-12-3 09:13
放的位置不同叫法不同,但使用的语法是一致的

谢谢wqqs指点
回复

使用道具 举报

1

主题

254

帖子

601

积分

高级会员

Rank: 4

积分
601
金钱
346
HASS币
0
发表于 2019-6-16 17:57:48 来自手机 | 显示全部楼层
谢谢分享!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-25 02:55 , Processed in 0.140092 second(s), 33 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表