SGBVida Posté(e) le 21 septembre 2018 Signaler Posté(e) le 21 septembre 2018 (modifié) Bonjour, je suis en train de développer un script pour mettre à jour un enregistrement DNS chez OVH via l'API. J'ai donc commencé à développer le script à l'aide du framework de Kristoff77 disponible sur github: https://github.com/Krikroff77/Fibaro-HC2-Lua-Framework J'ai actuellement un soucie de compréhension pour créer la request HTTP. Voici le code que j'utilise, si quelqu'un maitrise cette partie... -- set Toolkit.Net.* trace enabled Toolkit.Net.isTraceEnabled = true; -- Tk:trace("OVH API domain: "..Domain); local HttpClient = Toolkit.Net.HttpRequest("https://eu.api.ovh.com", 443); HttpClient:setReadTimeout(1000); --local TSTAMP , status, errorCode = HttpClient:request("GET", local response, status, errorCode = HttpClient:request("GET", "/1.0/auth/time/" ); HttpClient:disconnect(); HttpClient:dispose(); HttpClient = nil; Toolkit:trace("errorCode: "..errorCode); Toolkit:trace("status: "..status); et voici le debug: [DEBUG] 17:10:23: Toolkit.Net.HttpRequest > Total memory in use by Lua: 244.72 Kbytes [DEBUG] 17:10:23: Toolkit.Net.HttpRequest > Create Session on port: 443, host: eu.api.ovh.com [DEBUG] 17:10:23: Toolkit.Net.HttpRequest::setReadTimeout > Timeout set to 1000 ms [DEBUG] 17:10:23: Toolkit.Net.HttpRequest::request > /1.0/auth/time/ with method GET [DEBUG] 17:10:23: Toolkit.Net.HttpRequest::request > Add header [GET /1.0/auth/time/ HTTP/1.1] [DEBUG] 17:10:23: Toolkit.Net.HttpRequest::request > Add header [Host: eu.api.ovh.com:443] [DEBUG] 17:10:24: Toolkit.Net.HttpRequest::receive > Length of result: 504 [DEBUG] 17:10:24: Toolkit.Net.HttpRequest::receive > Status 400 [DEBUG] 17:10:24: Toolkit.Net.HttpRequest::receive > Length of headers reponse 239 [DEBUG] 17:10:24: Toolkit.Net.HttpRequest::disconnect > Connected: false [DEBUG] 17:10:24: Toolkit.Net.HttpRequest::dispose > Successfully disposed [DEBUG] 17:10:24: Toolkit.Net.HttpRequest::dispose > Total memory in use by Lua: 245.44 Kbytes [DEBUG] 17:10:24: errorCode: 0 [DEBUG] 17:10:24: status: 400 400 Bad Request The plain HTTP request was sent to HTTPS port nginx merci de votre retour. A+ Modifié le 21 septembre 2018 par SGBVida
Krikroff Posté(e) le 21 septembre 2018 Signaler Posté(e) le 21 septembre 2018 Outch... illisible via Tapatalk je regarde demain.Envoyé de mon iPhone en utilisant Tapatalk
SGBVida Posté(e) le 27 septembre 2018 Auteur Signaler Posté(e) le 27 septembre 2018 Désolé, je commence dans le LUA du coup c'est pas encore très clair pour moi... !
Shad Posté(e) le 27 septembre 2018 Signaler Posté(e) le 27 septembre 2018 Tu pars dans du codage délicat là, car à moins de lancer la scène toutes les 5 min tu auras un délais ou le DNS ne sera plus à jour. Donc faire des vérifications que l'ip à changer ou non, plus requete si IP différente. Le plus opti est de le faire depuis ton routeur qui mettra le DNS à jour des que l'ip change surtout qu'un routeur de vaut pas forcément cher.
SGBVida Posté(e) le 15 octobre 2018 Auteur Signaler Posté(e) le 15 octobre 2018 Bonjour, désolé du retard, pas trop dispo ces temps ci... oui en effet, je me rend compte que c'est du codage délicat, ceci dit je fait aussi cela pour apprendre ce nouveau langage! par ailleurs j'avais un DynDNS a l'époque, mais j'oublie tout le temps de revalider l'association ip/dyndns tous les mois... Du coup j'avais fait un script powershell pour le faire tout seul, je ne suis pas forcément a 1h près.
Messages recommandés