Aller au contenu

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


Krikroff

Messages recommandés

@Tous,

 

Merci de votre indulgence car il y a certainement quelques bugs. J'ai beaucoup codé à  l'aveugle par faute de temps, de plus n'ayant qu'un groupe SONOS, pas simple de valider le support multiples modules / multiples SONOS.

Concernant le Text-To-Speech , je conseil l'utilisation du service VoiceRSS. Le déclenchement du TTS avec le module en V1.0.0 me semble plus réactif mais ce n'est pas encore le top, rien à  voir avec la lecture des Streams. Honnêtement j'utilise une passerelle perso capable de créer à  la volée, persister, pousser des flux et bien d'autres choses encore, c'est beaucoup plus réactif qu'en passant par le HC2. Nous en reparlerons peut être plus tard ;)

 

 

Voici la note de version 1.0.0 beta

 

ATTENTION: Le passage d'une version antérieure à  la v1.0.0 pour la v1.0.0 ou supérieure nécessite la réécriture des commandes TTS pour fonctionner avec le nouveau module. L'ancien module reste cependant fonctionnel et peut cohabiter logiquement avec la nouvelle version. En cas de passage définitif en V1.0.0 ou supérieure toutes les variables globales déclarées précédemment en V0.0.7 ou V0.0.8 peuvent être supprimées.

- Amélioration : Configuration automatique, pas de déclaration de variables globales

- Amélioration : Support natif de multiples instances du périphérique virtuel

- Amélioration : Faible latence lors du déclenchement des commandes

- Amélioration : Révision et amélioration du code / Refactoring

- Ajout: Le TTS utilise le service Voice RSS (avec une API Key (enregistrement gratuit)) ou ResponsiveVoice API. Options: durée, volume, auto resume

- Ajout: Lancement de Stream (http / local) depuis scène / vd. Options: durée, volume, auto resume

 

Le fichier est téléchargeable en page 1.

 

Amusez-vous bien!

  • Upvote 9
Lien vers le commentaire
Partager sur d’autres sites

Merci beaucoup pour votre travail acharné !!!

Certains point de conception et de vérification après l'installation:

1. La qualité sonore est seulement un moyen, avec les autres paramètres, aucun son ne se fait entendre que le silence, puis renouvelable

2. Après le démarrage des caractéristiques de performance de l'étape de l'expression «température extérieure 3.2 C" commence àsonner pendant 9 secondes et reprend son pendant 24 secondes.

Lien vers le commentaire
Partager sur d’autres sites

Hello !

Merci Krikroff, super boulot, ça a fonctionné direct chez moi !

C'est clair que le TTS n'est pas hyper réactif, en moyenne entre 10 et 12 secondes pour que la lecture démarre.

Je suis du coup vraiment intéressé par la méthode àlaquelle tu fais allusion. Est-ce que la dite passerelle perso pourrait être hébergée sur un RPI par exemple ?

Encore bravo !

Lien vers le commentaire
Partager sur d’autres sites

Invité chris6783

Eh bien me voilàbien avancé avec ce papa noel.... Empêcheur d'acheter en rond. Je voulais partir sur du Harman Kardon pour mon papa noel et maintenant avec ce super VD je fais quoi moi ? J'achète du Sonos ! Merci Krikroff tu fais 1000000 heureux qui veulent se lever pour tester et moi je dors plus :-)

Lien vers le commentaire
Partager sur d’autres sites

Bon, finalement j'ai un bug... 

En gros :

- j'ai installé un 1er VD pour un Play:1 sans problème

- puis un deuxième pour un second Play:1 sans souci.

Mais à  force de bidouiller entre le Sonos Play Stream et le Sonos Remote sur ce deuxième Play:1 je suis arrivé à  bloquer le VD Remote

[DEBUG] 02:31:49: -------------------------------------------------------------------------
[DEBUG] 02:31:49: -- SONOS Advanced Remote version 1.0.0
[DEBUG] 02:31:49: -------------------------------------------------------------------------
[DEBUG] 02:31:49: SONOS Advanced Remote V 1.0.0 loaded in memory...
[DEBUG] 02:31:49: Benchmark [sONOS Advanced Remote V 1.0.0 lib]: elapsed time: 0.010 cpu secs
[ERROR] 02:31:50: line 106: attempt to index local 'e' (a nil value)

 

 

