Page 1 sur 127

[Sujet officiel] Plugin sonos

Publié : 16 avr. 2015, 19:35
par loic
Bonjour,

Je viens de publier un plugin Sonos, j'ai fait ca en 1 journée donc tout n'est pas finie ou supporté, voila ce qui marche :
- statuts
- piste en cours
- play/pause/stop/suivant/précédent
- répéter/aléatoire
- gestion du volume
- affichage de la miniature
- gestion de la liste de lecture en cours (en interface seulement pas possible avec les scénarios)
- lancement d'une playlist (depuis un scénario aussi), pour l'instant il y a un bug lors de l'envoi d'une playlist par jeedom, ca marche mais on a plus de titre ni d'image, même dans l'appli sonos
- découverte auto des play1/3/5/Connect:Connect AMP/Playbar
- widget mobile (pas de contrôle de playlist ou de liste en cours par contre)

Ce qui manque :
- tts (pas facile car il faut un moyen de partager le fichier...)

ATTENTION pour avoir du temps réel sur l'état des sonos je fais du pulling permanent c'est donc assez consommateur mais comme ça dès qu'une musique est lancé jeedom a tout de suite le retour

Pour vous donner un aperçu :
pasted_image_at_2015_04_16_19_23.png
pasted_image_at_2015_04_16_19_23.png (62.13 Kio) Consulté 7493 fois

Re: Plugin sonos

Publié : 16 avr. 2015, 20:34
par netcubik
Merci pour ton boulot, penses tu gère la mise en veille ?

Re: Plugin sonos

Publié : 16 avr. 2015, 20:45
par loic
Je ne savais même pas que les sonos pouvait être mis en veille et je n'ai rien la dessus dans ma lib donc je ne pense pas.

Re: Plugin sonos

Publié : 16 avr. 2015, 21:47
par netcubik
Oui tu peux choisir une horloge de veille, 15/20/30 minutes...

Re: Plugin sonos

Publié : 16 avr. 2015, 21:55
par loic
J'ai rien la dessus, j'ai juste un truc alarm mais je suis pas sur que ca soit ce que tu veuilles, mais tu peux faire un scénario pour coupé la musique

Re: Plugin sonos

Publié : 16 avr. 2015, 22:04
par bbreton
Super !!!

Re: Plugin sonos

Publié : 16 avr. 2015, 23:28
par xtrem57
Cool! Je vais pouvoir m'occuper ce week-end

Re: Plugin sonos

Publié : 17 avr. 2015, 06:03
par Jamsta
Excellent Loïc, merci [SMILING FACE WITH SMILING EYES]

Envoyé de mon HTC One_M8 en utilisant Tapatalk

Re: Plugin sonos

Publié : 17 avr. 2015, 12:25
par xapi
loic a écrit :J'ai rien la dessus, j'ai juste un truc alarm mais je suis pas sur que ca soit ce que tu veuilles, mais tu peux faire un scénario pour coupé la musique
L'horloge de veille est effectivement "juste" un timer qui coupe la musique au about d'un certain temps, programmé directement au niveau du Sonos.

Mais, comme pour la fonction réveil d'ailleurs, il n'y a pas forcément un intérêt énorme puisque dans l'esprit d'une installation domotisée, toute l'intelligence est dans le serveur et non pas déporté vers les objets connectés qui sont simplement asservis.

Re: Plugin sonos

Publié : 17 avr. 2015, 16:48
par xapi
loic a écrit :Bonjour,

Ce qui manque :
- tts (pas facile car il faut un moyen de partager le fichier...)

ATTENTION pour avoir du temps réel sur l'état des sonos je fais du pulling permanent c'est donc assez consommateur mais comme ça dès qu'une musique est lancé jeedom a tout de suite le retour
Pour le polling, je crois bien que c'est comme ça qu'est réalisé le plugin officiel sonos sur HC2, par contre un utilisateur dénommé krikoff a trouvé une autre façon de faire, peut être peut on jetter un oeil.
De ce que j'en ai compris il utilise les " écouteurs UPNP" ce qui évite donc le polling, ça te parle @loic ?

