
labomatik
Membres confirmés-
Compteur de contenus
186 -
Inscription
-
Dernière visite
-
Jours gagnés
2
Tout ce qui a été posté par labomatik
-
perso je n'ai aucune connaissance de ce que l'API fait exactement (ou pas), le fait est que avec l'API + mon IP externe le risque est réel. Maintenant de dire qu'il est de 90% on en est loin. C
-
donc en gros: home.fibaro a mon IP publique, acces à l'api de ma box avec mon login et pass l'exposition est discutable
-
la detection de personne et le taux d'humidité ne fait qu'ouvrir la bouche au maximum mais la vitesse est réglable sur un bouton externe
-
avec le home.fibaro elle est exposée et perso je prefere le fix sur ma version stable que sur la v4...
-
Une idée si Fibaro va produire un sécurity fix? http://en.wikipedia.org/wiki/Shellshock_(software_bug)
-
Je suis justement sur la meme problématique à la maison. J'ai une VMC simpleflux de chez RENSON http://www.renson.be/fr/systeme-de-ventilation-c+.html J'ai un commutateur 3 positions que je vais domotiser de la même façon que toi. Parcontre je me pose des questions sur la façon de l'utiliser avec les 3 bouches que j'ai : 2 bouches toilettes (detecteur presence), 2 bouches SDB (detecteur presence et hygro ) est ce que c'est raisonnable de dire que lorsque l'alarme est enclenchée (cad personne à la maison) la VMC peut etre coupée? Merci
-
Un petit qnap X51 ;-) sortie HDMI, Intel Celeron J180,... Mais bon apres c'est l'éternel débat qnap/syno làje rentre pas dedans...
-
ça vient du module météo de Steven.
-
de steven: -- ------------------------------------------------------------------------------------------------------------- -- Ceci est une version modifiée par Steven de Corona-XML-Module par Jonathan Beebe qui a son tour -- est basée sur Alexander Makeev's Lua-only XML parser . -- see https://github.com/Cluain/Lua-Simple-XML-Parser -- ------------------------------------------------------------------------------------------------------------- PlexHC2.newParser = function() parseXml = {} parseXml.FromXmlString = function(value) value = string.gsub(value, "([%x]+)%;", function(h) return string.char(tonumber(h, 16)) end); value = string.gsub(value, "([0-9]+)%;", function(h) return string.char(tonumber(h, 10)) end); value = string.gsub(value, "'", "'"); value = string.gsub(value, ">", ">"); value = string.gsub(value, "<", "<"); value = string.gsub(value, "&", "&"); return value; end parseXml.ParseArgs = function(node, s) string.gsub(s, "(%w+)=([\"'])(.-)%2", function(w, _, a) node:addProperty(w, parseXml.FromXmlString(a)) end) end parseXml.ParseXmlText = function(xmlText) local stack = {} local top = parseXml.newNode() table.insert(stack, top) local ni, c, label, xarg, empty local i, j = 1, 1 while true do ni, j, c, label, xarg, empty = string.find(xmlText, "<(%/?)([%w_:]+)(.-)(%/?)>", i) if not ni then break end local text = string.sub(xmlText, i, ni - 1); if not string.find(text, "^%s*$") then local lVal = (top:value() or "") .. parseXml.FromXmlString(text) stack[#stack]:setValue(lVal) end if empty == "/" then -- empty element tag local lNode = parseXml.newNode(label) parseXml.ParseArgs(lNode, xarg) top:addChild(lNode) elseif c == "" then -- start tag local lNode = parseXml.newNode(label) parseXml.ParseArgs(lNode, xarg) table.insert(stack, lNode) top = lNode else -- end tag local toclose = table.remove(stack) -- remove top top = stack[#stack] if #stack < 1 then error("XmlParser: nothing to close with " .. label) end if toclose:name() ~= label then error("XmlParser: trying to close " .. toclose.name .. " with " .. label) end top:addChild(toclose) end i = j + 1 end local text = string.sub(xmlText, i); if #stack > 1 then error("XmlParser: unclosed " .. stack[#stack]:name()) end return top end parseXml.newNode = function(name) local node = {} node.___value = nil node.___name = name node.___children = {} node.___props = {} function node:value() return self.___value end function node:setValue(val) self.___value = val end function node:name() return self.___name end function node:setName(name) self.___name = name end function node:children() return self.___children end function node:numChildren() return #self.___children end function node:addChild(child) if self[child:name()] ~= nil then if type(self[child:name()].name) == "function" then local tempTable = {} table.insert(tempTable, self[child:name()]) self[child:name()] = tempTable end table.insert(self[child:name()], child) else self[child:name()] = child end table.insert(self.___children, child) end function node:properties() return self.___props end function node:numProperties() return #self.___props end function node:addProperty(name, value) local lName = "@" .. name if self[lName] ~= nil then if type(self[lName]) == "string" then local tempTable = {} table.insert(tempTable, self[lName]) self[lName] = tempTable end table.insert(self[lName], value) else self[lName] = value end table.insert(self.___props, { name = name, value = self[name] }) end return node end return parseXml; end end
-
oui, j'esperai que quelqu'un aurai un commentaire sur mon dernier lien ou il y a une validation de RFID à2-3m avec une carte :-PP
-
ça part en sucette :-)
-
petit contribution que j'ai trouvé: http://www.phaseivengr.com/wireless-technologies/wireless-technologies-overview/about-wireless-rfid-sensors/about-ultra-long-range-uhf-rfid-sensors/
-
Bon ben j'ai parlé un peu trop vite, je ne sais pas ce qui se passe mais la partie Satel ne fonctionne pas comme je l'espérais avec GEA J'ai des notification alarme activée alors qu'elle est désactivée et un mix entre les zones (rdc au lieu du haut,...)
- 12 330 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Yesss ça marche.... merciii
- 12 330 réponses
-
- 1
-
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Fibaro a commencé le recensement des virtual devices. http://www.fibarouk.co.uk/support/virtual-device-database/ j'espere que cela se généralisera pour les futurs plugins...
-
etrange, toujours rien j'ai ce log maintenant [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] En cours : vérification (ID:9) [Armed] [turnOff,2041] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] Check : démarrage vérification (ID:9) [Armed] [turnOff,2041] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] Check : vérification des dates (ID:9) [Armed] [turnOff,2041] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] isActivate : vérification de l'activation (ID:9) [Armed] [turnOff,2041] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] isActivate : type : satel_partition (ID:9) [Armed] [turnOff,2041] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] !CANCEL! isActivate : désactivé (ID:9) [Armed] [turnOff,2041] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] En cours : vérification (ID:10) [inverse] [Armed] [turnOn,2041] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] Check : démarrage vérification (ID:10) [inverse] [Armed] [turnOn,2041] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] Check : vérification des dates (ID:10) [inverse] [Armed] [turnOn,2041] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] isActivate : vérification de l'activation (ID:10) [inverse] [Armed] [turnOn,2041] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] isActivate : type : satel_partition (ID:10) [inverse] [Armed] [turnOn,2041] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] !CANCEL! isActivate : désactivé (ID:10) [inverse] [Armed] [turnOn,2041] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] En cours : vérification (ID:11) [Armed] [VirtualDevice,2046,5] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] Check : démarrage vérification (ID:11) [Armed] [VirtualDevice,2046,5] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] Check : vérification des dates (ID:11) [Armed] [VirtualDevice,2046,5] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] isActivate : vérification de l'activation (ID:11) [Armed] [VirtualDevice,2046,5] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] isActivate : type : satel_partition (ID:11) [Armed] [VirtualDevice,2046,5] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] !CANCEL! isActivate : désactivé (ID:11) [Armed] [VirtualDevice,2046,5] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] En cours : vérification (ID:12) [inverse] [Armed] [VirtualDevice,2046,13] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] Check : démarrage vérification (ID:12) [inverse] [Armed] [VirtualDevice,2046,13] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] Check : vérification des dates (ID:12) [inverse] [Armed] [VirtualDevice,2046,13] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] isActivate : vérification de l'activation (ID:12) [inverse] [Armed] [VirtualDevice,2046,13] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] isActivate : type : satel_partition (ID:12) [inverse] [Armed] [VirtualDevice,2046,13] [DEBUG] 10:36:52: [ 2885 | Rez de chaussée ] !CANCEL! isActivate : désactivé (ID:12) [inverse] [Armed] [VirtualDevice,2046,13] mes lignes de code: GEA.add(id["ALARM_RDC"], 1*30, "", {{"Armed"},{"VirtualDevice", id["VD_PUSHOVER"], 5}}) GEA.add(id["ALARM_RDC"], 1*30, "", {{"Inverse"},{"Armed"},{"VirtualDevice", id["VD_PUSHOVER"], 13}}) GEA.add(id["ALARM_HAUT"], 1*30, "", {{"Armed"},{"VirtualDevice", id["VD_PUSHOVER"], 29}}) GEA.add(id["ALARM_HAUT"], 1*30, "", {{"Inverse"},{"Armed"},{"VirtualDevice", id["VD_PUSHOVER"], 30}})
- 12 330 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Genial... effectivement une bonne idée. Autre question j'ai commencé sur l'intégration GEA et Alarme satel j'ai ceci: -- Si on a un une activation de l'alarme au rez de chaussée depuis 1 minutes, on éteint le home cinéma GEA.add(id["ALARM_RDC"], 1*60, "", {{"Armed"},{"turnOff",id["HOME_CINEMA"]}}) -- Si on a un une désactivation de l'alarme au rez de chaussée depuis 30 secs, on allume le home cinéma GEA.add(id["ALARM_RDC"], 1*30, "", {{"Disarmed"},{"turnOn",id["HOME_CINEMA"]}}) Mais voilà , rien ne se passe, tu as une idée avec le log ci dessous? [DEBUG] 21:41:47: [ 2885 | Rez de chaussée ] En cours : vérification (ID:9) [Armed] [turnOff,2041] [DEBUG] 21:41:47: [ 2885 | Rez de chaussée ] Check : démarrage vérification (ID:9) [Armed] [turnOff,2041] [DEBUG] 21:41:47: [ 2885 | Rez de chaussée ] Check : vérification des dates (ID:9) [Armed] [turnOff,2041] [DEBUG] 21:41:47: [ 2885 | Rez de chaussée ] isActivate : vérification de l'activation (ID:9) [Armed] [turnOff,2041] [DEBUG] 21:41:47: [ 2885 | Rez de chaussée ] isActivate : type : satel_partition (ID:9) [Armed] [turnOff,2041] [DEBUG] 21:41:47: [ 2885 | Rez de chaussée ] !CANCEL! isActivate : désactivé (ID:9) [Armed] [turnOff,2041] [DEBUG] 21:41:47: [ 2885 | Rez de chaussée ] En cours : vérification (ID:10) [Disarmed] [turnOn,2041] [DEBUG] 21:41:47: [ 2885 | Rez de chaussée ] Check : démarrage vérification (ID:10) [Disarmed] [turnOn,2041] [DEBUG] 21:41:47: [ 2885 | Rez de chaussée ] Check : vérification des dates (ID:10) [Disarmed] [turnOn,2041] [DEBUG] 21:41:47: [ 2885 | Rez de chaussée ] isActivate : vérification de l'activation (ID:10) [Disarmed] [turnOn,2041] [DEBUG] 21:41:47: [ 2885 | Rez de chaussée ] isActivate : type : satel_partition (ID:10) [Disarmed] [turnOn,2041] [DEBUG] 21:41:47: [ 2885 | Rez de chaussée ] !CANCEL! isActivate : désactivé (ID:10) [Disarmed] [turnOn,2041]
- 12 330 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
petite idée d'amélioration: au niveau du TTS: ajout de msg = msg:gsub("'","%%27") pour convertir les ' correctement
-
Steven, une petite question liée à mon WAF: j'aimerai que le matin au reveil lorsque l'alarme est désactivée, au premier passage de détecteur en bas de lancer la lecture du calendrier via le karotz. est ce que tu as une idée de comment réaliser ça facilement? une solution que j'avais envisagé: au moment de l'activation de l'alarme on met un flag 0 dans une variable DETECTEUR_BAS_PREMIERE_NOTIF puis on fait un GEA.add(id['detecteur_bas'], 1,"", {{"If",{"Global", "DETECTEUR_BAS_PREMIERE_NOTIF", "0"}},{"Global", "Karotz", "Lecture calendrier"}, {"VirtualDevice", 20, 1},{"Global", "DETECTEUR_BAS_PREMIERE_NOTIF", "1"}} Merci Christophe
- 12 330 réponses
-
- support
- script lua
-
(et 1 en plus)
Étiqueté avec :
-
Tuto HC2 Plex - Films En Cours De Lecture
labomatik a répondu à un(e) sujet de labomatik dans Tutoriels
je pense que de toute façon le VD va faire des requetes vers le serveur avec le token donc il doit le valider vers plex.tv sans doute et donc renouvellement de la validité Christophe -
Tuto HC2 Plex - Films En Cours De Lecture
labomatik a répondu à un(e) sujet de labomatik dans Tutoriels
Shyrka973: ton token est toujours valide? -
une bonne grosse daube la béta... Satel incorrect, beaucoup de dead node, et les plugins sont tres tres limités. La béta est vraiment pas loin des alphas (la satel etait déjà erronnée dans les alphas) C
-
Eh bien j'ai bien fait d'acheter mon Karotz, les possibilités sont illimitées, merci Steven pour ce VD , avec GEA c'est vraiment le top...
-
Tuto Multimédia Fibaro Hc2 Vd Sonos Remote: Télécommande Pour Diffuseur Sonos
labomatik a répondu à un(e) sujet de Krikroff dans Tutoriels
génial ;-) -
dommage :-( j'espere que ce sera dans des prochaines mises à jours.