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

[Store] Logitech Media Server - Retour d'état
http://forum.eedomus.fr/viewtopic.php?f=15&t=2977
Page 1 sur 4  Suivant »
Auteur:  xianghua [ 10 Août 2015 19:22 ]
Sujet du message:  [Store] Logitech Media Server - Retour d'état

Bonjour,

(Edit: Commentaire édité suite à la résolution du problème)

Il est possible de récupérer l'état d'une squeezebox (allumé/éteint/pause ou la musique en cours) sur l'Eedomus.

Avant la version 7.6, Logitech avait inclut la possibilité d'avoir ces informations dans un xml.
Si vous êtes sur Logitech media server 7.7 (Synology) ou 7.9, il suffit de télécharger une ancienne version (la 7.5) ou le répertoire xml est inclut. ici par exemple: http://downloads.slimdevices.com/Squeez ... -7.5.5.tgz
Une fois téléchargé, dézippez le avec 7-zip et récupérer le dossier xml (qui est dans le répertoire HTML)

Copiez le au même endroit sur votre serveur (SSH/FTP/SFTP/SCP/SMB etc..)
Déplacez le dossier xml dans un de vos dossiers puis

Si c'est un Synology, se connecter avec le compte admin (remplacer votredossier)
Code : Tout sélectionner
cp -R /volume1/votredossier/xml /volume1/@appstore/SqueezeCenter/HTML/


Code : Tout sélectionner
chmod 755 -R /volume1/@appstore/SqueezeCenter/HTML/xml/


Si c'est Max2play (En partant du principe que vous avez mit le dossier XML dans le home)
Code : Tout sélectionner
cp -R /home/xml /usr/share/squeezeboxserver/HTML/


Code : Tout sélectionner
chmod 755 -R /usr/share/squeezeboxserver/HTML/xml/


Si vous ne souhaitez pas utiliser le plugin sur le store, il faut faire ceci:

Créer un actionneur http sur l'eedomus:

Image

Image

Au cas ou les images sont supprimées la requête est celle ci:
http://[VAR1]:[VAR2]/xml/status_header.xml?&player=[VAR3]
Le [VAR3] correspond à l'adresse MAC de la Squeezebox
//*[local-name()='playmode'] pour l'état stopped/playing/pause (à mettre dans les valeurs brutes de l'interrupteur http)