Si on arrive à avoir des plugin au niveau de ce genre de chose, ça va commencer à être un client plus que sérieux Jeedom ;)

Re: Plugin sonos

Publié : 17 avr. 2015, 17:12
par loic
Il faudrait que j'écoute l'upnp c'est pareil a mon niveau mais la je viens de changer au lieu d'interroger les sonos toute les secondes je le fait toute les 3 secondes et je tombe à moins de 3% d'utilisation CPU (au lieu de 10%) et niveau utilisation c'est pas gênant.

La j'ai plus que le TTS mais j'attend que ca soit intégré dans la lib que j'utilise et le bug des playlists et j'attend aussi que ca soit corrigé dans la lib.

Re: Plugin sonos

Publié : 18 avr. 2015, 10:58
par loic
Le plugin est en ligne

Re: Plugin sonos

Publié : 18 avr. 2015, 11:07
par xapi
t'abuses je devais tondre la pelouse ce matin, pas jouer avec le plugin Sonos :twisted:

:lol:

[edit] installé, error 500 internal error à l'activation

=> je vais tondre

[edit2] j'ai pas résisté: ça passe à la 2è tentative d'activation mais cette fois erreur 500 sur la recherceh des équipements Sonos
=> je vais vraiment tondre :mrgreen:

[edit3]

le log nginx:

Code : Tout sélectionner

2015/04/18 11:05:55 [error] 475#0: *68914 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Call to undefined method object::byName() in /usr/share/nginx/www/jeedom/plugins/sonos3/core/class/sonos3.class.php on line 42" while reading response header from upstream, client: 192.168.0.45, server: , request: "POST /core/ajax/plugin.ajax.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "192.168.0.50", referrer: "http://192.168.0.50/index.php?v=d&p=plugin&id=sonos3"
2015/04/18 11:07:24 [error] 475#0: *68914 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Call to undefined method object::byName() in /usr/share/nginx/www/jeedom/plugins/sonos3/core/class/sonos3.class.php on line 42" while reading response header from upstream, client: 192.168.0.45, server: , request: "POST /plugins/sonos3/core/ajax/sonos3.ajax.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "192.168.0.50", referrer: "http://192.168.0.50/index.php?v=d&p=plugin&id=sonos3"
2015/04/18 11:10:24 [error] 472#0: *68949 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Call to undefined method object::byName() in /usr/share/nginx/www/jeedom/plugins/sonos3/core/class/sonos3.class.php on line 42" while reading response header from upstream, client: 192.168.0.45, server: , request: "POST /plugins/sonos3/core/ajax/sonos3.ajax.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "192.168.0.50", referrer: "http://192.168.0.50/index.php?v=d&p=plugin&id=sonos3"
2015/04/18 11:11:06 [error] 472#0: *68954 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Call to undefined method object::byName() in /usr/share/nginx/www/jeedom/plugins/sonos3/core/class/sonos3.class.php on line 42" while reading response header from upstream, client: 192.168.0.45, server: , request: "POST /plugins/sonos3/core/ajax/sonos3.ajax.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php5-fpm.sock:", host: "192.168.0.50", referrer: "http://192.168.0.50/index.php?v=d&p=plugin"

Re: Plugin sonos

Publié : 18 avr. 2015, 11:15
par loic
J'ai oublié de préciser il faut jeedom en 1.180

Re: Plugin sonos

Publié : 18 avr. 2015, 11:18
par xapi
c'est stable (pour une beta je veux dire) la 1.180 ?

Re: Plugin sonos

Publié : 18 avr. 2015, 11:29
par loic
Normalement oui, chez moi pas de soucis, j'ai prévu de la sortir en stable mardi, par contre ya pas mal de changement dedans

Re: Plugin sonos

