Aller au contenu

Mise A Jour Status Dans La Mini Interface De La Page D'acceuil


angelz

Messages recommandés

Bonjour,

 

encore besoin de vos lumières :-)

(j'ai pas encore eu acces au forum fibaro j'attends toujours la validation de mon compte ...)

 

donc je me tourne encore vers vous (désolé :-))

voila dans l'idée de faire un plugin switch linknx je me suis penché sur le 

baseType="com.fibaro.binarySwitch" 

voila ce que cela donne dans l'interface :

 

mini_351270Capturedcran20141107202751.pn

 

cela fonctionne qd je clique sur on la fonction tunOn est appelé et tout est correct la lampe s'illumine l'icone change et bouton on est selectioné(bleu) et vice versa pour off

par contre est ce que quelqu'un a une idée de comment mettre a jour cette interface soit suite a l'appuie sur l'interrupteur mural soit via scene ...

 

les fonctions

function SwitchLinknx:receive_data(id,value)
    value = tostring(value)
    id = tostring(id)
    local id_linknx_status = self.properties.id_linknx_status
    if (tostring(id_linknx_status) == id) then
      if (value == 'on') then
          self:turnOn()
          self:updateProperty('ui.icone.source','http://' .. ip_hc2 .. '/plugins/com.fibaro.developer.angelz.SwitchLinknx/img/onoff1.png') 
      elseif (value == 'off') then
          self:turnOff()
          self:updateProperty('ui.icone.source','http://' .. ip_hc2 .. '/plugins/com.fibaro.developer.angelz.SwitchLinknx/img/onoff0.png')  
      end
    end
end

function SwitchLinknx:turnOn()
  local ip_nodejs = self.properties.ip_nodejs
  local port_nodejs = self.properties.port_nodejs
  local id_linknx_cmd = self.properties.id_linknx_cmd
  local url = 'http://' .. ip_nodejs .. ':' .. port_nodejs .. '/send_cmd?demande=linknx&id=' .. id_linknx_cmd .. '&value=on'
    
  self:httpRequest(url)
  self:updateProperty('ui.icone.source','http://' .. ip_hc2 .. '/plugins/com.fibaro.developer.angelz.SwitchLinknx/img/onoff1.png') 
 -- self:updateProperty('deviceIcon','http://' .. ip_hc2 .. '/fibaro/icons/light/light100.png')   

end


function SwitchLinknx:turnOff()
  local ip_nodejs = self.properties.ip_nodejs
  local port_nodejs = self.properties.port_nodejs
  local id_linknx_cmd = self.properties.id_linknx_cmd
  local url = 'http://' .. ip_nodejs .. ':' .. port_nodejs .. '/send_cmd?demande=linknx&id=' .. id_linknx_cmd .. '&value=off'

  self:httpRequest(url)
  self:updateProperty('ui.icone.source','http://' .. ip_hc2 .. '/plugins/com.fibaro.developer.angelz.SwitchLinknx/img/onoff0.png')  
--  self:updateProperty('deviceIcon','http://' .. ip_hc2 .. '/fibaro/icons/light/light0.png')     
end

j'ai essayé de forcer avec :

--  self:updateProperty('deviceIcon','http://' .. ip_hc2 .. '/fibaro/icons/light/light0.png')

mais ca ne marche pas

 

dans le view.xml pas de souci mon icone par defaut se change correctement suivant la valeur decu mais pas la mini interface :(

 

quelqu'un a t il une idée :-)

 

merci

 

 

 

Lien vers le commentaire
Partager sur d’autres sites

Les modifications sur la propriété deviceIcon ne sont pas prisent en compte, j'ai déjàouvert un ticket sur le sujet. Il semble que l'icône de la tuile du plugin est pour le moment uniquement statique. De plus avec le type binary switch ou multilevel c'est directement la visu du device switch ou dimmer et rien d'autre enfin pour le moment

Envoyé de mon iPhone àl'aide de Tapatalk

Lien vers le commentaire
Partager sur d’autres sites

pourtant l'icone change lors de l'appuis sur on ou off sur l’aperçu mais je ne vois pas comment la faire changer par requête externe 

 

autre question aussi le fichier view.xml est obligatiore ? si on veux juste une aperçu sur la "tuile" un peu comme un device on-off zwave ou il n'y a pas d'interface agrandi

 

mini_564462Capturedcran20141107210925.pn

 

351270Capturedcran20141107202751.png

Lien vers le commentaire
Partager sur d’autres sites

Oui j'ai bien compris cela juste que l'icône est "propriétaire" Fibaro. Après pas de problème pour simuler un appui TurnOn ou TurnOff il faut implémenter l'interface "light", donc tu ajoutes deux méthodes dans ton code : TurnOn et TurnOff qui répondront aux ordres du contrôleur. Pour faire un TurnOn de tête tu dois modifier la propriété value idem pour TurnOff avec value à0

Envoyé de mon iPhone àl'aide de Tapatalk

Lien vers le commentaire
Partager sur d’autres sites

Oui je force en booléen c'est pareil et de 0 a 100 c'est pour le dimmer. Pour le view je pense que ce n'est pas obligatoire. Pour que nous parlions le même langage plugin:

Interface agrandi c'est le View

Tuile principale c'est le Main

Implémentation particulières ce sont les Interfaces : energy, power, light etc

Ton projet avance bien c'est top !

Envoyé de mon iPhone àl'aide de Tapatalk

Lien vers le commentaire
Partager sur d’autres sites

×
×
  • Créer...