Ce Forum passera en lecture seule en janvier 2020
Image
Merci de vous rendre sur https://community.jeedom.com maintenant pour vos prochains postes ;)

retrouver une commande depuis son ID

Pour parler de tout, et surtout de rien !
maisonclaire30
Timide
Messages : 28
Inscription : 14 août 2017, 21:28
Localisation : Nîmes

retrouver une commande depuis son ID

Message par maisonclaire30 » 13 nov. 2017, 06:59

Bonjour à tous et merci par avance pour votre aide.
Dans mes scénarii, mes commandes sont remplacées par leur ID (par exemple, #123# se substitue à la commande d'origine). L'étude du log du scénario me montre une erreur d'exécution au niveau de cette commande.
Comment puis je retrouver l'intitulé de cette commande à partir de son ID?
Peut on paramétrer le texte des scénarii de façon à ce que le texte reste sous sa forme initiale de façon à ce que sa compréhension - et donc la recherche des erreurs dans les logs reste plus aisée?

Avec toute l'indulgence due à un vieux débutant.

Avatar de l’utilisateur
Fabrice
Modérateur
Messages : 3424
Inscription : 27 oct. 2016, 22:26
Localisation : Planète terre, IDF, 93

Re: retrouver une commande depuis son ID

Message par Fabrice » 13 nov. 2017, 07:06

Bonjour,

Quand vous avez l'ID qui s'affiche sous la forme #1234#, c'est que vous avez supprimé la commande d'origine. Il faut alors aller la rechercher pour que l'ID disparaisse et laisse la place à l'équipement / commande / état, sous son nom usuel.
Helper Officiel Jeedom
- Jeedom : 3.3.36
- Protocole : Z-Wave / RFXcom / BLEA
- Raspberry Pi : Pi 3 B+ / Pi 3 B / Pi Zero W

maisonclaire30
Timide
Messages : 28
Inscription : 14 août 2017, 21:28
Localisation : Nîmes

Re: retrouver une commande depuis son ID

Message par maisonclaire30 » 13 nov. 2017, 10:32

Bonjour,
Merci pour la rapidité de votre réponse. Je me dois d'apporter une précision à la situation décrite: ce sont toutes les commandes de type "équipement/commande/état" qui ont été remplacées dans cette procédure, mais également dans d'autres scénarii. C'est pour celà que je demandais s'il était possible de paramétrer le texte des scénarii de façon à ce que le texte reste sous sa forme initiale. Je vais tester une nouvelle procédure pour voir si le problème se reproduit systématiquement.
D'autre part, la relecture de la documentation "scénario" m'a fait identifier une commande spécifique qui semble susceptible de me permettre de répondre à ce problème: il s'agit de cmd::byId($id). Pouvez vous me confirmer que je ne me trompe pas? Si c'est le cas, où faut-il écrire une telle commande dans JEEDOM (un plug-in spécifique? un éditeur?) pour obtenir la remontée de la commande d'origine.
En espérant ne pas abuser de cotre disponibilité, cordialement,
P. BERMON

maisonclaire30
Timide
Messages : 28
Inscription : 14 août 2017, 21:28
Localisation : Nîmes

Re: retrouver une commande depuis son ID

Message par maisonclaire30 » 13 nov. 2017, 15:30

Je me réponds à moi même:
je viens de trouver ceci, qui semble répondre à mon problème.

Equipement

Voici l’URL = http://#IP_JEEDOM#/jeedom/core/api/jeeApi.php?apikey=#APIKEY#&type=eqLogic&object_id=#OBJECT_ID#

object_id : ID de l’objet dont on veut récupérer les équipements

Je rentre dans mon navigateur l'URL en remplaçant les tags par leurs valeurs. Je prends bien soin de donner l'OBJECT_ID d'un objet existant. Je reçois en réponse "file not found' !!!!!

WHY! WHY! WHY!

n.b.: je l'ai fait avec les ID de plusieurs objets dont je suis sur de l'existence!!!

floman321
Timide
Messages : 397
Inscription : 28 nov. 2015, 13:18

retrouver une commande depuis son ID

Message par floman321 » 13 nov. 2017, 15:35

Plus simplement :
dans un scenario, mettre une action puis #4585# et si après sauvegarde il se transforme en nom lisible c'est ok.
Dernière édition par floman321 le 13 nov. 2017, 15:35, édité 1 fois.

maisonclaire30
Timide
Messages : 28
Inscription : 14 août 2017, 21:28
Localisation : Nîmes

Re: retrouver une commande depuis son ID

Message par maisonclaire30 » 13 nov. 2017, 15:50

Bonjour floman321,

je teste tout de suite, mais déjà, merci pour l'attention apportée à mon problème.

maisonclaire30
Timide
Messages : 28
Inscription : 14 août 2017, 21:28
Localisation : Nîmes

Re: retrouver une commande depuis son ID

Message par maisonclaire30 » 13 nov. 2017, 16:01

CA MARCHE !!!! :D :D :D :D :o :o :o :o

C'est magique!!!!

Une petite explication sur ce que fait #4585# me rendrait béat d'admiration pour le restant de la soirée!! Mais d'ores et déjà, un grand merci.

;) ;)

