Gladys Assistant 4.32 : L'intĂ©gration Sonos est disponible ! đŸŽ”

Je suis en train de chercher et je galùre fortement


J’ai ouvert tous les ports indiquĂ©s sur le site SONOS : Configurer votre pare-feu pour qu'il fonctionne avec Sonos | Sonos

ça n’a pas fonctionnĂ©. J’ai trouvĂ© ce post sur le forum Home Assistant : Sonos - which ports do I need to open for auto-discovery? - #9 by jjlawren - Configuration - Home Assistant Community

Donc, j’ai ouvert une plage de ports UDP : 32768-60999

ça fonctionne mais la plage me semble énorme.

Je cherche encore (si vous avez des suggestions, je suis preneur).

il faudrait écouter ton réseau sur les adresses ip de tests sonos pour voir les ports utilisés ( ce qui revient aussi à lire les logs de blocages )
Tu peux peut ĂȘtre faire une rĂšgle spĂ©cifique qui bloque la plage et tu regardes dans les logs les ports qui sont rĂ©ellement utilisĂ©s.

sous windows download

et scanne ton rĂ©seau, il devrait t’afficher tes sonos et les ports ouverts dessus

sous linux

et pareil mais en cmd scanne ton rĂ©seau, il devrait t’afficher tes sonos et les ports ouverts dessus

Je ne sais pas depuis quand mais le lien vers la documentation Sonos ne fonctionne pas, il renvois vers :https://gladysassistant.com/fr/docs/undefined/sonos

Au lieu de renvoyer vers :

Oui apparemment cela a ete corrigé !! Dispo prochaine version

Bonjour,
J’ai intĂ©grĂ© SONOS et paramĂ©trĂ© l’enceinte en dĂ©cembre dernier. Depuis, exceptĂ©s quelques tests concluants, je ne parviens pas Ă  faire parler mon enceinte en service rĂ©gulier. Je teste de temps en temps, en repartant Ă  zĂ©ro quelques fois, suppression de l’intĂ©gration et de la scĂšne mais rien n’y fait.
Quelqu’un rencontre-t-il le mĂȘme dysfonctionnement ?

Salut @Jluc :slight_smile: Je laisse les autres te répondre si ils ont aussi des problÚmes, je suis curieux de savoir si tu es le seul ou pas à avoir ce souci !

De mon cĂŽtĂ©, j’ai regardĂ© un peu du cĂŽtĂ© de la librairie Sonos, j’ai trouvĂ© 2 pistes d’amĂ©liorations :

  • Il y a un timeout pour jouer la partie annonce vocale, qui est actuellement Ă  10 secondes. Si chez toi ton rĂ©seau est un peu lent, ou que l’API de TTS met plus de 10 secondes Ă  rĂ©pondre, ça peut expliquer le souci. Je vais augmenter Ă  20 secondes.
  • Si ça n’amĂ©liore pas le souci, il semble possible dans la librairie qu’on utilise pour la partie Sonos de lui passer une variable d’environnement pour avoir des logs et mieux comprendre ce qui merde de leur cĂŽtĂ© :

Source: Getting started - Sonos

Est-ce que c’est quelque chose qui serait dans tes compĂ©tences de relancer ton container Gladys avec la variable d’environnement ? (Si non, dis le moi et on trouvera une autre solution)

En attendant, j’ai fais dĂ©jĂ  une PR pour le premier point et avoir un poil plus de logs cĂŽtĂ© Gladys :

Malheureusement, je n’ai aucune compĂ©tence et je ne prĂ©fĂšre pas bidouiller et tout planter :slight_smile:

Je comprend !

On va déjà voir avec la PR pour augmenter le timeout et on verra aprÚs si on a besoin de plus de logs :slight_smile:

Je te tiens au courant dÚs que ça part en production.

Bonjour :slight_smile:

Le sujet de l’audio dans Gladys semble bien avancĂ© par cette intĂ©gration, mais avez-vous pensĂ© Ă  tous ceux qui n’utilisent pas du matĂ©riel SONOS ?

Ne serait-il pas envisageable de sĂ©parer l’intĂ©gration/usage du son dans une scĂšne et la mĂ©thode de restitution, afin cibler plus largement tout ce qui est Ă  ce jour disponible sur le marchĂ© (Amazon Echo, Enceintes Google Home ou Nest, SONOS, etc 
) ou en « DIY Â» (PulseAudio dans mon cas) ?

Jean

Salut @jean_bruder :slight_smile: C’est dĂ©jĂ  le cas !

Comme toujours dans Gladys, le core est sĂ©parĂ© des intĂ©grations qui font le pont entre un appareil Gladys et l’appareil dans la vrai vie. Le travail « core Â» (interface, API, etc
) n’est fait qu’une fois.

Pour avoir de la gestion de la musique sur d’autres systĂšmes, il faut coder les intĂ©grations au cas par cas. Malheureusement, il n’y a pas d’API standard entre les diffĂ©rents systĂšmes, chaque constructeur fait sa sauce.

Bonjour. AprĂšs le flot de nouveautĂ©s, je rĂ© teste Gladys, sur laquelle je garde un Ɠil depuis pas mal de temps. J’ai commencĂ© par essayer d’intĂ©grer mes enceintes Sonos et il semblerait que ça ne marche pas car les enceintes sont sur un VLAN dĂ©diĂ©, distinct de celui oĂč tourne Gladys ? Est-ce que quelqu’un a rĂ©ussi Ă  faire fonctionner avec cette configuration ? Le scan ne donne aucun rĂ©sultat et sauf erreur de ma part, il n’y a aucun moyen de spĂ©cifier les IPs des enceintes ?