Et en mettant la trace

[DEBUG] 02:33:17: radio station #4 - France Musique 92.4 (Classique)
[DEBUG] 02:33:17: key:5
[DEBUG] 02:33:17: value type:table
[DEBUG] 02:33:17: children value:table
[DEBUG] 02:33:17: radio station #5 - RTL 2 95.7 (Top 40-Pop)
[DEBUG] 02:33:17: Unable to process data, check variable
[ERROR] 02:33:17: line 106: attempt to index local 'e' (a nil value)

 

 

J'ai également bloqué mon 1er VD Sonos Remote en essayant de croiser les adresses IP
L'ancien VD sonos Player et Sonos Play Stream fonctionnent toujours bien  :)
Lien vers le commentaire
Partager sur d’autres sites

@imagin, bah bravo salle gosse va , on te donne un beau jouet et paf tu le casses MDR  ;)

 

@krikroff, installé et approuvé c'est vraiment cool  :60:

Un petit bug me semble t il , lorsque l'on utilise spotify, le nom de l'artiste ne remonte pas

Et une demande d'évolution, serait t il possible lorsque l'on met pose d'avoir le nom du titre qui reste affiché ?

  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

Ma ptite contribution

 

Si vous voulez faire lire la température dans la scene vous pouvez utiliser cela.

 

 

Il faut juste changer l'id en fonction de votre module remontant la température

 

et cette ligne en fonction de ce que vous voulez lui faire dire à  la madame

 

local notification = "Il fait " .. degre .. " dans le salon "

 

 

--[[
%% properties


%% globals
--]]


-- 408 is the Virtual Device ID
-- 28 is the Process button ID
local sid, bid = 811, 28
-- Create TTS params object
local ValeurTemp = fibaro:getValue(61, "value")
local degre = string.gsub(ValeurTemp, '[,]' , ' degret ')
local degre = string.gsub(degre, '[.]' , ' degret ')
local degre = string.gsub(degre, '[-]' , ' moins ')
local notification = "Il fait " .. degre .. " dans le salon " 
fibaro:debug(notification)
local params = {
  -- TTS Message
  
  message = notification,  
  duration = 'auto', -- Duration: "auto", xx seconds
  language = "fr-FR", -- Language: fr-FR
  volume = 23 -- Volume
}
local _f = fibaro
local _x ={root="x_sonos_object",load=function(b)local c=_f:getGlobalValue(b.root)if string.len(c)>0 then local d=json.decode(c)if d and type(d)=="table"then return d else _f:debug("Unable to process data, check variable")end else _f:debug("No data found!")end end,set=function(b,e,d)local f=b:load()if f[e]then for g,h in pairs(d)do f[e][g]=h end else f[e]=d end;_f:setGlobal(b.root,json.encode(f))end,get=function(b,e)local f=b:load()if f and type(f)=="table"then for g,h in pairs(f)do if tostring(g)==tostring(e or"")then return h end end end;return nil end}
-- Make a request to the remote to process params object instantly
_x:set(tostring(sid), { tts = params })
_f:call(sid, "pressButton", bid)
  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

@imagin, bah bravo salle gosse va , on te donne un beau jouet et paf tu le casses MDR  ;)

Et je n'ai pas fait semblant... il est bien cassé

J'avoue que je l'ai trituré dans tous les sens en jouant avec une télécommande Octan remote pour changer la radio de mon Play:1 de sdb....

 

J'ai beau tout essayer, désinstaller les deux VD Sonos Remote et les réinstaller, j'ai toujours la même erreur (à  tout hasard, j'ai même rebooté ma box)

Problème avec mes radios programmées, la 5ème de la liste ? Hier au soir je l'ai supprimée et une autre a pris sa place... le VD ne démarre toujours pas

Et l'ancien VD Sonos Player fonctionne toujours

 

Pour l'instant, je ne redémarre pas l'ensemble de mes Sonos pour que JC regarde du côté de son code

 

Je suis sà»r d'avoir bientôt un nouveau jouet tout neuf de la part de @Krikroff  :)

 

NB : Hier au soir, il me semble bien avoir remarqué que l'on perdait l'icône par défaut après un TTS : avez-vous fait le même constat ?

Lien vers le commentaire
Partager sur d’autres sites

×
×
  • Créer...