Dag allen,
Ik heb deze week proberen verder borduren aan mijn automatisatie voor mijn vingeradrukscanner-poortopener.
Enkele maanden geleden was ik er, na de suggestie van iemand om met Templates te werken, deze code te schrijven:
YAML:
1
2
3
4
5
6
| service: system_log.write
data:
level: error
message: >
{% if python_script_output['authorized'] == True %} "Approved!" {% else %}
"Denied!" {% endif %} |
Wat er dus in de gehele automatisatie gebeurt:
1) de vingerafdrukscanner geeft een event dat hij een vinger herkend heeft
2) het ID van de vinger gaat naar een python scriptje welke teruggeeft of deze vinger binnengelaten mag worden of niet
3) Er wordt in de System log "Approved" of "Denied" geschreven.
Dit laatste is een tijdelijke placeholder. In de praktijk wil ik er een relais mee aansturen.
In dezelfde automatisatie heb ik ook volgende Action:
YAML:
1
2
3
4
| type: toggle
device_id: 31beb(...)0cd1def7825d
entity_id: e06ff1e(...)9b5ecdd5d12
domain: switch |
Deze werkt, maar houdt dan weer geen rekening met de output van het Python script. En daar loop ik dus op vast...
Ik heb me al suf gegraven in de documentatie over Templates, maar ik heb de indruk dat men het daar voornamelijk over het aanpassen van observables heeft op basis van uitgelezen sensoren en andere inputs. De andere richting, namelijk het aansturen van actuatoren, lijkt veel minder goed beschreven.
Iemand die me met de neus in de juiste richting kan zetten? Hoe laat ik een actuator schakelen op basis van een Python-waarde in een Template?
[
Voor 0% gewijzigd door
Septillion op 23-04-2024 22:49
. Reden: Denk aan de 'yaml' bij de code tags aub! Zie topic warning en hoe deze post is aangepast. ]