Aller au contenu

Messages recommandés

Posté(e)

bonjour,

 

Quelqu'un saurait-il où trouver la documentation concernant la commande Net.FHttp et les commandes liées? J'ai trouvé dans le forum, dans les tutoriels et ailleurs de nombreux exemples, mais pas la définition. Je débute en script LUA, mais ca n'a pas l'air de faire partie des fonctions de base, car je n'ai rien trouvé non plus sur lua.org.

Merci par avance,

 

Laurent.

Posté(e)

Net.fhttp est une couche fibaro ;) et pas natif LUA donc... Pour la documentation il y a un lien sur ce forum, tu trouveras aussi de nombreux exemples pour la mise en place dans mes codes mais pas seulement ... Que souhaites tu savoir exactement ?

Envoyé de mon iPhone àl'aide de Tapatalk

Posté(e)

Merci pour l'info. En fait, les exemples me suffisent pour mes besoins actuels, mais je voulais voir le potentiel de cette couche, et toutes les possibilités offertes.

De quel lien parles-tu? si c'est un lien vers docs.fibaro.com, ils semblent tous morts... et sur le site de Fibaro, je n'ai rien trouvé en anglais sur le sujet.

Posté(e)

En fait je pensais plus a ici http://www.domotique-fibaro.fr/index.php/cp/2-api-fibarofr/ mais le package Net.* n'est peut-être pas documenté ...

 

Pour la partie docs.fibaro.com sachant que l' API est en bêta depuis la sorite de la V3 pour moi c'est un signe :15: et il risque d'y avoir du changement :rolleyes:

 

Sinon:

-- Pour créer un client http
local http= Net.FHttp(IP, PORT);

-- En cas de besoin d'identification du client il faut utiliser ceci:
http:setBasicAuthentication(username, password);

-- Demande en méthode GET, il faut passer l'uri sans le domaine ni le port
-- result -> le retour de la requete
-- status -> l'état de la reponse 200 (ok) / 500 (err serveur) etc... une petite recherche sur le net et tu auras tous les codes
-- errorCode -> si 0 tout est ok, sinon erreur, ce n'est pas documenté pas Fibaro mais 2 est souvent un plantage du client et 1 une err serveur...
local result, status, errorCode = HC2:GET("/index.html");

-- Donc il faut tester avant d'utiliser
if tonumber(status) == 200 then
  fibaro:debug("ok nous pouvons continuer");
  -- exemple utilisation d'un retour en json
  local s = json.decode(result);
  fibaro:debug(s.root);
else
  fibaro:debug("il y a un problème, status:" .. status .. " err: " .. errorCode )
end

je viens de taper tout cela depuis ma tablette et des coquilles sont possibles

 

:)

Posté(e)

local SMS = Net.FHttp('192.168.0.38', 9090);

local result, status, errorCode = HC2:GET("/sendsms?phone=06********&text=ceci%20est%20unt%20test&password=admin");

if tonumber(status) == 200 then

fibaro:debug("SMS envoyé");

else

fibaro:debug(status);

end

Et qqun peut me dire pourquoi ce code ne passe pas (Ci dessus). Il me sort "attempt to index global Net (a nil value)...

Posté(e)

Non, j'ai corrigé déjàcette variable, cela ne change rien, j'ai l'erreur dès la ligne 1...

Posté(e)

Dis moi, c'est pas ton vrais numéro de portable j’espère? si oui, tu devrais le masquer.

 

Sinon , ceci devrai marcher pour toi :

HC2 = Net.FHttp("192.168.0.xxx",9090)
 
response = HC2:GET("sendsms?phone=0662xxxxxx&text=ceci%20est%20un%20test&password=xxx")
Posté(e)

Oui pas de Net.* dans les scènes ... Enfin pour le moment ;)

Envoyé de mon iPhone àl'aide de Tapatalk

Posté(e)

Et moi je l'ai mis dans une scène... Voilà  la raison. Merci !

Le code que j'avais mis passe effectivement dans un module virtuel sans soucis du coup...

 

Et si du coup je voudrais l'appeler depuis les notifications, c'est faisable ?

 

[OFF]Merci Moicphil pour le numéro...

Posté(e)

pas de problème, pour cela il faut utiliser

fibaro:call(VIRTUAL_DEVICE_ID, "pressButton", X);

ou X correspond au numéro du bouton qui exécute ton code dans ton vd ;)

 

Edit: lorsque tu parles de notification c'est bien depuis une scène ?

Posté(e)

Depuis une scène du coup j'avais réussi Krikroff avec la même chose que tu m'as mis, mais en fait je voulais savoir si on pouvait l'utiliser directement depuis les notifications du panneau des notifications, mais on dirait que non. A moins de passer par une scène qu'on appellerai dans les notifications ?

Posté(e)

Non ce n'est pas possible depuis les notifications.

 

Bon honnêtement je n'utilise pas le panneau des notifications que je trouve inutile dans l'état pour plusieurs raisons mais la principale: Les notifications du panneau sont statiques alors qu' en LUA elles deviennent dynamiques ex: "porte du garage ouverte depuis 2 heures", "La température est de 22,5°C" etc...

Posté(e)

Ca je suis d'accord Krikroff, mais bon c'est un peu dommage, car pour des choses très simple, cela est largement suffisant et simple à  utiliser.

Sinon pour l'alarme par contre, en le mettant dans une scène simple, on peut l'appeler depuis le panneau alarme.

 

Donc pas le choix, il faut donc créer une scène pour l'utiliser. Merci en tout cas.

Posté(e)

Merci àtous pour toutes ces explications, c'est déjàplus clair pour moi. Moi aussi j'avais essayé d'utiliser cette librairie Net. dans une scène.

×
×
  • Créer...