Bonjour,
Etant novice, je demande votre aide afin de récupérer le ficher xml « status.xml » sous forme d’un tableau, ou une autre possibilité.
J’ai déjà réussi à récupérer les valeurs sous forme de frame mais ce n’est pas explicatif du tout.
Comment faire ?
Que voulez-vous dire par « récupérer le fichier status.xml
sous forme de tableau »?
C’est-à-dire j’ai toutes les valeurs sous forme d’une « ligne » et j’aimerai par exemple mettre dans un tableau que le premier 0 ou 1, veut dire si la led0 est allumé ou non
1 « J'aime »
Ce n’est pas possible en utilisant seulement du HTML.
Il faut utiliser JavaScript pour faire une requête AJAX afin de récupérer les informations de « status.xml
» et de l’utiliser pour créer/remplir une « table
» dans votre HTML.
Pourriez-vous me donner quelques conseils pour y arriver ?
Bonsoir,
La réponse risque d’être très différente selon le contexte dans lequel l’extraction doit être réalisée.
Votre question est trop vague.
Quel est votre objectif ? Récupérer l’information qu’une LED au moins est allumée ? Pour l’afficher dans une page html ou pour le sauvegarder dans une base de données ?
Il est possible d’obtenir les informations depuis d’autres flux que status.xml, certains pourraient être plus adaptés à votre contexte.
Préciser votre demande permettrait d’apporter plus simplement des réponses.
2 « J'aime »
Bonjour @JorisF,
Je ne sais pas si ça peut aider, mais il y a un petit moment j’avais fait un bout de code pour récupérer les données xml de l’état des relais en php.
En l’adaptant un peu, vous pourrez récupérer tout ce que vous souhaitez:
<?
$IPXIP = "http://192.168.1.90"; // ADRESSE IP DE IPX
$nombre_relais = 7; // NOMBRE DE RELAIS de 0 a 7 soit 8 relais
$xml = simplexml_load_file("$IPXIP/status.xml");
$i = 0;
while($i<$nombre_relais)
{
$led = "led$i"; // Attention la numerotation des relais commence a 0
$xml_led = (string)$xml->$led;
echo "Relais $i est a $xml_led <br>'";
$i++;
}
?>
Cdt
Bonjour
J’ai un projet d’une maison domotique à faire, je devrais dans une page (de mon choix) récupérer les données de l’IPX V3 et par la suite l’intégrer dans une base de données.
Je ne savais pas qu’il était possible sans passer par le fichier status.xml.
Merci de votre réponse @Teebex
Bonjour,
J’ai essayé votre code, il semblerait qu’il y ait un problème.
Merci quand même @Thierry15

@Thierry15 Excusez-moi, après quelques modifications votre code marche, un grand merci à vous.
1 « J'aime »
@JorisF pouvez-vous indiquer ce que vous avez modifié dans le code car j’ai essayé et j’ai le même pb que vous au départ ? J’ai bien ajouté « /user » avant « /status.xml » mais cela ne suffit pas à résoudre le pb.
Merci d’avance.
Tenez @PatLeHibou
<?php
$IPXIP = "http://10.129.103.157"; // ADRESSE IP DE IPX
$nombre_relais = 7; // NOMBRE DE RELAIS de 0 a 7 soit 8 relais
$xml = simplexml_load_file("$IPXIP/status.xml");
$i = 0;
while($i<$nombre_relais)
{
$led = "led$i"; // Attention la numerotation des relais commence a 0
$xml_led = (string)$xml->$led;
echo "Relais $i est a $xml_led <br>";
$i++;
}
?>
Merci @JorisF, j’ai bien inclus votre code en remplaçant votre IP par la mienne, mais ça ne marche pas plus chez moi.
Cela dit je me trompe peut-être sur la façon de l’utiliser. J’ai inclus ce morceau de code dans un widget HTML de l’IPX800V4. Et je reçois ça en retour :

Donc, bug…
bonjour,
ce n’est pas du javascript, c’est du PHP. 
cdt
1 « J'aime »
Bonsoir @JorisF ,
effectivement, il y a une erreur, je ne compte plus les plantages suite a des guillemets et autres apostrophes mal placées.
Le bon côté est que vous ayez trouvé le bug par vous-même 
Bonsoir @JorisF,
L’IPX V4 offre une API qui permet de récupérer sélectivement les données en JSON, et donc très simple à manipuler.
Le fragment PHP proposé par Thierry15 me semble bien adapté dans votre cas.
Bon développement,
Bonsoir @fgtoul,
Au risque de passer pour une buse, on ne peut pas mettre du PHP à cet endroit-là ? Je découvre cet univers en ayant lâché la programmation (en Pascal) il y a 30 ans donc je suis loin loin loin de maîtriser, mais j’ai qq bases quand même.
La raison est peut-être simplement que l’IPX800 ne comporte pas de serveur PHP ce qui fait que le code HTML nécessaire n’est pas généré.
Le code proposé serait donc adapté pour un serveur Web et PHP se situant ailleurs (Box domotique ou autre) et récupérant les infos de l’IPX en JSON ou autre, mais pas pour l’IPX directement ?
Est-ce ça ?
Cdlt
Il n’y a pas de question idiote 
Non. Dans le widget HTML, on ne peut y mettre que du HTML ou du JavaScript (qui retourne du HTML).
Le widget HTML ne peut comporter que du code éxecutable cote client.
L’IPX 800 n’a en effet pas de serveur PHP 
Tout à fait 
3 « J'aime »
Merci @ZogStriP pour ces éclaircissements…