maisonclaire30
Timide
Messages : 28
Inscription : 14 août 2017, 21:28
Localisation : Nîmes

Re: retrouver une commande depuis son ID

Message par maisonclaire30 » 14 nov. 2017, 11:07

Bonjour à tous,

Episode suivant : tout d'abord, je confirme que la solution apportée par floman321 est pleinement opérationnelle.

Par contre, j'ai pu ainsi découvrir que plusieurs de mes commandes avaient disparues, ce qui donne raison à fabrice qui m'avait apporté une première réponse. De fait, j'ai pu vérifier que ces commandes existent toujours - en me référant à outil ---> résumé domotique --> * mais pas avec la même ID que celle que j'avais mise dans mes scénarii. Comment celà est-il possible?
Je vais donc réécrire les scénarii concernés.

Merci fabrice pour ton apport pris en compte après analyse plus approfondie de ma part.

Avatar de l’utilisateur
sheep300
Actif
Messages : 1202
Inscription : 27 mai 2015, 23:27
Localisation : la rochelle

Re: retrouver une commande depuis son ID

Message par sheep300 » 05 mars 2018, 20:43

bonjour a tous en cherchant je suis tombé sur ce sujet.
je suis dans un cas legerement different pour une raison inconnu certain de mes equipement on sauté il ne reste dans mes scenario que de #xxx# y'a t'il un moyen de retrouver quel etait l'equipement qui avait cette id car moi je ne me souvient plus de quel equipement a sauté
merci par avance
Damien

Loic74
Actif
Messages : 709
Inscription : 24 oct. 2017, 22:45
Localisation : Haute-Savoie
Contact :

Re: retrouver une commande depuis son ID

Message par Loic74 » 22 janv. 2019, 09:28

Hello
Je déterre ce sujet, j'ai la même question que sheep300
---------------------------------------
Jeedom v3.3.19, VM sur Synology RS1619xs+, Arduinos, ETH-IO32B, MQTT, TTN, LoRa, Service Pack Power Ultimate
Ma présentation
Ma piscine connectée
ioBoard

Avatar de l’utilisateur
domoggvad
Actif
Messages : 1880
Inscription : 29 avr. 2015, 16:02
Localisation : Seine-Saint-Denis (Villepinte)

Re: retrouver une commande depuis son ID

Message par domoggvad » 22 janv. 2019, 09:35

Bonjour
ça aurait était génial de retrouver tous les ID un peut du style domo widget lors de la récupération des équipements..
3 Odroid C2 (Prod - secours - test) Z83 tests: rfxcom + Z-wave- Clims DAIKIN - espeasy - thekey - Xiaomi - Telinfo - broadlink... widget V3 :viewtopic.php?f=29&t=44183&p=717810#p717810

Loic74
Actif
Messages : 709
Inscription : 24 oct. 2017, 22:45
Localisation : Haute-Savoie
Contact :

Re: retrouver une commande depuis son ID

Message par Loic74 » 22 janv. 2019, 09:46

En fait j'ai deux besoins qui surviennent parfois (peut-être non réalisables):

1/ retrouver le nom d'une commande qui a été détruite via son ID #xxx#

2/ changer l'ID d'une commande par une autre ID. Par exemple, une commande a été détruite et je dois la recréer, elle va avoir un nouvel ID. Est-il possible de lui attribuer l'ancien ID de sorte que mes scénarios et scripts n'aient pas à tous être modifiés
---------------------------------------
Jeedom v3.3.19, VM sur Synology RS1619xs+, Arduinos, ETH-IO32B, MQTT, TTN, LoRa, Service Pack Power Ultimate
Ma présentation
Ma piscine connectée
ioBoard

Avatar de l’utilisateur
loic
Administrateur
Messages : 14862
Inscription : 01 févr. 2014, 16:21

Re: retrouver une commande depuis son ID

