Avant toute chose merci de (re)prendre connaissance de la charte et de la respecter.
Pour résumer :
- Avant de poser une question, je cherche si la réponse existe
- Je suis poli, courtois et je respecte tout un chacun sur le forum
- Si un post m'agace : je m'en éloigne plutôt que de répondre d'une façon qui pourrait être mal interprétée


Il n'est jamais du luxe que de rappeler des choses simples :
Courtoisie, amabilité, politesse et bonne humeur sont les maîtres mots pour un forum sympathique, bienveillant et accueillant :)

Le groupe des Helpers est present pour vous aidez, n'hésitez pas à poser des questions ;)

Toute la communauté vous remercie

Affichage valeur du script

Réservé à l'utilisation et la programmation de scripts dans JEEDOM
asterix
Timide
Messages : 9
Inscription : 30 juil. 2015, 11:05

Affichage valeur du script

Message par asterix » 17 déc. 2018, 21:57

Bonjour,

J'ai fait un petit script qui récupère des valeurs sur un site (netatmo mais peu importe). Jusque la pas de problème, je récupère les valeurs, je les affiche, les logue, etc. Je souhaite maintenant les intégrer dans un tableau dans mon design. J'ai fait le tableau, mais les valeurs s'affichent comme une jauge, je ne voudrait que la valeur en chiffre.
Une idée de comment je pourrais ne garder que le chiffre a afficher ?

Merci d'avance.

Avatar de l’utilisateur
Salvialf
Helper
Messages : 1227
Inscription : 24 févr. 2018, 09:37
Contact :

Re: Affichage valeur du script

Message par Salvialf » 17 déc. 2018, 22:56

Salut,

Tu as essayé de changer le widget par défaut par "tile"? Dans la configuration de la commande->affichage
VM Jeedom 3.2.16 sous Proxmox 5.4 sur NUC5i5RYH (Debian 9.9)
Helper Officiel Jeedom
Widgets développés
Téléchargement d'icônes domotique (Topic Forum)

asterix
Timide
Messages : 9
Inscription : 30 juil. 2015, 11:05

Re: Affichage valeur du script

Message par asterix » 18 déc. 2018, 15:07

Ok je viens de trouver. C'est dans les paramètres avancées de chaque commande du script. Merci !!

Sinon autre questions relative a mon script. En fait c'est un fichier php que j'ai mis sur mon RPi ou il y a mon jeedom, ce script PHP s'identifie chez netatmo, récupérer toutes les valeurs que je veux et renvoie un XML. et dans jeedom, j'ai fais une commande par mesure, qui appelle ce script, et recupère dans le XML la valeur souhaitée.

C'est pas super optimisé, puisqu'on appelle plein de fois le php qui se connecte plein de fois chez Netatmo alors que a chaque fois il récupère toutes les valeurs.
Y aurait-il moyen dans jeedom de récupérer plusieurs valeurs d'un coup depuis un XML ?

Avatar de l’utilisateur
tomdom
Actif
Messages : 915
Inscription : 14 nov. 2016, 05:46

Re: Affichage valeur du script

Message par tomdom » 23 déc. 2018, 19:11

Bonjour,
asterix a écrit :
18 déc. 2018, 15:07

Sinon autre questions relative a mon script. En fait c'est un fichier php que j'ai mis sur mon RPi ou il y a mon jeedom, ce script PHP s'identifie chez netatmo, récupérer toutes les valeurs que je veux et renvoie un XML. et dans jeedom, j'ai fais une commande par mesure, qui appelle ce script, et recupère dans le XML la valeur souhaitée.

C'est pas super optimisé, puisqu'on appelle plein de fois le php qui se connecte plein de fois chez Netatmo alors que a chaque fois il récupère toutes les valeurs.
Y aurait-il moyen dans jeedom de récupérer plusieurs valeurs d'un coup depuis un XML ?
Tu pourrais faire un virtuel qui contient toutes tes mesures. Tu modifies ton script pour que lorsqu'il récupère le xml, il mette à jour chaque info du virtuel via l'API json rpc. L'appel ressemble à ça :

