Aller au contenu

Messages recommandés

Posté(e)

comme je change l'icone du périphérique en fonction de l'état de l’entrée de l'IPX:

 
if (fibaro:getGlobalValue ("Ipx1Input1") == "1") 
  then fibaro:call(vDeviceID, "setProperty", "currentIcon", "1000") 
  elseif (fibaro:getGlobalValue ("Ipx1Input1") == "0") 
  then fibaro:call(vDeviceID, "setProperty", "currentIcon", "1001")
  else fibaro:call(vDeviceID, "setProperty", "currentIcon", "device_dead0")
end
 
est-ce que je peux faire la même chose pour le bouton ?
Posté(e)

en fait, en changeant l'icone du bouton par l'icone de la fenêtre fermée, il n'y a plus de clignotement lorsque la fenêtre est fermée, mais non plus lorsque la fenêtre est ouverte ! Je ne sais pas comment cela se fait, mais le résultat est là......

  • 3 semaines après...
Posté(e)

Bonjour, 

 

Quelqu'un pourrait m'éclairer sur un pb que je n'arrive pas a résoudre ....surement très simple pourtant !

 

Je commande parfaitement mes relais de sorti de mon ipx avec mon hc2 ...je voudrais changer l'état d'un device ( lumiere)  lorsque un des input de l'ipx change ...

j'ai renseigné l'ip du hc2 , cocher " enable push" et mis :" /api/callAction?deviceID=16&name=turnOn" dans la fenêtre push 1 et ....rien ne se passe !

version 3.05.35

 

j'ai cherché dans les différents tutaux ...par contre j'ai lu qu'il fallait cocher " mot de passe " pour envoyer les push ...mais ou et quel mot de passe , celui du hc2 ?

 

merci de toute aide ...

 

laurent

Posté(e)

Oui l'api du HC2 réclame une authentification. Tu peux je pense renseigner le userid et mot de passe avec l'IP: userid:Mpd@IP

Envoyé de mon iPhone àl'aide de Tapatalk

Posté(e)

Tu peux tester la requête dans ton navigateur ?

Envoyé de mon iPhone àl'aide de Tapatalk

Posté(e)

Sur l'ipx dans le panneau push settings il y a une entrée LOGIN, dedans il faut passer le couple userid:Mpd En fait c'est tout

Envoyé de mon iPhone àl'aide de Tapatalk

Posté(e)

 @caraibe2,

Quand tu édites les inputs, tu tombes sur cette page où il faut renseigner:

Push notif IPX800v3

Server: IP du HC2

Port: 80

Login:Identification:mot de passe (du HC2)

 

Il faut cocher ensuite enable puis sauvegarder.

Et enfin mettre la commande dans le push. Push1 est envoyé quand le contact se ferme et Push2 quand il est relaché.

 

 

Posté(e)

@Did, :) j'avais corrigé dans mon post suivant mais avec ta capture c'est beaucoup plus "parlant". Le enable c'est uniquement pour le "LOGIN" ou pour activer/desactiver le push ?

 

Merci.

Posté(e)

je comprends maintenant ...quand j'édite les inputs, je n'ai pas la même interface : il manque la fenêtre login !!!

 

la version est 3.05.35...c'est pas la bonne !?

Posté(e)

 Je crois que la dernière version est la 3.05.42 mais perso je suis en 3.05.38, je changerais à  la prochaine.

  • 2 semaines après...
Posté(e)

Steven, question, j'utilise ton module virtual, une raison de ne pas avoir les petites cases avec le statuts ?

Posté(e)

La toute dernière : 3.05.42.

Mais les cases vides sont censés apparaître tout le temps, car je n'ai même pas ça... Il n'y a rien derrière statuts en fait...

Posté(e)

Bonjou à  tous,

Heureux proprietaire d'un IPX800 depuis peu, je souhaite bien évidemment le
faire communiquer avec ma HC2. Après la lecture de ce topic et les
excellentes réponses de Steven et krikroff pour ne citer qu'eux, j'ai quand
même un truc que je n'ai pas saisi. La commande des relais fonctionne
parfaitement, le retour d'état également, ce qui coince c'est l'affichage
de l'icone du device virtuel suivant son état.

j'ai fait un device virtuel pour chaque relais de l'IPX800

--Récupération de l'adresse IP et du Port inscrit sur le module virtuel.
--fibaro:getSelfId() retourne l'ID du module virtuel en cours.
local ip_module = fibaro:get(fibaro:getSelfId(),"IPAddress")
local port = fibaro:get(fibaro:getSelfId(), "TCPPort")
local id_module = fibaro:getSelfId()
local status = ""

HC2 = Net.FHttp(ip_module)
response ,status, errorCode = HC2:GET("/api/xdevices.json?cmd=20")
fibaro:debug("response = " .. response)
if response ~= nill and tonumber(status)==200 then
	response = json.decode(response)
  	
  	--Alimentation de la variable globale	
  	fibaro:setGlobal("IPXRELAIS4", response.OUT4)
  	 
  	-- initialisation valeur dans la barre d'état du périphérique virtuel
  	fibaro:log(fibaro:getGlobalValue("IPXRELAIS4").." ")
  	
  	--Alimentation du retour d'état
  	local temp = fibaro:getGlobalValue("IPXRELAIS4")
  	temp = string.gsub(temp, "1", " â–  ON" )
	temp = string.gsub(temp, "0", " â–¡ OFF")
 	fibaro:call(id_module, "setProperty","ui.Label1.value",temp)
  	--fibaro:sleep(1*1000)
  	  
  	--Modification de l'icone en fonction de l'état
  	fibaro:debug("etat = " ..fibaro:getGlobalValue("IPXRELAIS4"))
  	if (fibaro:getGlobalValue (fibaro:getGlobalValue("IPXRELAIS4")) == "1") then
		fibaro:call(id_module, "setProperty", "currentIcon", "1007") 
	elseif (fibaro:getGlobalValue (fibaro:getGlobalValue("IPXRELAIS4")) == "0") then
		fibaro:call(id_module, "setProperty", "currentIcon", "1008")
	else fibaro:call(id_module, "setProperty", "currentIcon", "1")
	end
else
	fibaro:debug("Error: Failed to load json")
end  

Je ne suis pas sur de mes codes pour currentIcon, 

Vous avez une idée ?

 

d'avance merci

Posté(e)

@gargamel01000

 

Tordu ton "If" ... relit le bien ... la version corrigée et optimizée donne 

local icon = "1"
local etat = fibaro:getGlobalValue("IPXRELAIS4")
if (etat == "1") then
   icon "1007"
elseif (etat == "0") then
   icon = "1008"
end
fibaro:call(id_module, "setProperty", "currentIcon", icon)
Edit : fibaro:getGlobalValue (fibaro:getGlobalValue("IPXRELAIS4")) ... c'est pas vraiment ce que tu veux car là  tu demandes la valeur de la variable global qui s'appelle "1" ou "0" :)
Posté(e)

Marche pas... Mais j'ai trouve le pourquoi !! En fait il faut désactiver le mot de passe de l'IPX pour que ton module fonctionne. On ne peut pas lui envoyer avec user:pass ?

 

Après cela fonctionne si on coupe le MDP.

×
×
  • Créer...