Forum eedomus
http://forum.eedomus.fr/

Xpath : ne pas sélectionner certains caractères
http://forum.eedomus.fr/viewtopic.php?f=15&t=1357
Page 1 sur 1
Auteur:  milillicuti [ 18 Nov 2013 11:43 ]
Sujet du message:  Xpath : ne pas sélectionner certains caractères

Bonjour

J'ai quelques soucis avec l'intégration de mon Koubachi.
Je me permets de rappeler au passage que c'est objet connecté et une mer** colossale et qu'il est totalement inutile !
Bref, j'aimerai néanmoins aller au bout de l'intégration, pour le sport.

J'utilise donc l'API Koubachi et des capteurs http pour remonter les différentes valeurs.
J'ai un souci, notamment concernant la température. En effet, celle-ci est renvoyée de la sorte par l'API :
Code : Tout sélectionner
<recent-temperature-reading-value>5.9 °C</recent-temperature-reading-value>

Le problème est que l'eedomus traite l'espace blanc comme un "?", ce qui rend la valeur illisible et inexploitable.
J'ai bien essayé en ne sélectionnant que les x premiers caractères mais forcément, en fonction de la température, elle peut se retrouver tronquée.
J'ai essayé en retirant les derniers caractères mais je n'arrive toujours pas à supprimer ce maudit espace blanc.

Auriez-vous une idée ?

Merci !
Auteur:  Madoma73 [ 18 Nov 2013 12:23 ]
Sujet du message:  Re: Xpath : ne pas sélectionner certains caractères

tu les a supprimés comment tes derniers caractères, un truc du genre ? ->substring(<TASTRING>, 0, string-length(TASTRING)-4) ?

Je n'ai pas testé, mais dans l'idée ça devrait marcher...

Pierre
Auteur:  Nico33 [ 18 Nov 2013 12:26 ]
Sujet du message:  Re: Xpath : ne pas sélectionner certains caractères

Voilà comment je fais avec mon Teracom qui me renvoit la téméprature en XML sous un format qui se rapproche du tiens :
Xpath :
substring(/Monitor/Temperature1,1,string-length(/Monitor/Temperature2)-2)

Sachant qu'il n'y a pas d'espace sur mon XML.
Donc il faut que tu fasses un -3 dans le calcul de la longueur.
Donc je récupère les caractères allant de 1 à (longeur -2)

En espérant que cela te serve.
Auteur:  Nico33 [ 18 Nov 2013 12:28 ]
Sujet du message:  Re: Xpath : ne pas sélectionner certains caractères

Ben Pierre a été plus rapide :D
Et je confirme donc simplement que cela marche !
Auteur:  milillicuti [ 18 Nov 2013 12:46 ]
Sujet du message:  Re: Xpath : ne pas sélectionner certains caractères

Merci mille fois !
Maintenant j'attends que la température varie pour vérifier ;)

Pour info la ligne est donc :
Code : Tout sélectionner
substring(//smart-device-devices/smart-device-device/recent-temperature-reading-value,1,string-length(//smart-device-devices/smart-device-device/recent-temperature-reading-value)-3)
Page 1 sur 1 Le fuseau horaire est UTC+1 heure