Aller au contenu

Rechercher dans la communauté

Affichage des résultats pour les étiquettes 'Sonos'.



Plus d’options de recherche

  • Rechercher par étiquettes

    Saisir les étiquettes en les séparant par une virgule.
  • Rechercher par auteur

Type du contenu


Forums

  • Bienvenue
    • Nouveau ? Présentez-vous
    • Le bistrot
    • Mon installation domotique
    • Annonces et suggestions
  • La Home Center et ses périphériques
    • La Home Center pour les nuls
    • HC 2 & Lite
    • HC 3
    • Modules Fibaro
    • Modules Z-wave
    • Périphériques et matériels autres
    • Plugins
    • Quick App
    • Multimédia (audio, vidéo ...)
    • Chauffage et Energie
    • Actionneurs & Ouvrants (Portail, volets, piscines, ...)
    • Eclairage
    • Applications Smartphones et Tablettes
  • Autres solutions domotiques
    • Box / Logiciel
    • Modules Nice (433 & 866 MHz)
    • Modules Zigbee
    • GCE Electronics
    • Modules Bluetooth Low Energy
  • Objets connectés
    • Les Assistants Vocaux
    • Netatmo
    • Philips Hue
    • DIY (Do It Yoursel)
  • Sécurité
    • Alarmes
    • Caméras
    • Portiers
    • Serrures
  • Informatique / Réseau
    • Tutoriels
    • Matériels Réseaux
    • Matériels Informatique
    • NAS
    • Virtualisation
  • Les bonnes affaires
    • Sites internet
    • Petites annonces

Rechercher les résultats dans…

Rechercher les résultats qui…


Date de création

  • Début

    Fin


Dernière mise à jour

  • Début

    Fin


Filtrer par nombre de…

Inscription

  • Début

    Fin


Groupe


Jabber


Skype


Ville :


Intéret :


Version