Publié : 18 avr. 2015, 12:27
par xapi
mise à jour en beta 1.180, ça semble ok.
- Elements correctement placés automatiquement dans les bonnes pièces (j'avais le même nom sous Jeedom et sous Sonos Controller), ça peut sembler futile mais je trouve ça cool et je pense que ce genre de détail ça montre la volonté d'amener Jeedom vers davantage de user friendly :D
- Les albums chargés sont correctement détectés.
- play/pause/modification de volume ok sur une de mes Play:1
- modification du volume ok sur ma playbar

Quelques retour lors de l'utilisation :

- En mode TV sur une playbar, problème d'affichage d'image:
playbar.jpg
playbar.jpg (16.59 Kio) Consulté 7111 fois
- En mode TV sur une playbar le plugin est indiqué "en lecture", mais appuyer sur pause provoque une erreur (sur la playbar, le bouton mute fait pause en lecture d'album et mute en mode TV, peut être possible de s'en inspirer):

Code : Tout sélectionner

18-04-2015 12:12:46 | error | Erreur sur 192.168.0.44 - Sonos PLAYBAR : UPnPError: 701
- Lors de la lecture d'un album sur amazon music, problème d'affichage de la pochette de l'album:
play1_amazon.jpg
play1_amazon.jpg (16.72 Kio) Consulté 7111 fois
- manque de fluidité sur certaines commandes: lorsqu'on utilise le slider pour le son ça saute par à coups et au final on n'arrive pas à positionner le son comme on veut

Re: Plugin sonos

Publié : 18 avr. 2015, 12:56
par loic
Pour l'image la derniere beta du plugin devrait corriger normalement.

Pour les commandes du playbar j'ai pas compris (j'en ai pas...)

Pour la fluidité chez moi ta de soucis la commande de son est envoyé au relachement

Re: Plugin sonos

Publié : 18 avr. 2015, 13:25
par bbreton
Wahoo loic super boulot la détéction des équipements m'a bluffé direct placé dans la bonne pièce et visible sur le dash ! Génial

Re: Plugin sonos

Publié : 18 avr. 2015, 13:48
par xapi
mis à jour, effectivement on a à présent un joli visuel lorsqu'il n'y a pas d'image disponible pour l'album

comment reproduire le problème de "slider qui saute" :
- tu changes le volume avec le slider
- tu relaches le slider
- immédiatement tu modifies à nouveau le son et tu relaches le slider très vite

et là tu vas voir le slider sauter et revenir au niveau du volume réglé la première fois et non pas la 2è.

Sur un affichage avec un grand écran on est dans un cas de figure où on ne s'amusera pas fréquemment à s'y reprendre à plusieurs fois pour ajuster finement le son, mais sur tablette c'est plus délicat et tu peux être sûr que si on veut ajuster précisément le son on va retoucher le slider en plusieurs fois consécutives.

j'ai fait une vidéo pour illustrer, ce sera plus simple:
http://dl.free.fr/e0fRa5J2S

En ce qui concerne la playbar:
- lorsque c'est le son de la TV qui est diffusé, alors le status renvoyé est "lecture", et c'est correctement transcrit par le widget
- lorsqu'on est en mode "en lecture", alors le bouton "pause" est accessible
sauf que... dans le cas d'une playbar pause sur le mode TV ça cloche, il ne peut pas vraiment y avoir de pause puisque c'est du son en live venant de la TV, et donc ça renvoie la fameuse erreur upnp

ce que donne le plugin: indiqué en lecture, avec pause accessible et aucune info de ce qui est diffusé
playbar_plugin.jpg
playbar_plugin.jpg (25.86 Kio) Consulté 7080 fois
vs. ce que donne le Sonos Controller lorsqu'une playbar diffuse la TV (indication du mode TV, et bouton pause désactivé)
playbar_tv.jpg
playbar_tv.jpg (42.44 Kio) Consulté 7080 fois
C'est pas une critique du plugin, hein, déjà c'est cool de l'avoir, mais bon comme c'est un plugin officiel, autant faire des retours utilisateurs afin d'avoir vraiment un qui déchire tout et qui est un argument commercial à lui tout seul pour Jeedom :mrgreen:
En effet, une vraie bonne intégration Sonos dans la domotique, bin ça court pas les rues (todo list: le TTS, re :mrgreen: ).