Paralelo virtual

Como criar um paralelo virtual no Home Assistant? No smartlife é intuitivo. E como ocultar este interruptor para não ficar duplicado?

Vc pode definir o dispositivo como oculto em suas configurações.
E referente ao paralelo, tem a opção de usar as automações nativas do HA para fazer.
Ou tambem pode fazer pelo NodeRed.

Pesquisa no YouTube 3 way com node-red tem vídeos bem interessantes.
Os meus eu segui este vídeo:

Tem uma blueprint que é muito intuitiva e faz bem esse tipo de paralelo virtual. Vinha tendo muito problema com delay entre um interruptor wifi é um zigbee, ela configurou muito bem!!! Chama-se Sync Multiple Switches

Pelo HA da para criar grupos.

Se todas as entidades forem iguais, todas light ou todas switch, da pra criar usando helper e esconder as entidades do grupo.

Se forem diferentes da pra criar os grupos via script ou no group.yaml, mas acho que não da para esconder as entidades.

image

No node red…
Assisti ao vídeo que o @fmpedro postou e consegui simplificar o fluxo:

[{"id":"255e3f1ee494b797","type":"group","z":"b33cbbf26c105ff6","name":"Paralelo Virtual","style":{"label":true},"nodes":["c4c4c41d52efa5c8","380e2c820a55ceca"],"x":28,"y":113,"w":778,"h":314},{"id":"c4c4c41d52efa5c8","type":"api-call-service","z":"b33cbbf26c105ff6","g":"255e3f1ee494b797","name":"Não editar","server":"33803899.487d48","version":5,"debugenabled":false,"domain":"","service":"","areaId":[],"deviceId":[],"entityId":[],"data":"","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":710,"y":260,"wires":[[]]},{"id":"380e2c820a55ceca","type":"group","z":"b33cbbf26c105ff6","g":"255e3f1ee494b797","name":"Editar as entidades aqui","style":{"label":true},"nodes":["c8b05faf33be6f65","a180c69b4643b068","314782b1bfe488ac","eb01bb3c45e4446a","1ca11cfc796ba38b"],"x":54,"y":139,"w":532,"h":262},{"id":"c8b05faf33be6f65","type":"server-state-changed","z":"b33cbbf26c105ff6","g":"380e2c820a55ceca","name":"","server":"33803899.487d48","version":4,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"light.sanca_sala","entityidfiltertype":"exact","outputinitially":false,"state_type":"str","haltifstate":"","halt_if_type":"str","halt_if_compare":"is","outputs":1,"output_only_on_state_change":true,"for":"0","forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"outputProperties":[{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"},{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"}],"x":210,"y":180,"wires":[["1ca11cfc796ba38b"]]},{"id":"a180c69b4643b068","type":"server-state-changed","z":"b33cbbf26c105ff6","g":"380e2c820a55ceca","name":"","server":"33803899.487d48","version":4,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"input_boolean.s1","entityidfiltertype":"exact","outputinitially":false,"state_type":"str","haltifstate":"","halt_if_type":"str","halt_if_compare":"is","outputs":1,"output_only_on_state_change":true,"for":"0","forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"outputProperties":[{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"},{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"}],"x":210,"y":240,"wires":[["1ca11cfc796ba38b"]]},{"id":"314782b1bfe488ac","type":"server-state-changed","z":"b33cbbf26c105ff6","g":"380e2c820a55ceca","name":"","server":"33803899.487d48","version":4,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"input_boolean.s2","entityidfiltertype":"exact","outputinitially":false,"state_type":"str","haltifstate":"","halt_if_type":"str","halt_if_compare":"is","outputs":1,"output_only_on_state_change":true,"for":"0","forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"outputProperties":[{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"},{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"}],"x":210,"y":300,"wires":[["1ca11cfc796ba38b"]]},{"id":"eb01bb3c45e4446a","type":"server-state-changed","z":"b33cbbf26c105ff6","g":"380e2c820a55ceca","name":"","server":"33803899.487d48","version":4,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"input_boolean.s3","entityidfiltertype":"exact","outputinitially":false,"state_type":"str","haltifstate":"","halt_if_type":"str","halt_if_compare":"is","outputs":1,"output_only_on_state_change":true,"for":"0","forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"outputProperties":[{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"},{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"}],"x":210,"y":360,"wires":[["1ca11cfc796ba38b"]]},{"id":"1ca11cfc796ba38b","type":"template","z":"b33cbbf26c105ff6","g":"380e2c820a55ceca","name":"","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"{\n   \"domain\": \"homeassistant\",\n   \"service\": \"turn_{{payload}}\",\n   \"target\": {\n       \"entity_id\": [\n       \"input_boolean.s1\",\n       \"input_boolean.s2\",\n       \"input_boolean.s3\",\n       \"light.sanca_sala\"]\n    }\n}","output":"json","x":500,"y":260,"wires":[["c4c4c41d52efa5c8"]]},{"id":"33803899.487d48","type":"server","name":"Home Assistant","version":5,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"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}]
1 Like

Olá Walber, tudo bem? Eu não entendi muito bem como usar os grupos junto com o node-red, poderia exemplificar mais por favor? Vlw

Talvez eu não tenha explicado direito.

São 3 opções, duas usando os grupos no HA, sendo diferentes só na forma de criá-los dependendo do tipo das entidades e a terceira usando apenas o NR.

Se for usar o NR é só importar o fluxo e trocar as entidades

1 Like