SGBVida 1 Signaler ce message Posté(e) 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é 21 septembre 2018 par SGBVida Partager ce message Lien à poster Partager sur d’autres sites
Lazer 8 473 Signaler ce message Posté(e) 21 septembre 2018 Invocation de @Krikroff Partager ce message Lien à poster Partager sur d’autres sites
Krikroff 1 924 Signaler ce message Posté(e) 21 septembre 2018 Outch... illisible via Tapatalk je regarde demain.Envoyé de mon iPhone en utilisant Tapatalk Partager ce message Lien à poster Partager sur d’autres sites
SGBVida 1 Signaler ce message Posté(e) 27 septembre 2018 Désolé, je commence dans le LUA du coup c'est pas encore très clair pour moi... ! Partager ce message Lien à poster Partager sur d’autres sites
Shad 315 Signaler ce message Posté(e) 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. Partager ce message Lien à poster Partager sur d’autres sites
SGBVida 1 Signaler ce message Posté(e) 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. Partager ce message Lien à poster Partager sur d’autres sites