Affichage état d'un scénario sur un design

Bonjour,

Est-il possible d’afficher l’état d’un scénario sur un design ?
A savoir si le scénario est actif ou inactif.

1

Pas besoin de me dire : clique sur ajouter scénario et me retrouver avec ça :slight_smile:

2

Merci d’avance.

bonjour,
Si le scénario est inactif l’équipement n’apparait pas. Par contre j’imagine qu’avec un virtuel tu dois pouvoir récupérer l’info scénario actif / inactif

Salut,
Déjà essayé mais àpartir du moment ou je recherche un scénario, je n’ai rien comme possibilté.
Cdt,

Et avec une commande scénario dans un virtuel (solution non testée par mes soins)

scenario(scenario) : Renvoie le statut du scénario. 1 : En cours, 0 : Arrêté, -1 : Désactivé, -2 : Le scénario n’existe pas, -3 : L’état n’est pas cohérent. Pour avoir le nom “humain” du scénario, vous pouvez utiliser le bouton dédié à droite de la recherche de scénario.

Source https://doc.jeedom.com/fr_FR/core/4.0/scenario

EDIT: Suite à test à l’arrache la commande semble non fonctionnelle dans un virtuel

La seule solution que je vois est de mettre à jour un virtuel lors d’une action activant / désactivant un scénario

Bonjour,

Dans la doc scénario j’ai trouvé ceci mais je n’ai aucune idée ou le placer.

Accès aux scénario

$scenario->getIsActive(); : Retourne l’état du scénario.

Une idée?

Cdt,

Bonjour, dans un scénario qui met à jour une commande info. Le scénario se declenche sur laction qui active / desactive l’état du scénario à superviser.

@anon45999279 bonjour un html ou plug html display avec api js en script tu peux le faire avec plein de truc (log,histo,…) en plus ça s’actu tous seul.
faut que je retrouve dans mon bazarre. je crois l’avoir mis sur le forum

Salut @ajja17orange
Ce serait cool si tu retrouves ça :wink:
Merci d’avance


si tu clic sur la ligne de la console tu as encore plus d’info


<div>get scenario <span class="myrow"></span>

	<script>
        var sce1=15;
      
jeedom.scenario.update[sce1] = function(_options) {
      jeedom.scenario.get ({ 
id: sce1,
    success:  function(resultat){
        console.log(resultat);
 $('.myrow').empty().text(resultat.isActive);

		}
      })
    }
      jeedom.scenario.update[sce1](); 

	
	</script>
</div>

la ligne console.log pour voir l’element isActive « tu supprimes ensuite »

la variable sce1 pour le scenario 15

à toi de peaufiner icone ou/et …

exemple texte et couleur
image

<div>le Scenario <span class="myname"></span>
	<script>
        var sce1=15;    
jeedom.scenario.update[sce1] = function(_options) {
      jeedom.scenario.get ({ 
		id: sce1,
		success:  function(resultat){      
			$('.myname').empty().text(resultat.name).append(" est ");
			var state = resultat.isActive == 1?"<span style=color:green;>en marche</span>":"<span style=color:red;>Arrêté</span>";
			$('.myname').append(state);
			}
      })
}
      jeedom.scenario.update[sce1](); 
	</script>
</div>
1 « J'aime »

Salut @ajja17orange

J’ai utilisé le code ci-dessous qui fonctionne en remplaçant l’id de mon scénario et t’en remercie!

1

Maintenant, dans ce code qui me donne le nom du scénario ( et c’est très bien) je voudrai pouvoir éditer le code ci-dessus pour n’avoir que le " arrêté" ou « en marche ».

Aussi si c’est possible pour toi, peux-tu partager ce code avec icônes à la place du texte ?

Merci beaucoup

Cdt,

Par contre il y a un bug lorsque j’insère 2 X ce code avec ID différente.
Il me rèpete le même scénario.
2

J’ai résolu cela en changeant le second code en remplaçant:

<span class="myname"></span>

PAR

<span class="myname2"></span>

Ainsi que :

sce1

PAR:

sce2
<div>le Scenario <span class="myname2"></span>
	<script>
        var sce2=15;    
jeedom.scenario.update[sce2] = function(_options) {
      jeedom.scenario.get ({ 
		id: sce2,
		success:  function(resultat){      
			$('.myname2').empty().text(resultat.name).append(" est ");
			var state = resultat.isActive == 1?"<span style=color:green;>en marche</span>":"<span style=color:red;>Arrêté</span>";
			$('.myname2').append(state);
			}
      })
}
      jeedom.scenario.update[sce2](); 
	</script>
</div>

1

tu peux faire toi même, apprendre faire des essais
c’est du jquery en script « un language »
genre .empty() c’est « efface »
.append() « ajjoute » à droite

> <div><span class="myname"></span>
	<script>
        var sce1=15;    
jeedom.scenario.update[sce1] = function(_options) {
      jeedom.scenario.get ({ 
		id: sce1,
		success:  function(resultat){      
			var state = resultat.isActive == 1?"<span style=color:green;>en marche</span>":"<span style=color:red;>Arrêté</span>";
			$('.myname').empty().append(state);
			}
      })
}
      jeedom.scenario.update[sce1](); 
	</script>
</div>

peut être que tu comprendras mieux le code de cette maniere

<div><span class="myname"></span>
	<script>
        var sce1=15;    
jeedom.scenario.update[sce1] = function(_options) {
      jeedom.scenario.get ({ 
		id: sce1,
		success:  function(resultat){     


               if (resultat.isActive == 1) {
        $('.myname').empty().append("en marche")
    } else {
		$('.myname').empty().append("Arrêté")

 }
			}
      })
}
      jeedom.scenario.update[sce1](); 
	</script>
</div>

Aussi si c’est possible pour toi, peux-tu partager ce code avec icônes à la place du texte ?

<div><span class="myname"></span>
	<script>
        var sce1=15;    
jeedom.scenario.update[sce1] = function(_options) {
      jeedom.scenario.get ({ 
		id: sce1,
		success:  function(resultat){     
			if (resultat.isActive == 1) {
			$('.myname').empty().append('<i style="font-size:20px;color:green;" class="fas fa-check"></i>')
			} else {
			$('.myname').empty().append('<i style="font-size:20px;color:red;" class="fas fa-times"></i>')
			}
		}
	})
}
      jeedom.scenario.update[sce1](); 
	</script>
</div>

Par contre il y a un bug lorsque j’insère 2 X

c’est pas un bug, tu as compris le principe car on est dans du cousu main

on peux faire du générique mais c’est pas le but là ; lorsqu’on joue avec le html on fait se qu’on veux et tu as la base, je vais te perdre dans les explications qui te seront pas forcement utile, et qui vont compliqué inutilement ta compréhension.

tu peux faire 1 html pour tes 2 scénarios aussi. cest toi qui voit

1 « J'aime »

Salut @ajja17orange

C’est juste parfait! Exactement ce que je cherchais.
J’ai lu les codes et ai compris plusieurs choses grâce à ta patience et tes explications.

Top :+1: merci

2 « J'aime »

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.