Encore merci à hugosc pour l'aide sur le xpath :P
Auteur:  Alphonse Magova [ 10 Août 2015 22:47 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

Je te rejoins car on en a déjà discuté sur le forum et je n'ai pas pas réussi à écrire le Xpatch correctement non plus, c'est pas mon fort. :?
Auteur:  xianghua [ 11 Août 2015 07:30 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

C'est frustrant d'être près du but et de ne pas réussir!

Sinon j'imagine qu'il n'est pas possible de récupérer une valeur dans le status.html ?
Auteur:  Nico33 [ 11 Août 2015 08:59 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

Il faudrait mettre le XML dans le post pour qu'on puisse essayer de trouver le XPATH qui va bien. ;)
Auteur:  xianghua [ 11 Août 2015 20:37 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

Le voici https://www.dropbox.com/s/kk635bv950ssuxl/status.xml?dl=0
Si tu y arrives chapeau!
Auteur:  xianghua [ 12 Août 2015 14:03 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

J'ai testé sur ce site le xml http://xmltoolbox.appspot.com/xpath_generator.html
Le chemin est soit disant: /status[@xmlns='http://www.slimdevices.com/slimserver/xml']/player_status/transport/playmode

Sauf que j'ai toujours une valeur lue vide :evil:
Auteur:  xianghua [ 13 Août 2015 19:28 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

Je vois que nous ne sommes pas nombreux à utiliser des Squeezebox :(
Auteur:  thecrow06 [ 14 Août 2015 13:52 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

j'utilise des squeez et j'aimerai aussi testé l’intégration sur eedomus mais pas évident :(
Auteur:  eedomusbox [ 14 Août 2015 14:08 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

salut,
sauf erreur, il me semble que tu ne peux utiliser le xpath que via une requette http qui génère une réponse en XML.
Dans ton cas, tu as déjà le XML.
Il faudrait que tu créer un script qui lise ton fichier. En php c'est avec la fonction feof mais apparemment elle n'existe pas sur la box.
Peut être qu'avec la fonction httpQuery() cela peut fonctionner.
Le mieux étant surement de créer un script sur un raspberry ou un serveur a part afin d'utiliser toutes les fonctionnalités de php.
Auteur:  xianghua [ 14 Août 2015 16:53 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

eedomusbox a écrit:salut,
sauf erreur, il me semble que tu ne peux utiliser le xpath que via une requette http qui génère une réponse en XML.
Dans ton cas, tu as déjà le XML.
Il faudrait que tu créer un script qui lise ton fichier. En php c'est avec la fonction feof mais apparemment elle n'existe pas sur la box.
Peut être qu'avec la fonction httpQuery() cela peut fonctionner.
Le mieux étant surement de créer un script sur un raspberry ou un serveur a part afin d'utiliser toutes les fonctionnalités de php.


Merci beaucoup pour la réponse, je dispose d'un Synology pour stocker le script par contre je suis une quiche en code.... :? (me disait bien que j'aurais du faire dev dans ma vie)
C'est facile à faire?
Suite au script, y'aura un xpath à régler?

Dommage que la team Eedomus n'intègre pas nativement les Squeezebox, elles sont pourtant très souvent utilisées dans la domotique/multiroom
Auteur:  Madoma73 [ 14 Août 2015 23:01 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

Non, il te suffit de mettre cette Url http://192.168.0.5:9002/xml/status.xml dans ton capteur http pour ensuite pouvoir utiliser le xpath.
Auteur:  xianghua [ 15 Août 2015 00:07 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

Madoma73 a écrit:Non, il te suffit de mettre cette Url http://192.168.0.5:9002/xml/status.xml dans ton capteur http pour ensuite pouvoir utiliser le xpath.


Malheureusement ça ne fonctionne pas par cette solution, je n'arrive pas à trouver le bon xpath, peut être que le XML n'arrive pas à être interprété je n'en sais rien.
J'ai beau essayé pleins d'xpath différents (voir plus haut) j'ai toujours valeur lue vide
Auteur:  aurel [ 15 Août 2015 05:04 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

Non pas besoin de repasser par un script pour lire le XML, l'eedomus sait parfaitement lire un XML tout fait, il faut juste trouver le bon chemin xpath. Après si il y a des nœuds qui se nomment pareil sur une meme branche, la il faudra effectivement le passer avec pop pour le reformater
Auteur:  xianghua [ 15 Août 2015 09:43 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

aurel a écrit:Non pas besoin de repasser par un script pour lire le XML, l'eedomus sait parfaitement lire un XML tout fait, il faut juste trouver le bon chemin xpath.


C'est justement le but de ce sujet, car après avoir essayé toutes les combinaisons possibles j'en arrive toujours au même résultat.
Je pense que si ça avait été possible quelqu'un aurait déjà publié la réponse (soit à ce sujet, soit bien avant)

Si j'ai bien compris le fonctionnement //player_status/transport/playmode aurait du fonctionner ce qui n'est pas le cas :/
Voici le lien du xml https://www.dropbox.com/s/kk635bv950ssu ... s.xml?dl=0
Auteur:  Nico33 [ 15 Août 2015 22:01 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

J'ai fait des essais et je n'y arrive pas.
J'ai l'impression que le fichier XML n'est pas formaté correctement vu le XML error qu'on obtient quand on teste.
Désolé.
Auteur:  xianghua [ 15 Août 2015 22:26 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

Nico33 a écrit:J'ai fait des essais et je n'y arrive pas.
J'ai l'impression que le fichier XML n'est pas formaté correctement vu le XML error qu'on obtient quand on teste.
Désolé.


Pas de problème, merci de t'être penché sur mon problème déjà :)
Je vais du coup me pencher sur la solution du script php hébergé sur un NAS qui récupère les lignes souhaités du status.html ou status.xml.
Me reste plus qu'à apprendre le php :D

C'est possible de faire des demandes de support de produits à Connected Object?
Auteur:  thecrow06 [ 16 Août 2015 19:36 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

Je pense que le mieux serait de passé par un plugin dans lms et de crée un actionneur un peut a la methode xbmc

je regarde un peut ce qui est possible de ce coté la
Auteur:  hugosc [ 18 Août 2015 21:18 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

Pas très élégant, mais semble fonctionner :
//*[local-name()='playmode']
Auteur:  xianghua [ 19 Août 2015 05:58 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

hugosc a écrit:Pas très élégant, mais semble fonctionner :
//*[local-name()='playmode']


Oh énorme merci ça fonctionne !
Du coup c'est //*[local-name()='artist'] pour l'artiste en cours pour ceux qui souhaitent.

C'est pas très élégant car ça recherche dans tout le fichier xml plutôt que uniquement à ligne voulue?
Tant que ça fonctionne, ça me va, merci :)
Problème Squeezebox résolu!
Auteur:  Alphonse Magova [ 19 Août 2015 18:05 ]
Sujet du message:  Re: Capteur Squeezebox, aide sur le xpath

Super! depuis le temps :D

Merci! Merci!
Page 1 sur 4 Le fuseau horaire est UTC+1 heure