Moi qui suis sur jeedom depuis pas mal d’années, je croyais mais peut être à tort qu’il y a eu un moment où ça ne fonctionnait pas comme ça et que ça à ensuite été corrigé. Mais je pense plus à un bug transitoire que vraiment la feature prévue pour ça.
Dans tous les cas j’ai pris l’habitude de mettre un remonve_inat dès que je fais un scénario qui fait du DANS ou du A. Oui peut être que souvent ça ne sert à rien
Je ne saurai jamais si c’est une légende urbaine ou si ça à toujours été comme ça depuis l’origine et que c’est moi qui suis dans le faux depuis si longtemps
Tout comme toi, dans la mesure où le DANS gênerait une tâche visible dans de moteur de tâches, j’étais persuadé que relancer un même scénario sans remove_inat créait une nouvelle tâche sans pour autant remplacer la première.
Je viens de vérifier et la tâche initiale est bien substituée par la nouvelle sans avoir utilisé remove_inat.
On en apprend tous les jours
Pas du tout !
C’est dans un cas particulier surement parce qu’il peut très bien y avoir plusieurs programmations dans un scenario (rallumer dans 1h puis dans 3h puis dans 8h par ex).
Donc tu peux tout à fait avoir plusieurs inat pour la même cible dans ta base.
Il est donc plus prudent (et ça ne coute rien) d’ajouter l’action remove_inat à ton scénario avant toute reprogrammation.
C’est le scenario_element_id qui est interessant et que tu ne montres pas sur ta capture. Bien sur qu’on peut programmer plusieurs blocs A dans le même scénario, ce que disait @Mips c’est qu’un même bloc ne peut pas être programmé plusieurs fois
Ah effectivement, il faut bien s’entendre sur les définitions !
Si tu as un scenario lancé toutes les 10mn avec uniquement une seule action genre si le truc==0 alors « dans » 1h tu mets « on »,
il décalera l’enregistrement (si truc=0 à chaque fois) toutes les 10mn en effaçant l’ancien, il n’y aura donc qu’une seule programmation.
Si dans ton scenario tu as plusieurs actions, par exemple si le truc==0 tu mets « on » dans 1h mais si le truc==1 alors tu mets « on » dans 2h,
dans ce cas et si le truc valait 1 et 10mn plus tard il passe à 2, tu auras 2 enregistrements pour le même scenario_id avec des element_id différents et donc un déclenchement dans 1h ET 2h, or ce n’est pas ce que tu veux puisque la condition a changé, là il faut donc le remove_inat.
Pour faire simple sur cette incompréhension disons qu’un scenario peut avoir autant de programmations que de bloc action dans/à (element_id), s’il n’y en a qu’un seul alors pas besoin du remove_inat.
Sauf qu’il faut s’entendre sur le « même bloc » = le scénario ou bien = une action d’un scénario ?
Beaucoup vont entendre qu’on a « un bloc » programmé pour le scenario alors que non il s’agit de « un même bloc element_id DANS / A ».
Nuance importante.
On peut avoir plein de bloc A/DANS à l’intérieur d’un scénario.
On peut avoir plein d’actions dans un bloc A/DANS et ce que l’on dit ici c’est qu’un bloc A/DANS dénommé blocA sera reprogrammé si le scénario est exécuté à nouveau, la programmation (de l’ensemble des actions de ce bloc là) ne sera pas ajouté sans retirer la précédente programmation.
Idem pour un bloc A/DANS que l’on nommerait blocB ou blocC.