Sauvegarde des virtuels via scénario

Bonjour

J’avais dans un scénario un code qui permettait la sauvegarde (en automatique) de TOUS les virtuels, afin d’éviter de les ouvrir les uns après l’autre et de les sauvegarder individuellement

Je précise la demande concerne uniquement l’ouverture du virtuel puis sauvegarde. (Pas de sauvegarde en vue d’une restauration)

Ce code est :

$eqLogics = eqLogic::byType('virtual'); 
foreach($eqLogics as $eqLogic){
  if(is_object($eqLogic)){
           foreach ($eqLogic->getCmd('info') as $cmd) {
            if ($cmd->getConfiguration('calcul') == '' || $cmd->getConfiguration('virtualAction', 0) != '0') {
                    continue;
            }
            $value = $cmd->execute();
            $eqLogic->checkAndUpdateCmd($cmd, $value);
            $eqLogic->refreshWidget();
        }
  }
}

Je pense que ce code ne fonctionne pas dans la version 4.4.8.1 (et surement dans certains les versions précédentes)

Qu’en pensez vous ?

Bonjour,

Une simple question, a quoi cela sert-il concrètement ?

Cdt
Luis

1 « J'aime »

Bonjour,

Même question… à priori ca ne sert à rien.

Et ce code n’a jamais pu permettre de sauver un équipement (virtuel ou autre) quelque soit la version de jeedom.

Bonjour

Lorsque vous avez une box jeedom qui est connectée par exemple à un automate (ou régulateur) en Modbus, et sur une perte de la communication avec le bus ModBus nous avons une désynchronisation des valeurs des virtuels

Exemple :
. Communication ModBus OK et Virtuel =1
. Perte la communication
. Pendant la perte de la communication , le virtuel passe à virtuel =2 (la jeedom ne vois donc rien)
. Retour à la normal de la communication
. Le virtuel dans jeedom reste à la valeur 1 et ne passe pas à 2 jusqu’au prochain changement de valeur

Concrètement, à plusieurs reprise j’ai du faire une sauvegarde OU rafraichissement des virtuels pour avoir la mise à jour des valeurs des virtuels

Donc je vous confirme que cela sert à quelques chose en tout cas dans mon cas

Donc ce n’est pas sauvegarder dont vous avez besoin mais d’actualiser les valeurs?
Car je vous confirme que votre scénario ne fait aucune sauvegarde.

Et l’auto-actualisation ne convient pas si c’est ça le besoin?

A priori je dirai OUI pour la actualisation

Sur le virtuel l’effet de la sauvegarde et de l’actualisation a pour effet de mettre à jour les valeurs.
Donc l’actualisation convient parfaitement

l’auto-actualisation ne suffit pas car pas de mise à jour si pas de changement de valeur lié au modbus

J’ai donc modifié le titre en conséquence

Après vérification, l’actualisation du virtuel ne mets pas à jour la valeur.
Il faut donc bien faire une sauvegarde du virtuel

Don cau final est il possible via le code d’un scenario de sauvegarder l’ensemble des virtuels ?