Aller au contenu

Fibaro Hc2 Vd Sonos Remote: Télécommande Pour Diffuseur Sonos


Krikroff

Messages recommandés

merci Krikoff encore pour ton travail.

 

play 3 et 5 , connect et ampl tous a l'air de fonctionner avec un peu de retard explique,,, 1 a 3 sec.

 

je n'ai pas deversifié mes variables, créer que deux (comme expliquer).? ou en faut il une pour chaque appareils sonos? ce qui peut être améliorer le délai de réponse .

Lien vers le commentaire
Partager sur d’autres sites

Pas encore compatible multiroom, l’intégration en l'état avec plusieurs systèmes est pas simple, je prévois pour une prochaine version...

 

@labomatik,

 

peux tu modifier le code lignes 889-894 par

if (value~= nil) then
self.radioStations[cnt] = {
                title = value["dc:title"]:value(),
                res = value["res"]:value()
                };
            fibaro:debug(self.radioStations[cnt].title);
            cnt = cnt + 1;
end
Lien vers le commentaire
Partager sur d’autres sites

c'est bien dans ce code là  parcontre toujours le même soucis avec le code

 

if (value~= nil) then
self.radioStations[cnt] = {
                title = value["dc:title"]:value(),
                res = value["res"]:value()
                };
            fibaro:debug(self.radioStations[cnt].title);
            cnt = cnt + 1;
end
 
[DEBUG] 14:50:52: Get loudness request
[ERROR] 14:50:52: line 892: attempt to index local 'value' (a function value)
 
j'ai tenté de le supprimer et là  tout fonctionne bien...
Lien vers le commentaire
Partager sur d’autres sites

Bon j'ai fait un petit toString sur la partie result:

  return sendSoapMessage(
  	self.props.controlURL.ServerContentDirectory,
    self.props.serviceType.ContentDirectory,
    { name = self.props.actions.Browse, service = self.props.serviceType.ContentDirectory },
	"<ObjectID>R:0/0</ObjectID><BrowseFlag>BrowseDirectChildren</BrowseFlag><Filter ></Filter><StartingIndex>0</StartingIndex><RequestedCount>10</RequestedCount><SortCriteria ></SortCriteria>",
    function(response)  
      local result = decode(tostring(response:match("<Result>(.+)</Result>")) or "");
      if (result ~= nil or result ~= "") then
        local parsedXml = Toolkit.Xml:ParseXmlText(result);
          vardump(result)

[DEBUG] 15:01:52: Mint FMobject.item.audioItem.audioBroadcastx-sonosapi-stream:s48098?sid=254&flags=32

Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...

Regarde du coté de la  gestion de la minimote, tu remplace les valeurs par un niveau du volume que tu insères ensuite dans une variable global et tu appelles ensuite ton bouton du virtual device.

Lien vers le commentaire
Partager sur d’autres sites

Phil, si je ne dis pas de connerie j'ai déjàcodé une méthode pour faire du +x -x sur le volume du sonos, je prends la main sur mon HC2 pour te confirmer cela dans la journée. Après il suffit juste de passer la commande dans la variable globale qui existe déjàpour cela et que j'utilise pour les commandes de tous les boutons de l'interface ;)

Lien vers le commentaire
Partager sur d’autres sites

Pour mettre jour le volume tu peux faire cela:

-- SET VOLUME +5
local vol = fibaro:getValue(VD_ID, "ui.slVolume.value") + 5;
fibaro:setGlobal("SonosLastCmd", tostring(fibaro:getGlobalValue("SonosLastCmd").."VOL"..vol.." "));

-- SET VOLUME -5
local vol = fibaro:getValue(VD_ID, "ui.slVolume.value") - 5;
fibaro:setGlobal("SonosLastCmd", tostring(fibaro:getGlobalValue("SonosLastCmd").."VOL"..vol.." "));
  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

Bonjour fuuss,

 

Tu peux mettre le code suivant dans un bouton pour voir...

fibaro:setGlobal("SonosTTS", "lng=fr|dr=auto|vol=25|txt=Ceci est un test de TTS. . .|");
Lien vers le commentaire
Partager sur d’autres sites

  • 1 mois après...

Bonjour Krikroff,
 
J'ai un petit problème avec le TTS, je m'explique.
 
J'ai un périphérique virtuel pour la gestion de mes volets sur lequel j'ai ajouté un TTS pour m'informer que les volets sont bien fermés.
 

fibaro:setGlobal("SonosTTS", "lng=fr|dr=auto|vol=40|txt=Les volets sont ouverts|");

Problème:  le texte est répété 2 fois, la 2nd fois moins fort que la 1ère puis reprise de la musique si musique en cours.

J'ai mis ce code dans un bouton tout seul: idem

Lorsque je clique sur ton bouton "test TTS" cela fonctionne.

 

Comment résoudre ça ?

Lien vers le commentaire
Partager sur d’autres sites

Oh c'est vraiment étrange cette histoire :huh:, je n'ai pas ce problème ! Peut-être la détection auto de la durée pour le off qui débloque. Tu peux essayer avec:

fibaro:setGlobal("SonosTTS", "lng=fr|dr=auto|vol=40|txt=Les volets sont ouverts. . .|");
Lien vers le commentaire
Partager sur d’autres sites

Je viens de faire un rollback de la version alpha donc j'ai reinstallé ton Plugin .

Pour le TTS est ce que c'est possible de préciser sur quelle Sonos le TTS sera executé.

J'ai 3 appareil sonos en ce moment , il faudra donc utilisé 3 virtual device ?

Merci

Lien vers le commentaire
Partager sur d’autres sites

×
×
  • Créer...