Code : Tout sélectionner

http://localhost//core/api/jeeApi.php?plugin=virtual&apikey=TACLEAPI&type=virtual&id=IDDELAMESURE_DANS_LE_VIRTUEL&value=LAVALEUR
Il y a 10 catégories de personnes, celles qui connaissent le binaire et les autres
.

Avatar de l’utilisateur
Salvialf
Helper
Messages : 1227
Inscription : 24 févr. 2018, 09:37
Contact :

Re: Affichage valeur du script

Message par Salvialf » 26 déc. 2018, 22:30

Bonsoir à vous,

Je rebondis sur ce sujet car je bloque sur l'intégration de données issues d'un fichier xml dans jeedom.

Je récupère les données des sessions plex par un script php et, comme il s'agit d'attributs, le script convertie le xml via un fichier xsl pour en récupérer les valeurs. Le script php fonctionne parfaitement cependant quand je tente de récupérer les valeurs du fichier xml généré via un script xml j'ai l'erreur "string could not be parsed as xml".

J'ai essayé avec un fichier xml très basique pour voir si le problème venait de mon fichier mais j'ai toujours la même erreur.

@asterix: je me demandais donc comment tu fais pour récupérer les valeurs de ton fichier xml par script?

@tomdom: j'ai voulu essayer ta solution mais la manière dont mon fichier xml est généré ne doit pas me permettre de transférer les valeurs dans un virtuel... ou je ne m'y prend pas comme il faut?

Bref votre aide serait la bienvenue. Merci d'avance
VM Jeedom 3.2.16 sous Proxmox 5.4 sur NUC5i5RYH (Debian 9.9)
Helper Officiel Jeedom
Widgets développés
Téléchargement d'icônes domotique (Topic Forum)

Avatar de l’utilisateur
tomdom
Actif
Messages : 915
Inscription : 14 nov. 2016, 05:46

Re: Affichage valeur du script

Message par tomdom » 27 déc. 2018, 11:53

Bonjour,

Il faudrait que tu publies ton script. Ça serait plus facile je pense
Il y a 10 catégories de personnes, celles qui connaissent le binaire et les autres
.

Avatar de l’utilisateur
Salvialf
Helper
Messages : 1227
Inscription : 24 févr. 2018, 09:37
Contact :

Re: Affichage valeur du script

Message par Salvialf » 27 déc. 2018, 12:11

