Aller au contenu
ROBBEJP

Comment savoir si une scène est en cours d'exécution ?

Recommended Posts

Bonjour à tous,

 

Je suis en train de commencer à me recoder mes anciennes scènes HC2 vers ma nouvelle HC3.

 

Dans un de mes scripts, j'ai besoin de connaitre l'état d'exécution d'une scène avant de la lancer (en gros, si elle tourne, je ne fais rien).

j'utilisais fibaro:countScenes et faisait un vulgaire == 0 then ...

 

J'ai bien conscience que sur HC3:

- Les scènes sont maintenant mono-instance

- Nous avons la possibilité de la protéger ou non une nouvelle exécution auquel cas (si je ne la protège pas), l'exécution en cours sera killé (%%killOtherInstance sur HC2).

 

Je vois que le fibaro:countScenes n'est plus disponible, je peux donc utiliser quoi à la place ?

 

Merci ! :)

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Tu peux faire local maScene = api.get("/scenes/ID") puis vérifier la valeur du champ isRunning

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci pour ta réponse,

Mais je fais comment pour vérifier le champ isRunning ?

 

Si je tape ce code:

local maScene = api.get("/scenes/ID")
     print (maScene)
 
Le résultat fournis n'est que l'ID de scene. Je suppose qu'il faut reqeter autre chose pour chopper le champ dont tu parles, mais j'avoue ne pas savoir comment :)
 
[21.05.2021] [18:13:42] [DEBUG] [SCENE16]:
 
Merci !

Partager ce message


Lien à poster
Partager sur d’autres sites

Déjà il faut remplacer ID par l'ID de ta scène dans l'URL.

 

Et la variable maScene est un tableau, qui contient exactement ce que tu vois à ton écran lorsque tu tapes l'URL dans ton navigateur (format JSON)

Tout cela n'a rien de nouveau, ça fonctionnait déjà comme ça sur HC2.

 

local maScene = api.get("/scenes/ID")
if maScene.isRunning then
  -- ma scène fonctionne
else
  -- ma scene est arrêtée
end

 

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Re,

 

Merci pour ta réponse.

Celà fonctionne effectivement. Je n'ai jamais utilisé les API et viens de download la doc.

 

Merci pour ta réponse .. et dsl pour cette question basic mais qui m'a quand même fait avancer :)

 

Bon weekend.

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Cool :)

 

De façon générale, il ne faut pas hésiter à aller fouiller dans les API, ça contient des tonnes d'informations qu'on peut exploiter, une vraie mine d'or.

Partager ce message


Lien à poster
Partager sur d’autres sites

×