Message par loic » 22 janv. 2019, 10:26

Bonjour,
2) déja possible dans la configuration avancée des commandes
1) sera disponible en 3.3.X
Aide nous à t'aider : mets des logs, détaille ton soucis... Vous n'aurez aucune réponse de ma part si votre demande n'est pas détaillée (log, capture d'écran lisible...) ou si vous ne postez pas dans la bonne section

Avatar de l’utilisateur
Jeandhom
Actif
Messages : 1386
Inscription : 20 oct. 2015, 17:32

Re: retrouver une commande depuis son ID

Message par Jeandhom » 22 janv. 2019, 10:56

viewtopic.php?f=132&t=31663&p=602454#p602454

Une solution en attendant la version 3.3.X

MaisonClaireNimes
Timide
Messages : 57
Inscription : 29 nov. 2018, 11:24

Re: retrouver une commande depuis son ID

Message par MaisonClaireNimes » 23 janv. 2019, 19:11

Super, merci LoÏc pour cette information et pour l'évolution envisagée. Je n'avais pas été capable de reproduire la solution proposée par floman321 qui avait pourtant marché une fois.

Avatar de l’utilisateur
kerdale
Actif
Messages : 1644
Inscription : 25 sept. 2016, 11:38
Localisation : Penn-ar-Bed

Re: retrouver une commande depuis son ID

Message par kerdale » 23 janv. 2019, 19:21

Perso pour éviter de se retrouver comme un gland quand on fait une supression hazardeuse je fait chaque jour au moment du backup une sauvegarde de toutes les commandes existantes avec leur libellé complet et leur ID numérique . Si dans l'analyse équipement, j'ai des commandes orphelines, je peux grace a ce backup journalier finir par retrouver ce qu'était cette cde orpheline .
Ca donne un fichier de ce style (extrait):

Code : Tout sélectionner

2350 : [Automatisme][IPX800_santé][Dernier refresh]
2351 : [Automatisme][IPX800_santé][Etat]
2352 : [Automatisme][IPX800_santé][All On]
2353 : [Automatisme][IPX800_santé][All Off]
2354 : [Automatisme][IPX800_santé][Reboot]
2355 : [Automatisme][IPXana1_T°Séjour][Brut]
2356 : [Automatisme][IPXana1_T°Séjour][Réel]
2357 : [Chambre droite][T°ChDrte_ipx][Brut]
2358 : [Chambre droite][T°ChDrte_ipx][Réel]
2359 : [Chambre RdC][T° Ch Rdc-ipx3][Brut]
2360 : [Chambre RdC][T° Ch Rdc-ipx3][Réel]
1 NUC & 1 RPI3/Msata V3.3.31, EnOcean, Z-wave,
Rflink, IPX800V3, carte 8 rl IP, IR_V3, Xiaomi gateway, JPI/APK/tel Android dédié, Somfy RTS, Rf433Mhz, Xiaomi, Bm280 , Broadlink,WifiLights

Loic74
Actif
Messages : 709
Inscription : 24 oct. 2017, 22:45
Localisation : Haute-Savoie
Contact :

Re: retrouver une commande depuis son ID

Message par Loic74 » 23 janv. 2019, 22:05

Bonjour,
2) déja possible dans la configuration avancée des commandes
1) sera disponible en 3.3.X
Super nouvelle pour le 1/ et pour le 2/ je ne vois pas comment cela fonctionne dans le cas où j'ai détruit la commande. Je vais dans quelle config avancée pour retrouver mes petits?
Perso pour éviter de se retrouver comme un gland quand on fait une supression hazardeuse je fait chaque jour au moment du backup une sauvegarde de toutes les commandes existantes avec leur libellé complet et leur ID numérique
Excellent. Tu fais cela via un script? Peux-tu m'en dire plus?
---------------------------------------
Jeedom v3.3.19, VM sur Synology RS1619xs+, Arduinos, ETH-IO32B, MQTT, TTN, LoRa, Service Pack Power Ultimate
Ma présentation
Ma piscine connectée
ioBoard

Avatar de l’utilisateur
kerdale
Actif
Messages : 1644
Inscription : 25 sept. 2016, 11:38
Localisation : Penn-ar-Bed

Re: retrouver une commande depuis son ID

Message par kerdale » 24 janv. 2019, 11:25