Bonjour @tomdom,
Effectivement ça peut aider (j"étais sur le tél hier soir).

Donc, le fichier php avec IP et TOKEN renseignés:

Code : Tout sélectionner

<?php      

  	$FichierXML="http://192.168.0.XX:32400/status/sessions?X-Plex-Token=XXXXXXXXXXXXXXXX";
	$FichierXSL="/var/www/html/montheme/Scripts/Plex/XMLPlex.xsl";

	$DocDOM_XML = new DomDocument();
	$DocDOM_XML->load($FichierXML);
	
	$DocDOM_XSL = new DomDocument();
	$DocDOM_XSL->load($FichierXSL);

	$Processus = new XSLTProcessor;
	$Processus->importStyleSheet($DocDOM_XSL);
	
    $XML_Resultat = $Processus->transformToXML($DocDOM_XML);
	file_put_contents('/var/www/html/montheme/Scripts/Plex/PlexValues.xml', $XML_Resultat);
    
?>
Le fichier XMLPlex.xsl:

Code : Tout sélectionner

<?xml version="1.0" encoding="UTF-8" ?> 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" encoding="UTF-8" indent="yes" /> 

<xsl:template match="MediaContainer"> 
    <MediaContainer>
      <xsl:for-each select="Video"> 
            <Video>
              <NumBiblio><xsl:value-of select="@librarySectionID"></xsl:value-of></NumBiblio>
              <NameBiblio><xsl:value-of select="@librarySectionTitle"></xsl:value-of></NameBiblio>
              <Titre><xsl:value-of select="@title"></xsl:value-of> (<xsl:value-of select="@year"></xsl:value-of>)</Titre>
              <Duree><xsl:value-of select="@duration"></xsl:value-of></Duree>
              <EtatLecture><xsl:value-of select="Player/@state"></xsl:value-of></EtatLecture>
              <IPClient><xsl:value-of select="Player/@address"></xsl:value-of></IPClient>
              <TypeAcces><xsl:value-of select="Session/@location"></xsl:value-of></TypeAcces>
              <Plateforme><xsl:value-of select="Player/@platform"></xsl:value-of></Plateforme>
              <Machine><xsl:value-of select="Player/@device"></xsl:value-of></Machine>
            </Video>
      </xsl:for-each>          
	  <xsl:for-each select="Track"> 
            <Track>
              <NumBiblio><xsl:value-of select="@librarySectionID"></xsl:value-of></NumBiblio>
              <NameBiblio><xsl:value-of select="@librarySectionTitle"></xsl:value-of></NameBiblio>
              <Titre><xsl:value-of select="@title"></xsl:value-of> (<xsl:value-of select="@year"></xsl:value-of>)</Titre>
              <Duree><xsl:value-of select="@duration"></xsl:value-of></Duree>
              <EtatLecture><xsl:value-of select="Player/@state"></xsl:value-of></EtatLecture>
              <IPClient><xsl:value-of select="Player/@address"></xsl:value-of></IPClient>
              <TypeAcces><xsl:value-of select="Session/@location"></xsl:value-of></TypeAcces>
              <Plateforme><xsl:value-of select="Player/@platform"></xsl:value-of></Plateforme>
              <Machine><xsl:value-of select="Player/@device"></xsl:value-of></Machine>
            </Track>       
	  </xsl:for-each>
	</MediaContainer>
</xsl:template>
</xsl:stylesheet>
le fichier PlexValues.xml généré:

Code : Tout sélectionner

<?xml version="1.0" encoding="UTF-8"?>
<MediaContainer>
  <Video>
    <NumBiblio>1</NumBiblio>
    <NameBiblio>Films</NameBiblio>
    <Titre>Skyscraper (2018)</Titre>
    <Duree>6144133</Duree>
    <EtatLecture>playing</EtatLecture>
    <IPClient>192.168.0.XX</IPClient>
    <TypeAcces>lan</TypeAcces>
    <Plateforme>Opera</Plateforme>
    <Machine>Windows</Machine>
  </Video>
</MediaContainer>
Et le script:
ScriptPlex.jpg
ScriptPlex.jpg (335.59 Kio) Consulté 275 fois
Ce qui m'étonne c'est qu'en testant avec l'exemple XML simple de la doc script j'ai la même erreur:

Code : Tout sélectionner

<root>
    <led0>1</led0>
    <leds>
      <led1>toto</led1>
    </leds>
</root>
donc le problème doit venir de chez moi je pense mais après moultes tentatives de résolution je sèche. Pour info si j'essaye d'accéder à "http://192.168.0.XX/montheme/Scripts/Pl ... Values.xml" via mon navigateur j'obtiens le joli message "Forbidden
You don't have permission to access /montheme/Scripts/Plex/PlexValues.xml on this server
" alors qu'en faisant la même chose avec "http://192.168.0.XX/montheme/Scripts/Plex/XMLPlex.xsl" le fichier se télécharge immédiatement.
VM Jeedom 3.2.16 sous Proxmox 5.4 sur NUC5i5RYH (Debian 9.9)
Helper Officiel Jeedom
Widgets développés
Téléchargement d'icônes domotique (Topic Forum)

asterix
Timide
Messages : 9
Inscription : 30 juil. 2015, 11:05

Re: Affichage valeur du script

Message par asterix » 12 janv. 2019, 18:28

Mon fichier php fait un simple echo du xml.

Ok merci pour l'idée des virtuels. Et je me débrouille avec cron pour lancer mon script a intervalle régulier du coup ?

Répondre

Revenir vers « [Plugin officiel] Scripts »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 0 invité