Aller au contenu
Krikroff

Quick App - Sonos Zone Controller

Recommended Posts

Bonjour à tous,

 

Voici la première version dès à présent disponible du Quick App "Sonos Zone Controller".

Il s'agit d'une réécriture complète du VD Sonos Remote mais pour le HC3 et qui bénéficie donc de toute la puissance du HC3 et des fonctionnalités proposées par l'environnement Quick App!

 

Version actuelle: 1.4.0
Date: 22/03/2021

 

Preview_1.3.1.thumb.PNG.4b5a2b2f424e08a6dd63d91e9cee4cbc.PNG

 

FONCTIONS

Ce Quick App "Sonos Zone Controller" permet de contrôler tous les players de la marque depuis un Home Center 3. Il prend en charge des fonctionnalités de base et avancées:

 

  • Basic Transport Control
    • Lancement de la lecture (+ inversion Play/Pause)
    • Suspendre ou arrêter la lecture en cours
    • Passer à la piste précédente ou suivante
  • Basic Rendering Control
    • Obtenir le volume d'un groupe ou son état "muet" (sourdine)
    • Régler le volume d'un groupe à un niveau spécifique et le réactiver si désactivé
    • Augmenter ou diminuer le volume (support du mode relatif)
    • Obtenir ou définir ou basculer l'état de sourdine du groupe (désactiver ou réactiver le son du lecteur)
    • Obtenir ou définir ou basculer l'état de l' EQ "Loudness"
  •  Device Properties
    • Obtenir ou définir l'état des LED de groupe (allumées ou éteintes) 
  • Redémarrer le QA
  • Mode débogage
  • Jouer des streams et des fichiers avec restauration de l'état (snapshot/restore)

 

Voir Journal des modifications dans le téléchargement pour les actions disponibles (base et avancées)

 

PRÉREQUIS

  • Fibaro Home Center 3 avec firmware 5.041.50 ou supérieur
  • Un ou plusieurs périphériques Sonos

 

INSTALLATION ET CONFIGURATION

 

Le manuel utilisateur Fibaro pour les QuickApp est disponible ici:  https://manuals.fibaro.com/home-center-3/ 

 

La procédure d'installation à jour est disponible sur la fiche du market mais rien de difficile, la configuration est très automatisée et après chargement du QA quelques variables sont à modifier

 

Téléversement du fichier sur le HC3:

  1. Ouvrir l'interface de configuration.
  2. Paramètres > Dispositifs.
  3. Cliquez sur le + pour ajouter
  4. Choisir "Autre appareil"
  5. Choisir "Téléverser un fichier"
  6. Choisir le fichier du QA Sonos sur votre ordinateur

 

