Meilleure solution pour catégoriser des équipements pour utilisation dans des scénarios?

Bonjour,

Je suis assez nouveau dans l’univers Jeedom et pour le moment je suis très content de ce que j’arrive à mettre en place. Il y a néanmoins un point assez central sur lequel je voudrais des pistes ou des idées de réalisation : la catégorisation des équipements, dans un but programmatique.

Je cherche à faire des catégories et sous-catégories d’équipements pour pouvoir les manipuler dans mes scénarii comme un seul équipement (ex : tous les volets, volets salon uniquement, volets chambre…). je sais qu’il existe les virtuels, que j’utilise par ailleurs, mais la doc met en garde contre une utilisation trop prononcée sous peine de gréver les perfs.

Du coup : quelles sont les autres options pour réaliser ce type de groupement ?

Merci pour vos réponses !

Bonjour,

Regarde le plugin Groupe

bonjour nbonniot,

pour déclencher les scénarii tels que tu les décris, il y a une solution très élégante et prévue à cet effet qui s’appelle les types génériques.

tu peux adresser tout ou partie des équipements par type et par pièce (objet). par exemple pour tout éteindre :

idem pour les déclencheur, tu peux à l’aide d’une syntaxe particulière déclencher un scénario par type générique, c’est un sujet auquel j’avais déjà répondu ici :

https://community.jeedom.com/t/action-sur-generictype/86555

1 « J'aime »

Merci @Bison pour cette suggestion je pense que c’est exactement ce qu’il me faut. Je regarde de plus près ça et je posterais des questions dans des topics dédiés si j’en ai.

Bonne journée !

Merci @neurall , j’ai vu passer cette notion sans pour autant comprendre ce que ça recouvrait.
Si je comprends bien, on assigne un type générique à des équipements et après on peut interagir avec eux de manière groupée, en utilisant la catégorisation implicite de la hiérarchie des pièces/objets?

Après avoir regardé un peu plus, ça me semble être la solution parfaite (et native!) pour ce que je souhaite faire.
Questions corollaires :

  • Je développe plus qu’autre chose et j’affectionne le bloc code dans les scénarii. J’ai jeté un œil rapide sur la phpdoc mais pour le moment je ne vois pas comment réaliser l’équivalent de ton screenshot en code, est-ce que tu saurais?
  • La notion de type générique s’applique exclusivement à une commande ?
  • Peut-on en créer de nouveaux?

Merci

Quelques exemples que je me suis noté pour l’usage des type généric en bloc code, si ca peut d’aider :

// types generiques
$temperature    = cmd::byEqLogicIdAndGenericType($eqLogicId, 'TEMPERATURE', false)->execCmd();    // recupere la valeur du type generique TEMPERATURE d'un eq
$ouvertures        = cmd::byGenericTypeObjectId('OPENING_WINDOW', $objectId);  // recupere TOUTES les commandes de type  OPENING_WINDOW de l'objet $objectId
foreach ($ouvertures as $ouverture) {
       $value = $ouverture->execCmd()
}

Je pense que oui, il y a une notion pour les équipements mais je pense que c’est juste une aide pour affecter les bons types aux commandes. ex : si tu as un type d’équipement « Lumière », le On sera de type LIGHT_ON et le OFF de type LIGHT_OFF

Je crois que non, pas pour un « simple end-user » :wink:

1 « J'aime »

ok, avec les blocs de codes, je ne sais pas je n’ai jamais utilisé du fait que c’est très bien fait avec l’interface. j’utilise php assez souvent, mais là je vois pas trop l’intérêt pour mon niveau d’utilisation.

les types génériques sont définis par les plugins, certains par le core, tu trouveras les infos dans la section phpdoc de la documentation jeedom. on pet en ajouter mais ce n’est pas le but, à part si tu veux offrir un service global.

les types génériques sont définis pour être attachés ensuite aux commandes pour typer l’information (par exemple lumière, alarme, porte, …). d’ailleurs tu peux énumérer les infos des commandes par type générique par cmd::byGenericType(). Je n’en sais pas plus désolé, tu peux aussi regarder le github du core jeedom pour voir comment c’est implémenté dans la classe scénario.

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