Bonjour à tous!
J’essaie de construire un flow node-red pour une simulation de présence.
Je ne vais pas entrer dans les détails mais j’utilise un node ‘function’ dans lequel je fais choisir depuis une liste d’entité une lumière au hazard:
const lights = [
'light.switch_lumiere_cuisine_et_terrasse_2',
'light.switch_couloir_salle_fetes_2',
'light.switch_chambre_parents',
'light.switch_wc_etage',
'light.switch_wc_rdc'
];
// Choisir lumière au hasard
const index = Math.floor(Math.random() * lights.length);
const light_id = lights[index];
// Message pour allumer la lumière
const msg_on = {
payload: {
action: 'call-service',
service: 'light.turn_on',
service_data: { entity_id: light_id }
}
};
// Message pour éteindre la lumière
const msg_off = {
payload: {
domain: 'homeassistant',
service: 'turn_off',
target: { entity_id: light_id }
}
};
// Retourner les messages correctement formatés
return [msg_on, msg_off];
La première sortie de ce node ‘function’ (ayant 2 sorties) est lié directement à un node ‘action’ qui est supposé recevoir le payload du node ‘function’ et allumer … et la deuxieme sortie est lié à un node ‘delay’ (15 minutes) qui lui est ensuite aussi connecté à un node ‘action’ qui lui va donc éteindre la lumière.
Mais ce node ‘action’ ne fonctionne pas, c’est comme s’il ignorait le payload que j’envoie depuis le node ‘function’, ou alors mon payload n’est pas bien construit.
Besoin d’aide ![]()
Merci !
Sébastien


