找回密码
 立即注册
查看: 178|回复: 7

[流程系列] 求助:每隔45分钟控制电视启停

[复制链接]

4

主题

11

回帖

79

积分

注册会员

积分
79
金钱
64
HASS币
0
发表于 4 天前 | 显示全部楼层 |阅读模式
电视机连续开启45分钟则强制关闭,并且只有连续关闭了20分钟才能继续下一个45分钟,之前用HA的自动化,一直没有成功,听人说要用Node-Red,于是重新通过ESXi安装了HAOS,Node-Red加载项也安装成功了。那么怎么编写这个控制流程并部署到HA里做自动化呢?
回复

使用道具 举报

2

主题

32

回帖

394

积分

中级会员

积分
394
金钱
360
HASS币
0
发表于 4 天前 | 显示全部楼层
本帖最后由 朱铁成 于 2025-5-25 23:48 编辑
[{"id":"2ff592c53f5bd333","type":"server-state-changed","z":"10e7abfa6b9ac047","name":"电视","server":"dc22e9ed00108105","version":6,"outputs":2,"exposeAsEntityConfig":"","entities":{"entity":["media_player.xiaomi_v1_1637_play_control"],"substring":[],"regex":[]},"outputInitially":false,"stateType":"str","ifState":"off","ifStateType":"str","ifStateOperator":"is","outputOnlyOnStateChange":false,"for":"","forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"}],"x":290,"y":1760,"wires":[["59ee78bdb40eb904"],["ab3b0254dbce98b3"]]},{"id":"59ee78bdb40eb904","type":"trigger","z":"10e7abfa6b9ac047","name":"","op1":"","op2":"","op1type":"nul","op2type":"payl","duration":"1","extend":false,"overrideDelay":false,"units":"min","reset":"off","bytopic":"all","topic":"topic","outputs":1,"x":680,"y":1780,"wires":[["a286b20132f90726"]]},{"id":"feda6759fdf287e3","type":"ha-sensor","z":"10e7abfa6b9ac047","name":"电视开机时长","entityConfig":"f22681cb8bac7bc2","version":0,"state":"payload","stateType":"msg","attributes":[],"inputOverride":"allow","outputProperties":[],"x":1180,"y":1720,"wires":[[]]},{"id":"a286b20132f90726","type":"loop","z":"10e7abfa6b9ac047","name":"45分钟","kind":"fcnt","count":"45","initial":"0","step":"-1","condition":"","conditionType":"js","when":"before","enumeration":"enum","enumerationType":"msg","limit":"","loopPayload":"loop-index","finalPayload":"final-orig","x":680,"y":1720,"wires":[["dc6c573701e3c650"],["59ee78bdb40eb904","feda6759fdf287e3"]]},{"id":"dc6c573701e3c650","type":"function","z":"10e7abfa6b9ac047","name":"function 2","func":"msg.payload='已超时'\nreturn msg;","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":900,"y":1700,"wires":[["feda6759fdf287e3","f98d328522bbc2b7"]]},{"id":"7c696a84fe1a2b41","type":"server-state-changed","z":"10e7abfa6b9ac047","name":"电视时长","server":"dc22e9ed00108105","version":6,"outputs":2,"exposeAsEntityConfig":"","entities":{"entity":["sensor.dian_shi_kai_ji_shi_chang"],"substring":[],"regex":[]},"outputInitially":false,"stateType":"str","ifState":"已超时","ifStateType":"str","ifStateOperator":"is","outputOnlyOnStateChange":false,"for":"0","forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"}],"x":360,"y":2000,"wires":[["230f251f2c56f4f5"],[]]},{"id":"230f251f2c56f4f5","type":"api-call-service","z":"10e7abfa6b9ac047","name":"关闭电视","server":"dc22e9ed00108105","version":7,"debugenabled":false,"action":"media_player.turn_off","floorId":[],"areaId":[],"deviceId":[],"entityId":["media_player.xiaomi_v1_1637_play_control"],"labelId":[],"data":"","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","blockInputOverrides":true,"domain":"media_player","service":"turn_off","x":760,"y":1980,"wires":[[]]},{"id":"f98d328522bbc2b7","type":"ha-sensor","z":"10e7abfa6b9ac047","name":"强制关闭","entityConfig":"b867ec4e8551c4e3","version":0,"state":"payload","stateType":"msg","attributes":[],"inputOverride":"allow","outputProperties":[],"x":1160,"y":1780,"wires":[["f66c31f9b6262b9e"]]},{"id":"49d64fe564d5a5a3","type":"trigger","z":"10e7abfa6b9ac047","name":"","op1":"","op2":"","op1type":"nul","op2type":"payl","duration":"1","extend":false,"overrideDelay":false,"units":"min","reset":"off","bytopic":"all","topic":"topic","outputs":1,"x":1080,"y":1960,"wires":[["1490bfa183140ee6"]]},{"id":"1490bfa183140ee6","type":"loop","z":"10e7abfa6b9ac047","name":"20分钟","kind":"fcnt","count":"20","initial":"0","step":"-1","condition":"","conditionType":"js","when":"before","enumeration":"enum","enumerationType":"msg","limit":"","loopPayload":"loop-index","finalPayload":"final-orig","x":1080,"y":1900,"wires":[["c9a1591737c44543"],["49d64fe564d5a5a3"]]},{"id":"c9a1591737c44543","type":"function","z":"10e7abfa6b9ac047","name":"function 3","func":"msg.payload='未超时'\nreturn msg;","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1240,"y":1900,"wires":[["f98d328522bbc2b7"]]},{"id":"f66c31f9b6262b9e","type":"switch","z":"10e7abfa6b9ac047","name":"","property":"payload","propertyType":"msg","rules":[{"t":"eq","v":"已超时","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":1350,"y":1780,"wires":[["1490bfa183140ee6"]]},{"id":"ab3b0254dbce98b3","type":"api-current-state","z":"10e7abfa6b9ac047","name":"检测是否超时","server":"dc22e9ed00108105","version":3,"outputs":2,"halt_if":"已超时","halt_if_type":"str","halt_if_compare":"is","entity_id":"sensor.qiang_zhi_guan_bi","state_type":"str","blockInputOverrides":true,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":460,"y":1860,"wires":[["230f251f2c56f4f5"],["a286b20132f90726"]]},{"id":"dc22e9ed00108105","type":"server","name":"Home Assistant","version":5,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":false,"cacheJson":true,"heartbeat":false,"heartbeatInterval":"30","areaSelector":"friendlyName","deviceSelector":"friendlyName","entitySelector":"friendlyName","statusSeparator":"at: ","statusYear":"hidden","statusMonth":"short","statusDay":"numeric","statusHourCycle":"h23","statusTimeFormat":"h:m","enableGlobalContextStore":true},{"id":"f22681cb8bac7bc2","type":"ha-entity-config","server":"dc22e9ed00108105","deviceConfig":"dfb7ca91f16309a1","name":"电视开机时长","version":6,"entityType":"sensor","haConfig":[{"property":"name","value":"电视开机时长"},{"property":"icon","value":""},{"property":"entity_picture","value":""},{"property":"entity_category","value":""},{"property":"device_class","value":""},{"property":"unit_of_measurement","value":""},{"property":"state_class","value":""}],"resend":false,"debugEnabled":false},{"id":"b867ec4e8551c4e3","type":"ha-entity-config","server":"dc22e9ed00108105","deviceConfig":"dfb7ca91f16309a1","name":"强制关闭","version":6,"entityType":"sensor","haConfig":[{"property":"name","value":"强制关闭"},{"property":"icon","value":""},{"property":"entity_picture","value":""},{"property":"entity_category","value":""},{"property":"device_class","value":""},{"property":"unit_of_measurement","value":""},{"property":"state_class","value":""}],"resend":false,"debugEnabled":false},{"id":"dfb7ca91f16309a1","type":"ha-device-config","name":"电视开机时长","hwVersion":"","manufacturer":"Node-RED","model":"","swVersion":""}]
flows.rar (1.99 KB, 下载次数: 5)


回复

使用道具 举报

2

主题

32

回帖

394

积分

中级会员

积分
394
金钱
360
HASS币
0
发表于 4 天前 | 显示全部楼层
写了一个NODERED的流。你添加试一下。
微信图片_20250525234605.png
回复

使用道具 举报

4

主题

11

回帖

79

积分

注册会员

积分
79
金钱
64
HASS币
0
 楼主| 发表于 3 天前 | 显示全部楼层
朱铁成 发表于 2025-5-25 23:46
写了一个NODERED的流。你添加试一下。

我只想知道你的loop节点怎么安装的。。。我通过haos的加载项安装了 node-red 然后调试了半天就是没有找到loop节点。。。。然后我把你的json导进去就提示loop节点不识别。。。
PixPin_2025-05-26_00-08-13.png
回复

使用道具 举报

2

主题

32

回帖

394

积分

中级会员

积分
394
金钱
360
HASS币
0
发表于 3 天前 | 显示全部楼层
wolfcdd 发表于 2025-5-26 00:10
我只想知道你的loop节点怎么安装的。。。我通过haos的加载项安装了 node-red 然后调试了半天就是没有找到 ...

在NODERD里面节点管理。添加节点。
回复

使用道具 举报

0

主题

158

回帖

1459

积分

金牌会员

积分
1459
金钱
1301
HASS币
0
发表于 3 天前 | 显示全部楼层
学习下,用得到
回复

使用道具 举报

13

主题

91

回帖

595

积分

高级会员

积分
595
金钱
491
HASS币
0
发表于 3 天前 | 显示全部楼层
微信截图_20250526094437.png
每看电视20分钟暂停休息5分钟,可以参考下

评分

参与人数 1金钱 +12 收起 理由
隔壁的王叔叔 + 12 感谢楼主分享!

查看全部评分

回复

使用道具 举报

4

主题

11

回帖

79

积分

注册会员

积分
79
金钱
64
HASS币
0
 楼主| 发表于 3 天前 | 显示全部楼层
linyf 发表于 2025-5-26 09:44
每看电视20分钟暂停休息5分钟,可以参考下

求具体的YAML,谢谢
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian ( 晋ICP备17001384号-1 )

GMT+8, 2025-5-29 12:58 , Processed in 0.072910 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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