Mise à jour des variables nécessaires au bon fonctionnement du QA:

 

  1. Ouvrir l'interface de configuration.
  2. Paramètres > Dispositifs.
  3. Sélectionner l’onglet "Autre"
  4. Sélectionner le Quick App ajouté QA SONOS 
  5. Sélectionner l'onglet "Variables"
  6. Mise à jour des variables (à ce stade il y a une variable "isConfigured" avec une valeur "false", elle sera sur "true" en cas de configuration terminée)
    1. IP Address (ex: 192.168.1.200)
    2. TCP Port (1400 is the default port)
    3. Polling (Il s'agit de l’intervalle pour interrogation du périphérique, en réalité il y a également un mécanisme qui s'adapte selon l'état de la platine afin de ne pas solliciter le réseau inutilement)
  7. Sauvegarder

 

 

 

En complément:  Le QA est capable de remonter des informations sur des problèmes de configuration via des notifications, ex:
 

ConfigError01.PNG.032a6379278c82401a2473ab10aaf1f1.PNG

 

 

Les éléments sont téléchargeables sur le market Fibaro: https://marketplace.fibaro.com/items/sonos-zone-controller

  • Like 4
  • Thanks 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Version 1.4.0

Tested with Sonos Sonos OS: S2 - Version 13 (number 62186220)
Tested with HC3 & HC3Lite v5.050.13 -> v5.063.30

  • Fix for Sonos firmware version 13
  • Fix for Sonos ARC getPositionInfo and malformed xmlsoap (hope full supoport soon)
  • Add playNextRadio command to navigate the radios
  • Add play mode control from QA button (loop in NORMAL,REPEAT_ALL,REPEAT_ONE,SHUFFLE_NOREPEAT,SHUFFLE,SHUFFLE_REPEAT_ONE)
  • Fix Radio metadata strange behaviors in some situations

 

Version 1.3.8

Tested with Sonos Sonos OS: S2 - Version 12.2.2 (number 61183220)

 

  • Improved support for albumArt, now work with Sonos Radio, Amazon Music, Spotify, TuneIn, Music library
  • Add option 'protect' to playFile and playStream for disallow to restart a playing
  • Add Crossfade mode support with getCrossfadeMode, setCrossfadeMode and toggleCrossfadeMode commands
  • Add sleepTimer command
  • Add setPlayMode command, support: NORMAL,REPEAT_ALL,REPEAT_ONE,SHUFFLE_NOREPEAT,SHUFFLE,SHUFFLE_REPEAT_ONE
  • Add selectLineIn command
  • Add in variables panel, "notification" variable to enable or disable the "Device notification error", if disabled QA trace the message in QA console only
  • Various improvement

 

Version 1.3.1 RC

 

Tested with Sonos Software Version: 56.0-76060 / Sonos OS: S2 - Version 12.0.5 & 12.1

  • Add support to use in block scenes (Play, Pause, Stop, Next, Prev, Set Volume, Set mute) 
  • Support for album covers when available (cf. music library)
  • Performance improvement when initiating a playback
  • Improved radio playback and track information
  • Increase the number of supported radio stations (with auto configuration up to 9)
  • Support for Sonos playlists (with auto configuration up to 6 saved queues)
  • Add playFile command
  • Add playStream command
  • Add playSavedQueue command
  • Add startQueue command
  • Add clearQueue command
  • Add seek command
  • Add snapshot command
  • Add revert command
  • Add getListSavedQueues command
  • Add addURIToQueue command
  • Add checkForUpdate command
  • Add getTreble and setTreble commands
  • Add getBass and setBass commands
  • Various Bug fixes (Polling when not configured, parsing ...)

 

Version 1.1.0

  • Support for TuneIn "My radio stations" (with auto configuration up to 6 radios)
  • Deletion of the variable variable "isConfigured" used by internal FTI Configuration
  • Minor bug fixes (No route to host cause wrong configuration status)
  • Tested with Sonos Software Version:55.1-74250 and 56.0-76060
  • Performance improvement

Version 1.0.3

  • Fix a problem with internal zoneGroups and ZoneGroupMembers parsing (Thanks to jgab, Alan Klepacz and robw)

Version 1.0.2

  • Minor bug fixes (Thanks to Macschimmi, Bodyart, minsad79) 

Version 1.0.0

  • Based on my HC2 virtual Device and completely rewriten for HC3 v5.030.45 or highter
  • Very low latency and more robust device (commands execution, processing)
  • Easy installation with auto configuration assist
  • Support standard capabilities (AVTransport, RenderingControl)
  • Displaying information on the currently playing or media loaded
  • Fully controllable from the LUA scenarios (see available command list)

Partager ce message


Lien à poster
Partager sur d’autres sites

ROADMAP

  • Performance improvement when initiating a playback & Improved track information
  • Support for TuneIn "My radio stations"
  • Support for saved playlists (saved queue list)
  • Support for PlayMode
  • Support for Queue fonctionnalities
  • Support for LineIn and TV source (if supporteed by device)
  • Support for multi-devices in group used for triggering in scene and prepare for group-ungroup
  • Support for EQ (treble & bass)
  • Support for Group
  • Support for play Stream
  • Support for play File
  • Support for Snapshot / Restore
  • Support for TTS (TextToSpeech)
Modifié par Krikroff
Mise à jour V1.3.1 RC

Partager ce message


Lien à poster
Partager sur d’autres sites

Voici quelques codes pour commander la zone depuis une scène ou un QA

 

Exemples :

 

  • Régler le volume d'un groupe à un niveau spécifique et le réactiver si désactivé

    fibaro.call(ID_QUICKAPP, "setVolume", 10, "MASTER")

  • Augmenter ou diminuer le volume (en mode relatif).

    fibaro.call(ID_QUICKAPP, "setRelativeVolume", -5, "MASTER")

  • Lancement de la lecture.

    fibaro.call(ID_QUICKAPP, "play")

  • Mettre en pause la lecture.

    fibaro.call(ID_QUICKAPP, "pause")

  • Arrêter la lecture en cours.

    fibaro.call(ID_QUICKAPP, "stop")

  • Passer à la piste suivante

    fibaro.call(ID_QUICKAPP, "next")

  • Revenir à la piste précédente.

    fibaro.call(ID_QUICKAPP, "previous")

  • Mettre le son en sourdine.

    fibaro.call(ID_QUICKAPP, "setMute", true)

  • Activer ou désactiver le débogage
    fibaro.call(ID_QUICKAPP, "setDebug", true)

  • Forcer le redémarrage du quick app
    fibaro.call(ID_QUICKAPP, "restart")

  • Jouer un fichier de la bibliothèque avec un volume 20 et reprise auto de media précèdent après lecture
    fibaro.call(ID_QUICKAPP, "playFile", "192.168.1.220/sfx/bell.mp3", true, 20)

  • Jouer un stream durant 8 secondes avec un volume 10 et reprise du media précèdent après lecture
    fibaro.call(ID_QUICKAPP, "playStream", "https://s3.amazonaws.com/smartapp-media/sonos/bell1.mp3", true, 10, 8000)

  • Instantané / restauration de l'état
    fibaro.call(ID_QUICKAPP, "snapshot")

  • fibaro.call(ID_QUICKAPP, "revert")

 

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai envoyé un mail parce-que j'ai pourtant reçu une confirmation:

Citation

Congratulations!

Your code passed review and is now available in marketplace.

Thank you for your engagement!

Best Regards
Fibaro Marketplace Team

 

image.png.4f5142dd43a87f191bc3df783699e2ad.png

 

1 téléchargement et 86 visualisations ... Le statut semble être repassé en revue :(

Partager ce message


Lien à poster
Partager sur d’autres sites

Je viens de mettre à jour le sujet avec également la procédure d'installation...

Partager ce message


Lien à poster
Partager sur d’autres sites

Disponible sur le market

Du coup curieux d’avoir confirmation que ça fonctionne pour vous dans la vraie vie.


Envoyé de mon iPhone en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

Correction d'un bug, passage en V1.0.2, en attente d'une nouvelle validation du marketplace...

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites
Le 20/04/2020 à 22:40, Krikroff a dit :

Du coup curieux d’avoir confirmation que ça fonctionne pour vous dans la vraie vie.

Suis en plein travaux (suite cablage satel ....) à vrai dire pour l'instant je ne sais même plus où se trouve ma sonos tellement j'en ai dans tout les sens, encore qlqs jours de taf et je pourrais reprendre le cours de ma vie et passer un peu plus de temps sur la HC et bien sure sur ton appli que j'ai hâte de tester ! je te ferai un tit retour dès que je me serai penché dessus. Merci encore @Krikroff!!

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Petite correction et passage en version 1.0.3

 

La prochaine version (v1.1.0) supportera la fonctionnalité "Mes stations" by TuneIn avec configuration automatique des boutons (nom des radios).

Le reste sera essentiellement de l'optimisation en prévision des nouvelles fonctionnalités.

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut, est-ce qu'il ya un moyen de rajouter le contrôle du mode nuit et "speech"? J'aimerais bien de fair un automatisme pour les activer automatiquement de 21h à 8h.

Sent from my BLA-L29 using Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

Ok je rajoute cela dans la roadmap, tu peux me préciser les modèles de Sonos sur lesquels tu utilises ces modes, le speech c’est plutôt sur de la playbar et assimilé non ?

 

Actuellement je développe le QA complètement à l’aveugle, j’allume un cierge à chaque mise à jour !

 

si besoin pourrais-je te solliciter ?

  • Like 1
  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

On va finir par t'offrir une HC3

Envoyé de mon BLA-L29 en utilisant Tapatalk

  • Like 1
  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci. J'ai une play bar et deux sonos one.

Sent from my BLA-L29 using Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

Tu as besoin d'aide pour le tester ?
Ça oui, bien sûr.
Mes connaissances de lua sont très limites.

Sent from my BLA-L29 using Tapatalk

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

[mention]mprinfo [/mention] je vais finir par revendre mon Intercom... La poste passe une fois par semaine alors et passer par le Luxembourg.

[mention]sfmcog [/mention] super merci, je te tiens au courant !


Envoyé de mon iPhone en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

 

 

 

Il y a 8 heures, Krikroff a dit :
[mention]mprinfo [/mention] je vais finir par revendre mon Intercom... La poste passe une fois par semaine alors et passer par le Luxembourg

 

Envoyé de mon iPhone en utilisant Tapatalk

 

MdR

 

Tu vas pas en tirer grand chose

 

Par contre si tu prends un doorbird et une HC3 alors la tu seras au top

 

D'ailleurs faudrait que je vois avec toi si tu as un moment pour cette histoire d'envoi de SMS via mon routeur 4g je suis pas loin de la solution mais la je suis bloqué

Partager ce message


Lien à poster
Partager sur d’autres sites

Oh punaise j avais rate cela :-)
Super top merci..
Au ben m...jai pas de HC3 :-)

Envoyé de mon BND-L21 en utilisant Tapatalk

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites
Le 24/04/2020 à 20:21, Krikroff a dit :

La prochaine version (v1.1.0) supportera la fonctionnalité "Mes stations" by TuneIn avec configuration automatique des boutons (nom des radios).

preview_1.1.0.PNG.b5cb004e207c7b609b20560354adebeb.PNG

 

:)

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Version 1.1.0 en cours de validation ;)

Partager ce message


Lien à poster
Partager sur d’autres sites

Top !

Et sur l'appli smartphone cela donne quoi ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Version validée et disponible sur le market

@Nico pas la moindre idée mais à mon avis rien de ce que je sais les QA ne sont pas visibles pour le moment.


Envoyé de mon iPhone en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 10 heures, Krikroff a dit :

QA ne sont pas visibles pour le moment.

non en effet, à part les binary switch que l'on peut activer/désactiver.

ainsi, que les multilevel sensor et binary sensor, où on voit leur valeur.

 

mais aucun autre élément (label, bouton, slider).

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

×