11 résultats trouvés

  1. 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.5.2Date: 18/12/2021 Télécharger le QuickApp FONCTIONS Ce Quick App "Sonos Zone Controller" permet de contrôler tous les enceintes et lecteurs multiroom Sonos® 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: Ouvrir l'interface de configuration. Paramètres > Dispositifs. Cliquez sur le + pour ajouter Choisir "Autre appareil" Choisir "Téléverser un fichier" Choisir le fichier du QA Sonos sur votre ordinateur Mise à jour des variables nécessaires au bon fonctionnement du QA: Ouvrir l'interface de configuration. Paramètres > Dispositifs. Sélectionner l’onglet "Autre" Sélectionner le Quick App ajouté QA SONOS Sélectionner l'onglet "Variables" 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) IP Address (ex: 192.168.1.200) TCP Port (1400 is the default port) 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) Sauvegarder En complément: Le QA est capable de remonter des informations sur des problèmes de configuration via des notifications, ex: Les éléments sont téléchargeables sur le market Fibaro: https://marketplace.fibaro.com/items/sonos-zone-controller
  2. SONOS Remote V1.0.1 RC pour Fibaro HC2 Télécommande avec retour d’informations pour diffuseur SONOS, prise en charge du TTS (Text-to-Speech) et lecture de stream depuis vos scènes et périphériques virtuels. - Les fonctions : Play, Pause, Stop, Prev, Next, Seek, Volume, Mute, Loudness, Accès direct aux 5 premières radios de “Mes radiosâ€. - Les informations : Zone, Etat du diffuseur, Position, Titre ou Nom de la radio, Artiste, Album, Volume, Loudness, dernière commande émise. Installation : A partir de la version 1.0.0 beta: 1. Télécharger puis importer le vd. 2. Renseigner l’adresse IP du diffuseur SONOS (le coordinateur) dans le vd ainsi que le port 1400 3. Pour utiliser la fonction TTS VoiceRSS il faut une API Key, pour l'enregistrement (gratuit) c'est ici http://www.voicerss.org/registration.aspx 4. Renseigner la variable voiceRssApiKey avec la clé, choisir un niveau de qualité sonore pour la generation avec voiceRssSoundQuality: low, medium, high UserParams = { -- Voice RSS API Key (Free Registration: http://www.voicerss.org/registration.aspx) voiceRssApiKey = "000000000000000000000000000", -- Sound quality: low, medium, high voiceRssSoundQuality = "medium" } 5. Enregistrer les modifications, c'est bon... Utilisation : TTS : Pour utiliser le TTS depuis une scène ou un périphérique virtuel il faut juste exécuter le code LUA suivant avec les bons paramètres. -- 408 is the Virtual Device ID -- 28 is the Process button ID local sid, bid = 408, 28 -- Create TTS params object local params = { -- TTS Message message = "La température extérieure actuelle est de 21,2°C", duration = 'auto', -- Duration: "auto", xx seconds language = "fr-FR", -- Language: fr-FR volume = 10 -- 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) Les options de l'objet params: - message: le message tts - language: la source du flux (http ou local, local est attribué par défaut) - duration: durée du tts. (en secondes ou "auto") - volume: le volume utilisé pour la lecture du tts si différent du volume en cours d'utilisation Le programme en cours de diffusion au moment de la demande reprendra après la diffusion complète du TTS. Reprise de la radio, de la piste à l’endroit précis avant arrêt, reprise de l’état du diffuseur : Volume, Mute, Play, Stop. STREAM: Pour utiliser la lecture de Stream depuis une scène ou un périphérique virtuel il faut exécuter le code LUA suivant avec les bons paramètres. -- 408 is the Virtual Device ID -- 28 is the Process button ID local sid, bid = 408, 28 -- Create STREAM params object local params = { -- stream: the file / uri stream = "//s3.amazonaws.com/smartapp-media/sonos/bell1.mp3", -- source: "local" or "http", "local" is setted by default source = "http", -- duration: play duration in seconds (option) or "auto" duration = 8, -- volume: the volume for playing the stream volume = 10 } 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), { stream = params }) _f:call(sid, "pressButton", bid) Les options de l'objet params: - stream: le chemin du flux - source: la source du flux (http ou local, local est attribué par défaut) - duration: durée du stream. (en secondes ou "auto") - volume: le volume utilisé pour la lecture du flux si différent du volume en cours d'utilisation Quelques exemples: Annoncer la température dans une scène : --[[ %% 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) Annoncer la valeur d'une variable : --[[ %% properties %% globals --]] local sid, bid = 813, 28 -- Create TTS params object local couleur = fibaro:getGlobalValue("le nom de ta variable") local notification = ("La couleur de demain sera "..couleur.." Bonne journée") 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) Annoncer la date du jour, la température extérieure et la météo : -- 239 is the Virtual Device ID -- 28 is the Process button ID local sid, bid = 239, 28 local cond = fibaro:getValue(3, "WeatherConditionConverted"); local tempext = fibaro:getValue(33, "value"); -- température extérieure fibaro:debug ("Température extérieure : "..tempext) local degre = string.gsub(tempext, '[,]' , ' degré ') local degre = string.gsub(degre, '[.]' , ' degré ') local degre = string.gsub(degre, '[-]' , ' moins ') local currentDate = os.date("*t") local jourL = {"Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi"} local jour = jourL[currentDate.wday] fibaro:debug ("Jour : "..jour) local moisL = {"janvier", "février", "mars", "avril", "mai", "juin", "juillet", "aout", "septembre", "octobre", "novembre", "décembre"} local mois = moisL[currentDate.month] fibaro:debug ("Mois : "..mois) local condfr =""; if( cond == "clear" ) then condfr = "clair"; end if( cond == "cloudy" ) then condfr = "nuageux"; end if( cond == "rain" ) then condfr = "pluvieux"; end if( cond == "snow" ) then condfr = "neigeux"; end if( cond == "storm" ) then condfr = "tempete"; end if( cond == "fog" ) then condfr = "brouillard"; end fibaro:debug ("Conditions météorologiques : "..condfr) fibaro:debug ("Création du TTS") -- Create TTS params object local params = { -- TTS Message message = "Bonjour a vous. Nous sommes le "..jour .." "..currentDate.day .." "..mois .. ". Il est ".. currentDate.hour .." heure et ".. currentDate.min .." minutes. ".. "Le thermomètre extérieur est a "..degre .. ", et le temps est "..condfr ..". ", duration = 'auto', -- Duration: "auto", xx seconds language = "fr-FR", -- Language: fr-FR volume = 40 -- 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) Notes de versions: Version 1.0.1 Rc - Correction: régression introduite avec la V4.080 impactant la création automatique de la variable globale 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 Version 0.0.8 - Amélioration : La lecture d'un TTS en mode Auto Stop est maintenant stable - Amélioration : La lecture d'un TTS avec une durée définie est maintenant stable - L'image principale du vd réapparaît maintenant automatiquement après l'appui sur un bouton (Labomatik & JM13, merci ) - Correction d'un bug avec l'analyse xml de BrowseDirectChildren - Attention: Pour utiliser les raccourcis "boutons radios favorites" vous devez ajouter au moins deux radios depuis l'application SONOS "Desktop/IOS etc..." Version 0.0.7 - Amélioration notable de la stabilité, le vd est plus réactif. - Patch line 892: attempt to index local 'value' (a function value) - Patch line 1256: attempt to concatenate a nil value - Préparation au support de nouvelles fonctionnalités Fichier Zip : SONOS_Remote_v1.0.1.vfib SONOS_Remote_v1.0.0.vfib
  3. OJC

    VD Sonos TTS Remote

    VD Sonos TTS Remote v. 1.0.0 - 06/01/2018 Je vous présente le VD Sonos TTS Remote, qui requiert impérativement pour fonctionner le SONOS Remote V1.0.1 RC pour Fibaro HC2 de @Krikroff. Le but de ce VD est de disposer de favoris pour faire du TTS avec les Sonos ainsi que d'un clavier pour une utilisation dynamique : Sonos_TTS_Remote.vfib Pour le fonctionnement du clavier, il faut renseigner le champ Port du VD avec le nombre de secondes au-delà un clic sur le bouton insère un nouveau caractère. Il n'y a aucun autre paramétrage à effectuer, le VD identifie automatiquement les VD SONOS Remote V1.0.1 RC pour Fibaro HC2 présents sur la box pour interagir avec eux. Il y a deux boutons Favoris, mais vous pouvez en rajouter autant que nécessaire en faisant un copier-coller du code : local SonosTTS={credits="Sonos TTS Remote v. 1.1.0 - Copyright 2018 Olivier Meyer - GNU GPLv3",f=fibaro,global="x_sonos_tts",button="btnTransmission",language="fr-FR",duration="auto",getRemoteId=function(s)local x=s.f:getGlobalValue(s.global)if string.len(x or "")>0 then x = json.decode(x)if x and type(x)=="table" then if x.remote then return true, x.remote end end end return false,"[Sonos TTS Remote] Unable to retrieve Sonos TTS Remote ID from x_sonos_tts, please check variable" end,setTTS=function(s,i,m,v,l,d)local x=s.f:getGlobalValue(s.global)if string.len(x or "")>0 then x = json.decode(x)if x and type(x)=="table" then x.tts={};x.tts.sonos=i;x.tts.message=m;x.tts.volume=v;x.tts.language=l or s.language;x.tts.duration=d or s.duration;s.f:setGlobal(s.global,json.encode(x));return true end end return false, "[Sonos TTS Remote] Unable to set x_sonos_tts, please check variable" end,getBtn=function(s,i,n)local c,r=0,api.get("/devices/"..tostring(i))["properties"]["rows"] local x=#r for a=1,x do local y=#r[a].elements for b=1,y do c=c+1 if n==r[a].elements[b].name then return c end end end s.f:debug("[Sonos TTS Remote] Unable to locate button "..n..", check virtual device "..i);return nil end,sendTTS=function(s,i,m,v,l,d)r,c=s:setTTS(i,m,v,l,d)if r then r,c=s:getRemoteId()if r then s.f:call(tonumber(c),"pressButton",s:getBtn(c,s.button))return end end s.f:debug(c)end,} local _f = fibaro local _i = _f:getSelfId() local getSonos=function()local _c=_f:getValue(_i,"ui.lblSonos.value");local _x=_f:getGlobalValue("x_sonos_tts")if string.len(_x or "")>0 then _x=json.decode(_x)if _x and type(_x)=="table" then if _x.sonos then for i,j in ipairs(_x.sonos)do if _c==j.name then return j.id end end return nil end end end end local sid = getSonos() local message = "Votre message" local volume = _f:getValue(_i,"ui.sliderVolume.value") local language = "fr_FR" local duration = "auto" _f:call(_i, "setProperty", "ui.favo.value", message) SonosTTS:sendTTS(sid, message, volume, language, duration) A noter, bien que le VD de @Krikroff se suffise à lui-même pour cela, que ce code est du coup fonctionnel dans n'importe quelle scène ou module virtuel, de la manière suivante : local SonosTTS={credits="Sonos TTS Remote v. 1.1.0 - Copyright 2018 Olivier Meyer - GNU GPLv3",f=fibaro,global="x_sonos_tts",button="btnTransmission",language="fr-FR",duration="auto",getRemoteId=function(s)local x=s.f:getGlobalValue(s.global)if string.len(x or "")>0 then x = json.decode(x)if x and type(x)=="table" then if x.remote then return true, x.remote end end end return false,"[Sonos TTS Remote] Unable to retrieve Sonos TTS Remote ID from x_sonos_tts, please check variable" end,setTTS=function(s,i,m,v,l,d)local x=s.f:getGlobalValue(s.global)if string.len(x or "")>0 then x = json.decode(x)if x and type(x)=="table" then x.tts={};x.tts.sonos=i;x.tts.message=m;x.tts.volume=v;x.tts.language=l or s.language;x.tts.duration=d or s.duration;s.f:setGlobal(s.global,json.encode(x));return true end end return false, "[Sonos TTS Remote] Unable to set x_sonos_tts, please check variable" end,getBtn=function(s,i,n)local c,r=0,api.get("/devices/"..tostring(i))["properties"]["rows"] local x=#r for a=1,x do local y=#r[a].elements for b=1,y do c=c+1 if n==r[a].elements[b].name then return c end end end s.f:debug("[Sonos TTS Remote] Unable to locate button "..n..", check virtual device "..i);return nil end,sendTTS=function(s,i,m,v,l,d)r,c=s:setTTS(i,m,v,l,d)if r then r,c=s:getRemoteId()if r then s.f:call(tonumber(c),"pressButton",s:getBtn(c,s.button))return end end s.f:debug(c)end,} local sid = -- id du VD correspondant au Sonos à utiliser local message = -- votre message local volume = -- le volume à utiliser local language = -- la langue à utiliser, paramètre optionnel à défaut duquel "fr_FR" qui est utilisé local duration = -- la durée à utiliser, paramètre optionnel à défaut duquel "auto" qui est utilisé SonosTTS:sendTTS(sid, message, volume, [language], [duration]) Voici les icônes, respectivement l'icône principale du VD qui est aussi prévue pour aller sur les boutons du clavier et le slider du volume, l'icône pour les boutons de sélection du Sonos, l'icône pour les boutons des favoris et l'icône pour le bouton Transmission : CREDITS Outre, bien évidemment, @Krikroff et son VD Sonos Remote sans lequel le présent VD serait sans le moindre intérêt, @seiq et son VD Keyboard publié sur le forum officiel.
  4. jojo

    IFTTT & Sonos

    Pour ceux qui aiment IFTTT : https://ifttt.com/sonos?utm_medium=Email&utm_source=Newsletter&utm_campaign=October_Newsletter&utm_term=Service
  5. Bonjour à tous, Nouveau dans le domaine de la domotique, j'ai acheté une Home Center 2 puisqu'elle me semblait simple d'utilisation, surtout pour le paramétrage et la création de scènes. J'ai fait l'intégration de tous mes modules Z-Wave sans difficultés et ai installé les Plug-ins Philips Hue et Sonos pour intégrer mes appareils dans la liste des modules. C'est relativement assez simple grâce aux Plugins ! Chaque module, qu'il soit z-wave ou installé via un plugin apparait bien dans chaque pièce et j'en ai le contrôle. Cependant, j'aimerais pouvoir créer des scènes qui déclenchent des modules installés via les plugins ou en déclencher en fonction de l'état de ces modules. Malheureusement, lorsque je cherche à créer des scènes, seuls les modules Z-Wave apparaissent... Pour illustrer mes propos, je vous ai joint deux screenshots. Comme vous pouvez le voir, mes périphériques apparaissent bien lorsque je suis dans "La Maison", mais ceux installés par plug-in ne sont plus présents lors de la création de scène... Pouvez-vous m'indiquer la marche à suivre pour que mes Philips Hue et enceintes SONOS apparaissent aux côtés des autres modules lors de la création de scènes ? Je vous remercie d'avance de vos réponses !
  6. Hello, Je comptais craquer du slip et acheter une ou 2 sonos, et là je vois cet article http://www.zdnet.com/article/sonos-accept-new-privacy-policy-speakers-cease-to-function/ Tout d'un coup un grand #wtf car bon y a des moments ou la collecte des data ca commence a bien faire. Parce que même 1984 commence a faire trop près de la réalité et le "je n'ai rien à cacher" n'est plus un discourt acceptable. Donc méfiez-vous
  7. AIRSONOS Ce tuto est dédié est pour une debian/ubuntu. Il a pour but d'expliquer comment installer l'application Airsonos. Mon script fonctionne sur un machine virtuelle. Il sera basé sur 4 points: 1- Installation de Nodejs 2- Installation AirSonos 3- Customisation du script 4- Démarrage automatique au boot Je fais le tuto avec le compte root, si vous utilisez un compte utilisateur ajouter sudo. 1- Installation de Node js Donc on commence par mettre le système àjour: apt-get update && apt-get upgrade L'application AirSonos nécessite la version node.js >= 0.10.33. On va donc installer sa: apt-get install build-essential python Maintenant on va dans le répertoire opt: cd /opt Ensuite on va télécharger les sources et compiler le tous ( la compilation peut prendre un peu de temps): wget http://nodejs.org/dist/v0.10.33/node-v0.10.33.tar.gz && tar xfz node-v0.10.33.tar.gz && cd node-v0.10.33 && ./configure && make && make install Voilàpour vérifier que c'est bien installer: node -v Sa doit vous afficher "0.10.33". Maintenant on passe àl'installation de AirSonos. 2- Installation d'AirSonos On doit commencer par installer les paquets suivant: apt-get install git libavahi-compat-libdnssd-dev libasound2-dev mc sudo On passe àl'installation de Airsonos npm install airsonos -g Il faut savoir que sur cette version il y a un problème, il affiche plusieurs fois les mêmes enceinte. Vous pouvez essayer pour voir en lançant simplement l'application par: airsonos Pour stopper l'application faite "ctrl + c". 3- Customisation du script Donc on va maintenant passer au modification des fichiers. mcedit /usr/local/lib/node_modules/airsonos/lib/main.js En dessous de la ligne 28 on ajoute: console.log('Searching for Sonos devices on network...'); var deviceList = []; Ligne 36 var deviceName = zoneAttrs.CurrentZoneName; if(deviceList.indexOf(device.host + ':' + device.port) >= 0) { if (flags.get('verbose')) { console.log('Skipping duplicate device found at',deviceName, '{' + device.host + ':' device.port + '}'); } return; } deviceList.push(device.host + ':' + device.port) Maintenant l'application est fonctionnelle. 4- Démarrage automatique au boot On va maintenant regarder pour le lancer au démarrage. npm install forever -g nano /etc/rc.local Et ajoutez avant "exit 0". sudo -u root -i /usr/local/bin/forever start /usr/local/bin/airsonos Et voila vos enceintes on maintenant la fonction Airplay. Il également possible d'installer l'application sur un synology. Source: https://github.com/stephen/airsonos
  8. Bonjour, Passionné de télécom et de multimédia, je voudrais investiguer le domaine de la domotique. Mes équipements actuels sont essentiellement: - réseau ethernet à domicile - Freebox + routeur avec un réseau familial de 10 VPN interconnectés - NAS Synology et VEHOtech - Sonos en multiroom - Plex pour le multimédia - chromecast pour streaming plex - tablette et smartphone Je viens de découvrir la box HC2 et elle semble bien correspondre à mes attentes. J'aurai besoin des précieux conseils des membres; je peux par ailleurs vous faire partager mon expérience sur les autres sujets. pln39
  9. Bonjour a tous Comme le titre l indique ,on va pouvoir jouer avec son installation SONOS via la HC2 Les codes ont été crée par deraaij ici: http://forum.fibaro.com/viewtopic.php?t=1196 Pour commencer il faut créer un périphérique virtuel ,comme expliqué ici: http://www.domotique-fibaro.fr/index.php/topic/81-création-dun-périphérique-virtuel-et-main-loop/ Ensuite il faut renseigner le périphérique: -Adresse IP= celle ci est indiquée dans une application sonos(ordi,tablette,smartphone) dans Paramètre : A propos de Sonos -Port TCP = 1400 arrivé a ça : Ajouter des Boutons: (pour ma part je n ai mis que ça) ses fonctions fonctionnent parfaitement, pour les autres faites vous plaisir sur le forum principal pour la suite ,on utilise les codes TCP (les LUA ne fonctionnent pas) donc une fois sur chaque bouton veillez a être sur 'string' et non lua Copier et coller les codes ci dessous sur chaque bouton correspondant : exemple: ATTENTION :LES SCRIPTS ci dessous NE fonctionnent PAS copier les scripts sur la forum officiel ic : http://forum.fibaro.com/viewtopic.php?t=1196 et supprimer les espaces a la fin des 3 premières lignes comme ici: http://www.domotique-fibaro.fr/index.php/topic/93-sonos/ - Play POST /MediaRenderer/AVTransport/Control HTTP/1.1 Content-Length: 266 SOAPACTION: "urn:schemas-upnp-org:service:AVTransport:1#Play" <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:Play xmlns:u="urn:schemas-upnp-org:service:AVTransport:1"><InstanceID>0</InstanceID><Speed>1</Speed></u:Play></s:Body></s:Envelope>0x0D0x0A0x0D0x0A -Stop POST /MediaRenderer/AVTransport/Control HTTP/1.1 Content-Length: 266 SOAPACTION: "urn:schemas-upnp-org:service:AVTransport:1#Stop" <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:Stop xmlns:u="urn:schemas-upnp-org:service:AVTransport:1"><InstanceID>0</InstanceID><Speed>1</Speed></u:Stop></s:Body></s:Envelope>0x0D0x0A0x0D0x0A -Pause POST /MediaRenderer/AVTransport/Control HTTP/1.1 Content-Length: 267 SOAPACTION: "urn:schemas-upnp-org:service:AVTransport:1#Pause" <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:Pause xmlns:u="urn:schemas-upnp-org:service:AVTransport:1"><InstanceID>0</InstanceID><Speed>1</Speed></u:Pause></s:Body></s:Envelope>0x0D0x0A0x0D0x0A - Previous POST /MediaRenderer/AVTransport/Control HTTP/1.1 Content-Length: 270 SOAPACTION: "urn:schemas-upnp-org:service:AVTransport:1#Previous" <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:Previous xmlns:u="urn:schemas-upnp-org:service:AVTransport:1"><InstanceID>0</InstanceID><Speed>1</Speed></u:Previous></s:Body></s:Envelope>0x0D0x0A0x0D0x0A -Next POST /MediaRenderer/AVTransport/Control HTTP/1.1 Content-Length: 266 SOAPACTION: "urn:schemas-upnp-org:service:AVTransport:1#Next" <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:Next xmlns:u="urn:schemas-upnp-org:service:AVTransport:1"><InstanceID>0</InstanceID><Speed>1</Speed></u:Next></s:Body></s:Envelope>0x0D0x0A0x0D0x0A -Volume POST /MediaRenderer/RenderingControl/Control HTTP/1.1 Content-Length: 324 SOAPACTION: "urn:schemas-upnp-org:service:RenderingControl:1#SetVolume" <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:SetVolume xmlns:u="urn:schemas-upnp-org:service:RenderingControl:1"><InstanceID>0</InstanceID><Channel>Master</Channel><DesiredVolume>_sliderValue_</DesiredVolume></u:SetVolume></s:Body></s:Envelope>0x0D0x0A0x0D0x0A -UnMute POST /MediaRenderer/RenderingControl/Control HTTP/1.1 Content-Length: 314 SOAPACTION: "urn:schemas-upnp-org:service:RenderingControl:1#SetMute" <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:SetMute xmlns:u="urn:schemas-upnp-org:service:RenderingControl:1"><InstanceID>0</InstanceID><Channel>Master</Channel><DesiredMute>0</DesiredMute></u:SetMute></s:Body></s:Envelope>0x0D0x0A0x0D0x0A - Mute POST /MediaRenderer/RenderingControl/Control HTTP/1.1 Content-Length: 314 SOAPACTION: "urn:schemas-upnp-org:service:RenderingControl:1#SetMute" <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:SetMute xmlns:u="urn:schemas-upnp-org:service:RenderingControl:1"><InstanceID>0</InstanceID><Channel>Master</Channel><DesiredMute>1</DesiredMute></u:SetMute></s:Body></s:Envelope>0x0D0x0A0x0D0x0A il ne vous reste plus qu'a sauvegarder votre module Les icônes pour chaque bouton: ( il y a surement mieux n hésitez pas a partagez )
  10. Je suis nouveau àfibaro et je veux faire de nouveaux amis sur ce forum pour partager les expériences.
  11. Bonjour, Cela fait plusieurs semaines que j'ai décidé de me lancer dans la domotique. Mon côté Geek a fortement motivé cela. Il a d'abord fallu choisir une box. Pas simple quand on débarque. J'ai retenu la meilleure... Fibaro. Bien sûr, certains éléments m'ont fait hésiter : quid de Zwave Plus ? Que penser d'une box élue la meilleure en 2012 alors que le domaine est en pleine évolution ? A 599€ on n'a pas envie de voir débarquer un HC3 une semaine après son achat. Maintenant la HC Lite débarque, amputée de certaines informations qui la rende difficile àcomparer avec sa grande soeur... Je n'ai pas encore franchi le pas mais je suis dans les startings blocks... Sinon, outre les ouvertures, éclairages... (sujets bien encadrés), je pense électrifier mes volets roulants actuellement mécaniques, gérer mon Netatmo et mon équipement Sonos... C'est un peu dans cette optique que je suis venu chercher de l'aidesur votre forum avant d'atteindre suffisament de maturité dans le sujet pour àmon tour apporter mon aide. Xavier
×