Merci !

Hello,

J’ai le mĂȘme problĂšme de mon cĂŽtĂ© :innocent:

Salut,

Je pense qu’il faut que tu autorises le protocole mdns entre tes VLANs (Sonos et Gladys) sur ton routeur.

Je croyais comprendre que l’intĂ©gration Sonos n’utilise pas le mdns ?

Salut, peut ĂȘtre alors, mais il doit bien y avoir un protocole de decouverte automatique ?

Salut,

Oui, ça semble cohérent avec ta configuration réseau.

L’intĂ©gration Sonos actuelle de Gladys utilise la dĂ©couverte automatique SSDP/UPnP. Elle envoie donc une requĂȘte multicast sur 239.255.255.250:1900.

https://sonos.svrooij.io/sonos-communication

Avec Gladys et les Sonos placĂ©s sur deux VLAN diffĂ©rents, ce multicast ne traverse gĂ©nĂ©ralement pas le routeur par dĂ©faut. Le scan peut donc ne rien trouver mĂȘme si Gladys est autorisĂ© Ă  communiquer directement avec les IP des enceintes.

Et effectivement, en regardant l’intĂ©gration actuelle, le scan passe uniquement par InitializeWithDiscovery() : il ne semble pas y avoir de possibilitĂ© dans Gladys de renseigner manuellement l’IP d’une enceinte.

La bibliothĂšque Sonos utilisĂ©e derriĂšre par Gladys permet cependant de partir d’un appareil connu plutĂŽt que de faire uniquement de la dĂ©couverte rĂ©seau. Ça pourrait donc ĂȘtre une Ă©volution intĂ©ressante de l’intĂ©gration : permettre de renseigner manuellement l’IP d’un Sonos pour les installations avec VLAN.

À court terme, l’autre solution serait de configurer le rĂ©seau pour relayer correctement le SSDP entre les deux VLAN.

@David Je vais travailler sur sonos en externe pour ajouter la gestion d’ip connu, plus la lecture par uri. (le reste sera identique à la native :slight_smile:
J’aurais besoin de toi pour tester @prohand tu es le bienvenue aussi :slight_smile:

Avec plaisir :winking_face_with_tongue:

@prohand @David

Dite moi si avec ça vous trouvez vos sonos :slight_smile:

https://ghcr.io/vincentbesseau/gladys-sonos:0.1.1

{
  "manifest_version": 1,
  "type": "device",
  "name": "Sonos",
  "description": {
    "en": "Control Sonos speakers locally, including VLAN setups, and play any content URI.",
    "fr": "ContrĂŽlez vos enceintes Sonos en local, y compris en VLAN, et lancez n'importe quelle URI."
  },
  "version": "0.1.1",
  "docker_image": "ghcr.io/vincentbesseau/gladys-sonos:0.1.1",
  "gladys_version": ">=4.86.0",
  "cover_image": "https://raw.githubusercontent.com/vincentBesseau/gladys-sonos/main/cover.jpg",
  "categories": [
    "multimedia"
  ],
  "transports": [
    "local"
  ],
  "network_discovery": [
    {
      "type": "ssdp",
      "st": "urn:schemas-upnp-org:device:ZonePlayer:1"
    }
  ],
  "config_schema": [
    {
      "key": "intro",
      "type": "section",
      "label": {
        "en": "Sonos, controlled locally",
        "fr": "Sonos, piloté en local"
      },
      "description": {
        "en": "This integration controls your Sonos speakers directly over your local network - no cloud account, no Sonos app login. It discovers them automatically (SSDP). If your Sonos speakers are on a different VLAN/subnet than Gladys, automatic discovery will not find them: fill in one known IP below instead, it is enough to recover the whole household.",
        "fr": "Cette intégration pilote vos enceintes Sonos directement sur votre réseau local - aucun compte cloud, aucune connexion à l'app Sonos. Elle les découvre automatiquement (SSDP). Si vos enceintes Sonos sont sur un VLAN/sous-réseau différent de Gladys, la découverte automatique ne les trouvera pas : renseignez plutÎt une IP connue ci-dessous, cela suffit à retrouver toute l'installation."
      }
    },
    {
      "key": "known_ips",
      "type": "string",
      "label": {
        "en": "Known IPs (VLAN fix)",
        "fr": "IPs connues (contournement VLAN)"
      },
      "description": {
        "en": "One Sonos speaker IP is enough: this integration then asks it for your whole household's layout. Separate multiple entries with a comma or a new line.",
        "fr": "L'IP d'une seule enceinte Sonos suffit : l'intégration lui demande ensuite l'organisation de toute votre installation. Séparez plusieurs entrées par une virgule ou un retour à la ligne."
      },
      "placeholder": {
        "en": "192.168.10.21",
        "fr": "192.168.10.21"
      }
    }
  ],
  "actions": [
    {
      "key": "scan_now",
      "label": {
        "en": "Scan for Sonos speakers",
        "fr": "Rechercher les enceintes Sonos"
      },
      "timeout_seconds": 30
    }
  ]
}