Je ne suis pas l'auteur du code. Je l'ai trouvé sur le fofo mais ou? Pas réussi à retrouver, mais je pense que c'était avant la bascule du fofo.
Donc à adapter pour le répertoire de stockage.
J'ai ce code en début d'un scénario à 03H30 (horaire avant le backup Jeedom à 03H45)
Une fois le code terminé, le scénario copie sur un serveur distant le fichier jeedomcmd.txt en changeant le nom pour l'horodater et le rendre unique.
(En fait j'utilise le gros disque disque de Kodi que je démarre si Kodi est off line au moment du backup, ce qui est généralement le cas: backup Id à 03H00 et backup Jeedom à 03H45)

Code : Tout sélectionner

$backupdir = '/var/www/html/zzzbackuperasecmd';
$backupfile = '/jeedomcmd.txt';
$cmdlistold = array();
$cmdlistnew = array();

if (!is_dir($backupdir)) {
  $scenario->setLog('Création du répertoire ' . $backupdir);
  mkdir($backupdir, 0775);
}
if (file_exists($backupdir . $backupfile)) {
  $scenario->setLog('Récupération de la liste dans ' . $backupdir . $backupfile);
  $jeedomcmd = fopen($backupdir . $backupfile, 'r');
  while (($buffer = fgets($jeedomcmd)) !== false) {
    $buffer = trim($buffer,"\n");
    $cmdlistold[] = $buffer;
  }
  fclose($jeedomcmd);
}

foreach(cmd::all() as $cmd) {
  $scenario->setLog('bdd ' . $cmd->getId() . ' : ' . $cmd->getHumanName());
  $cmdlistnew[] = $cmd->getId() . ' : ' . $cmd->getHumanName();
}

$cmdlistdiff = array_diff($cmdlistnew, $cmdlistold);
$cmdlistnew = array_merge($cmdlistold, $cmdlistdiff);
asort($cmdlistnew,SORT_NUMERIC);

$jeedomcmd = fopen($backupdir . $backupfile, 'w+');
foreach($cmdlistnew AS $ligne) {
  $scenario->setLog('bck ' . $ligne);
  fputs($jeedomcmd,$ligne."\n");
}
fclose($jeedomcmd);
avec:
$backupdir = '/var/www/html/zzzbackuperasecmd';
l'emplacement ou va etre stocker le fichier backupID
$backupfile = '/jeedomcmd.txt';
le nom du fichier backup.
Attention comme Il sera écrasé par le backupID suivant

Je le renomme avec un script

Code : Tout sélectionner

#!/bin/bash
DAY=$(date +%d)
MONTH=$(date +%m)
YEAR=$(date +%Y)
sudo cp /var/www/html/zzzbackuperasecmd/jeedomcmd.txt  /home/jeedom/jeedom/backup/jeedomcmd.txt  
sudo cp -a /home/jeedom/jeedom/backup/jeedomcmd.txt /home/jeedom/jeedom/backup/backupcdeJ100-$YEAR-$MONTH-$DAY.txt
sudo rm /home/jeedom/jeedom/backup/jeedomcmd.txt
sudo rm /var/www/html/zzzbackuperasecmd/jeedomcmd.txt
soit on le laisse sur le même disque que Jeedom ( :( !!, Pour ne pas me casser la tête, j'utilise le super plugin datatranfert de femsoft pour le poser sur le disque de kodi ou ailleurs ....
1 NUC & 1 RPI3/Msata V3.3.31, EnOcean, Z-wave,
Rflink, IPX800V3, carte 8 rl IP, IR_V3, Xiaomi gateway, JPI/APK/tel Android dédié, Somfy RTS, Rf433Mhz, Xiaomi, Bm280 , Broadlink,WifiLights

Loic74
Actif
Messages : 709
Inscription : 24 oct. 2017, 22:45
Localisation : Haute-Savoie
Contact :

Re: retrouver une commande depuis son ID

Message par Loic74 » 24 janv. 2019, 12:44

Merci Kerdale, je vais tester
---------------------------------------
Jeedom v3.3.19, VM sur Synology RS1619xs+, Arduinos, ETH-IO32B, MQTT, TTN, LoRa, Service Pack Power Ultimate
Ma présentation
Ma piscine connectée
ioBoard

Avatar de l’utilisateur
Jeandhom
Actif
Messages : 1386
Inscription : 20 oct. 2015, 17:32

Re: retrouver une commande depuis son ID

Message par Jeandhom » 24 janv. 2019, 13:55

Jeandhom a écrit :
22 janv. 2019, 10:56
viewtopic.php?f=132&t=31663&p=602454#p602454

Une solution en attendant la version 3.3.X
Le script original est là.

Répondre

Revenir vers « Discussions Générales »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 3 invités