
jjacques68
Membres confirmés-
Compteur de contenus
4 346 -
Inscription
-
Dernière visite
-
Jours gagnés
39
Tout ce qui a été posté par jjacques68
-
hello ! Vos avez trouvé une solution pour le problème d'affichage des sliders dans le VD ? avoir par exemple 10-30 au lieu de 0-100 ?
-
Hello !! tout est dans le titre, j'essaye, dans une scène, de remettre à zero le compteur 2 de mon IPX 800 V3. Voilà ce que j'ai fait d'après mes recherches (forum CGE + API ipx) : if tonumber(IndexCounter) > 100 then local IPX = net.HTTPClient() IPX:request("http://192.168.xx.xx/protect/assignio/counter.htm?countername2=Alarme&counter2=0", { options = { method = 'SET', headers = {['Authorization'] = "BASIC xxxxxxxxxxxx="}, }, success = function(response) fibaro:debug("ok") end, error = function(response) fibaro:debug(response) end }) end IndexCounter est une variable qui récupère la valeur du compteur. Mais bien sà»r ça marche pas, et pas de retour d'erreur ! (j'ai le "ok" dans le debug) j'ai essayé de changer le SET et mettre GET, mais rien y change. Mais même en essayant de le remettre à zéro depuis le lien http dans un navigateur, ça marche pas... qqun à une idée ? merci tout plein !!!!
-
à quoi sert cette commande ? getMainVideoStreamType (qui me retourne 3), parce que je me demande si je pourrais pas changer aussi le format du plux principal. Visiblement, on peut le paramétrer setMainVideoStreamType avec une valeur de 0 à 3. Mais pas beaucoup d'explication dessus... je ne suis vraiment pas satisfait de ce "HD" de ces caméra, alors si je pouvais passer en flux principal en mpeg ... ce serait top ! c'est délirant ce que je dis ?
-
MAIS quel boulet je suis !!!!!!! Dans toutes mes essai de commandes, je mettais le user= admin avec un "e" à user !!!! au lieu de "usr" en tout cas, il fallait changer le type de substream effectivement ! MERCI !!!!!!!!!!!!!!!!
-
Merci ! J'essaye dès que je peux... Je tiens au courant !
-
Bonjour à tous ! j'ouvre un nouveau topic sur ces caméras, je sais qu'il en existe déjà un sur le sujet... Dans ce topic vous parliez de ces paramètres pour configurer une FI9821W dans la HC2 : Vous êtes sà»r de ces commandes ? Parce que je viens d'installer une FI9821EP (identique que FI9821W mais avec le POE), et pas moyen d'avoir une seule image sur la HC2. Par contre je peux arriver à commander la caméra (position preset...). La camera est visible avec mon tél via l'application UcamPro. Ensuite vous en êtes satisfait ? moi bof !!! En comparaison avec une FI8910E (même genre mais pas en HD), je suis plutôt déçu !! C'est hyper pas fluide !!! ok, l'image est très nette MAIS faut pas que ça bouge !! les FI8910 étaient bien plus fluides, et de qualité largement suffisante pour voir ce qu'il se passe sur un écran de téléphone ! Vous avez quoi comme réglages vidéo ? Et quand j'essaye de baisser la qualité de l'image, il me semble qu'elle remet automatiquement en HD !! Je précise que son firmware est à jour.
-
Votre avis ? Scène Pour Tester Son Ip Public
jjacques68 a répondu à un(e) sujet de jjacques68 dans HC2
alors je viens d'essayer ta proposition : setTimeout(pcall(function() RequestIP() end), 5000) mais ça ne fonctionne pas, c'est comme si le setTimeout n'était plus temporisé. ça enchaine les boucles à la suite (plusieurs par seconde) et du coup j'ai essayé de placer le pcall sur l'appel de la fonction check : pcall(CheckIp, response.data) Mais le comportement reste le même, que précédemment, c'est à dire arrêt de la scène quand plus de connexion. Et toujours sans message d'erreur !! -
Votre avis ? Scène Pour Tester Son Ip Public
jjacques68 a répondu à un(e) sujet de jjacques68 dans HC2
Je teste ça dès que je peux, Je tiens au courant ! Merci ! -
Votre avis ? Scène Pour Tester Son Ip Public
jjacques68 a répondu à un(e) sujet de jjacques68 dans HC2
oui j'ai déjà vu cette fonction, mais je sais pas où m'en servir, et quoi faire du retour de cette fonction... -
Topic unique Antenne Pour Modem 4G
jjacques68 a répondu à un(e) sujet de jjacques68 dans Périphériques et matériels autres
alors j'ai fait un essai fatiguant mais concluant j'avais une rallonge SMA de 10m, j'ai tirer cette rallonge de la cave pour finir dans le grenier (juste assez de câble ) et là ou j'habite il y a 2 antennes Bouygues piles dans le même axe. Comme tu dis, il faut bien l'orienter. du coup maintenant j'ai une réception 4G à 50 % stable (pointe à 75 %) Je pense pouvoir monter à 75 % stable en enlevant la dernière rallonge SMA de 2 m qui ne ressemble à rien (avec socle magnétique). Je vais prendre la même que celle de 10m mais en 2m. -
Topic unique Antenne Pour Modem 4G
jjacques68 a répondu à un(e) sujet de jjacques68 dans Périphériques et matériels autres
Bon alors antenne reçu. l'amélioration de la réception est vraiment lite. Pour la mesure, je me fie au voyant sur le modem qui correspond au pourcentage de force de réception dans le webadmin (25%-50%-75%-100%) La je suis à25% des fois 50% en 4G. Si je le sort, je passe à75% stable. Faut que je trouve un meilleur emplacement... -
Test Activer/désactiver Point Accès Wifi Via Hc2
jjacques68 a répondu à un(e) sujet de jjacques68 dans Périphériques et matériels autres
et voilà! c'est pas très beau, mais comme dit @Lazer, visiblement en telnet c'est du brut de décoffrage ! [DEBUG] 07:46:56: NetgearCave - 1F000103 login: [DEBUG] 07:46:56: NetgearCave - admin Password: [DEBUG] 07:46:56: NetgearCave - NetgearCave# [DEBUG] 07:46:56: NetgearCave - configure terminal NetgearCave(config)# [DEBUG] 07:46:56: NetgearCave - radio 2.4 disable NetgearCave(config)# [DEBUG] 07:46:56: NetgearCave - exit NetgearCave# [DEBUG] 07:46:57: NetgearCave - % Activating config... [DEBUG] 07:46:57: NetgearCave - disconnect Telnet [DEBUG] 07:46:57: NetgearRdc - 1F000103 login: [DEBUG] 07:46:58: NetgearRdc - admin Password: [DEBUG] 07:46:58: NetgearRdc - NetgearRdc# [DEBUG] 07:46:58: NetgearRdc - configure terminal NetgearRdc(config)# [DEBUG] 07:46:58: NetgearRdc - radio 2.4 disable NetgearRdc(config)# [DEBUG] 07:46:58: NetgearRdc - exit NetgearRdc# [DEBUG] 07:46:59: NetgearRdc - % Activating config... [DEBUG] 07:46:59: NetgearRdc - disconnect Telnet [DEBUG] 07:46:59: NetgearEtage - 1F000103 login: [DEBUG] 07:46:59: NetgearEtage - admin Password: [DEBUG] 07:46:59: NetgearEtage - NetgearEtage# [DEBUG] 07:47:00: NetgearEtage - configure terminal NetgearEtage(config)# [DEBUG] 07:47:00: NetgearEtage - radio 2.4 disable NetgearEtage(config)# [DEBUG] 07:47:00: NetgearEtage - exit NetgearEtage# [DEBUG] 07:47:01: NetgearEtage - % Activating config... [DEBUG] 07:47:01: NetgearEtage - disconnect Telnet [DEBUG] 07:47:01: OFF OK Mon problème de check semble résolu j'ai simplement augmenté le temps entre la fin du premier script et le lancement du check. Je pense que les AP travaillent encore après la validation... -
il me semble dans la notice de ce module, ils disent de faire 2 aller-retour en utilisant les boutons du modules sur la HC2. mais je sais plus si c'est juste après l'inclusion...
-
Test Activer/désactiver Point Accès Wifi Via Hc2
jjacques68 a répondu à un(e) sujet de jjacques68 dans Périphériques et matériels autres
alors !! j'en suis à la version 4 qui est de mieux en mieux je trouve et non toujours pas de classes !! (en fait je sais pas ce que c'est !!!) local deviceIP = { {name = "NetgearCave", ip = "192.168.xxx.xxx"}, {name = "NetgearRdc", ip = "192.168.xxx.yyy"}, {name = "NetgearEtage", ip = "192.168.xxx.zzz"} } local SendCommand = { {name="login", command="admin".."\n", txtmatch="Password:"}, {name="pass", command="xxxxxxx".."\n"}, {name="config", command="configure terminal".."\n", txtmatch="config"}, {name="wifiOff", command="radio 2.4 disable".."\n", txtmatch="disable"}, {name="retourMenu", command="exit".."\n"}, {name="save", command="save-and-activate".."\n", txtmatch="Activating"} } local devicePort = 23 local maxRetry = 5 local delayCommand = 100 function onError(com, device) fibaro:debug("ERROR sur "..device.." avec commande "..com) fibaro:call(fibaro:getGlobal("IdPhoneJJ"), "sendPush" , "Erreur lors de WIFI OFF sur "..device.." avec la commande "..com) end function StandbyLabel(name) fibaro:call(fibaro:getSelfId(), "setProperty", "ui.Label"..name..".value", "en cours...") end function Disconnect() for _,device in ipairs(deviceIP) do --boucle sur chaque device StandbyLabel(device.name) -- met les ... sur les label tcpSocket = Net.FTcpSocket(device.ip, devicePort) --ouvre la connexion tcpSocket:setReadTimeout(2000) --set the read timeout local result = "" local retry = 0 --attend le login while string.match(result, "login:") == nil and retry < maxRetry do fibaro:sleep(delayCommand) result = tcpSocket:read() retry=retry+1 end --si on a atteint les 5 essais alors erreur if retry >= maxRetry then onError(com.command, device.name) end fibaro:debug(device.name.." - "..result) --affiche le login for _,com in ipairs(SendCommand) do --boucle sur chaque commande de la table SendCommand local retry = 0 result="" bytes, errorCode = tcpSocket:write(com.command) if errorCode == 0 then --détermine le texte a trouver dans la réponse - C'EST NUL çA !! if com.txtmatch then txt = com.txtmatch else txt = device.name.."#" end --boucle jusqu'à trouver le texte MAX 5 essai while string.match(result, txt) == nil and retry < maxRetry do fibaro:sleep(delayCommand) result = tcpSocket:read() retry=retry+1 end --si on a atteind les 5 essais alors erreur if retry >= maxRetry then onError(com.command, device.name) end fibaro:debug(device.name.." - "..result) --affiche le resultat de la commande passée else --errorCode = 1 - dans quels cas c'est pssible ? onError(com.command, device.name) end end fibaro:debug(device.name.." - disconnect Telnet") --deconnect la session telnet et passe au device suivant tcpSocket:disconnect() tcpSocket=nil end return true --renvoie true si tout est ok (plus vraiment utile) end --MAIN local result = Disconnect() if result == true then fibaro:debug("OFF OK") else fibaro:debug("ERROR") end --effectue un check des device fibaro:sleep(15*1000) fibaro:call(fibaro:getSelfId(), "pressButton", 10) J'ai largement pioché les idées dans des VD sur le forum, désolé je serais plus capable de dire qui à fait quoi, mais en tout cas je vous remercie tous pour l'aide !! Sans doute certains se reconnaitront J'ai pu utiliser les string.match(). J'ai rajouter des sleep() dans les boucles de détections car je les limite à 5 essais et donc elles s'enchainaient trop vite ! A la fin du script, j'utilise l'appel d'un autre script pour vérifier l'état des 3 access point. En fonction de leur état, l’icône du VD change et les notifications push également. Et ça marche pas mal je pense ! le but est que lorsque que je me couche ou que je quitte la maison, j'enclenche l'alarme, et en même temps je coupe le wifi. quand je me réveil ou que je rentre, je coupe l'alarme et le wifi s'allume. Juste un soucis à régler j'ai mis un sleep de 15 secondes à la fin du script pour appeler le check. Mais souvent le check se passe mal. Comme si il ne pouvait pas "encore accéder" aux paramètres des AP - malgré les 15 secondes ou 30 même !! ça me plante le VD, il suffit juste de refaire un check et c'est bon... A méditer... -
pour le calibrage, y a un bouton calibrer dans les paramètres avancés du module.
-
peut être faire un recalibrage du module !
-
Test Activer/désactiver Point Accès Wifi Via Hc2
jjacques68 a répondu à un(e) sujet de jjacques68 dans Périphériques et matériels autres
euh pour la classe on va y aller doucement au fait, encore merci pour votre aide et patience !! donc voilà la version 3, un code un peu moins crade : local deviceIP = { {name = "NetgearCave", ip = "192.168.xxx.xxx"}, {name = "NetgearRdc", ip = "192.168.xxx.yyy"}, --{name = "NetgearEtage", ip = "192.168.xxx.zzz"} } local devicePort = 23 local SendCommand = { {name="login", command="admin".."\n", txtmatch="Password:"}, {name="pass", command="xxxxxxx".."\n"}, {name="config", command="configure terminal".."\n", txtmatch="config"}, {name="wifiOff", command="radio 2.4 disable".."\n", txtmatch="disable"}, {name="retourMenu", command="exit".."\n"}, {name="save", command="save-and-activate".."\n", txtmatch="Activating"} } function Disconnect() for _,device in ipairs(deviceIP) do --pour chaque device du tableau deviceIP --ouvre la connexion tcpSocket = Net.FTcpSocket(device.ip, devicePort) tcpSocket:setReadTimeout(2000) --affiche le login local result = "" while string.find(result, "login:") == nil do result = tcpSocket:read() end --on lit la réponse jusqu'à avoir le mot clé "login" fibaro:debug(device.name.." - "..result) --envoi des commandes for _,com in ipairs(SendCommand) do --pour chaque commande du tableau SendCommand result="" bytes, errorCode = tcpSocket:write(com.command) if errorCode == 0 then if com.txtmatch then --un peu nul, mais si pas de txtmatch dans le tableau SendCommand, on prend le nom du device txt = com.txtmatch -- prend le mot clé définit dans le tableau SendCommand else txt = device.name.."#" --prend le nom du device pour le prompt car différent d'un device à l'autre (+ le #) end while string.find(result, txt) == nil do result = tcpSocket:read() end --on lit la reponse jusqu'à avoir le mot clé définit dans txtmatch (ou le nom du device) fibaro:debug(device.name.." - "..result) else fibaro:debug("Error dans "..com.name) --en cas d'erreur, mais je vois pas trop laquelle en fait !?? end end --deconnect la session telnet fibaro:debug(device.name.." - disconnect") tcpSocket:disconnect() end end --appel de la fonction pincipale Disconnect() Et voila le debug : [DEBUG] 07:22:50: NetgearCave - login: [DEBUG] 07:22:50: NetgearCave - Password: [DEBUG] 07:22:50: NetgearCave - NetgearCave# [DEBUG] 07:22:50: NetgearCave - onfigure terminal NetgearCave(config)# [DEBUG] 07:22:50: NetgearCave - adio 2.4 disable NetgearCave(config)# [DEBUG] 07:22:50: NetgearCave - xit NetgearCave# [DEBUG] 07:22:51: NetgearCave - % Activating config... [DEBUG] 07:22:51: NetgearCave - disconnect [DEBUG] 07:22:51: NetgearRdc - login: [DEBUG] 07:22:51: NetgearRdc - Password: [DEBUG] 07:22:51: NetgearRdc - NetgearRdc# [DEBUG] 07:22:51: NetgearRdc - onfigure terminal NetgearRdc(config)# [DEBUG] 07:22:51: NetgearRdc - adio 2.4 disable NetgearRdc(config)# [DEBUG] 07:22:51: NetgearRdc - xit NetgearRdc# [DEBUG] 07:22:53: NetgearRdc - % Activating config... [DEBUG] 07:22:53: NetgearRdc - disconnect ça marche très bien, pareil pour activer le wifi. Le code est moins crade... Mais pas encore très satisfait, car en cas d'erreur (ex demande d'activer alors qu'il est déjà activé), le script s'arrête et ne déconnecte donc jamais la session. et puis le debug est par porpre ! ça commence bien (login:, password, prompt) et puis après ça part en cou... et comme vu avec @Lazer, je pense que ma détection du mot clé dans la réponse n'est pas bonne. Mais les fonction string() avec les pattern, c'est une prise de tête moooooonumentale ! ce qui aurait été top aussi, c'est de pouvoir dans le tableau SendCommand pour la valeur "txtmatch", insérer le nom du device comme ci-dessous (pour la commande pass et retourMenu), mais ça marche pas : local deviceIP = { {name = "NetgearCave", ip = "192.168.xxx.xxx"}, {name = "NetgearRdc", ip = "192.168.xxx.xxx"} } local SendCommand = { {name="login", command="admin".."\n", txtmatch="Password:"}, {name="pass", command="xxxxxxx".."\n", txtmatch=deviceIP.name.."#"}, {name="config", command="configure terminal".."\n", txtmatch="config"}, {name="wifiOff", command="radio 2.4 disable".."\n", txtmatch="disable"}, {name="retourMenu", command="exit".."\n", txtmatch=deviceIP.name.."#"}, {name="save", command="save-and-activate".."\n", txtmatch="Activating"} } d'où ce bout de code un peu nul dans la fonction : if com.txtmatch then --un peu nul, mais si pas de txtmatch dans le tableau SendCommand, on prend le nom du device txt = com.txtmatch -- prend le mot clé définit dans le tableau SendCommand else txt = device.name.."#" --prend le nom du device pour le prompt car différent d'un device à l'autre (+ le #) end -
Test Activer/désactiver Point Accès Wifi Via Hc2
jjacques68 a répondu à un(e) sujet de jjacques68 dans Périphériques et matériels autres
oula !! bon ok. alors c'était ça la fonction string.match() ?? parce que j'ai absolument rien trouver de compréhensible sur cette fonction sur les sites qui parlent de lua (quand ils en parlent de cette fonction...) il y a string.gmatch(), j'ai trouvé la string.find() et encore je l'utilise pas correctement... -
Test Activer/désactiver Point Accès Wifi Via Hc2
jjacques68 a répondu à un(e) sujet de jjacques68 dans Périphériques et matériels autres
je continue doucement... par contre je bug depuis un petit moment la-dessus : je viens d'ajouter la commande me permettant d'aller dans le menu config : bytes, errorCode = tcpSocket:write("configure terminal".."\n") --menu configuration if errorCode == 0 then --boucle jsuqu'à l'arrivé du menu config while string.find(result, "config") == nil do result = tcpSocket:read() end fibaro:debug(result) else fibaro:debug("Error dans le menu config") end et voici le debug : [DEBUG] 20:23:01: login: [DEBUG] 20:23:01: Password: [DEBUG] 20:23:02: NetgearRdc# [DEBUG] 20:23:02: onfigure terminal NetgearRdc(config)# c'est pas logique, je devrais avoir que "NetgearRdc(config)# " ?? !! et puis il est passé où le "c" de configue ? -
Test Activer/désactiver Point Accès Wifi Via Hc2
jjacques68 a répondu à un(e) sujet de jjacques68 dans Périphériques et matériels autres
alors j'ai essayer avec string.match() mais aucun resultat ???? J'ai contourné avec un string:find() voilà un bout du code qui m'emmène jusqu'au prompt : --ouvre la connexion tcpSocket = Net.FTcpSocket(deviceIp, devicePort) --set the read timeout tcpSocket:setReadTimeout(2000) local result = "" --affiche le login while string.find(result, "login:") == nil do result = tcpSocket:read() end fibaro:debug(result) --transmet le login bytes, errorCode = tcpSocket:write("admin".."\n") --login if errorCode == 0 then --boucle jusqu'à la demande du mot de pass while string.find(result, "Password:") == nil do result = tcpSocket:read() end fibaro:debug(result) else fibaro:debug("Error dans le login") end --trasmet le mot de pass bytes, errorCode = tcpSocket:write("xxxx".."\n") --pass if errorCode == 0 then --boucle jusqu'à l'arrivé du prompt while string.find(result, "NetgearRdc#") == nil do result = tcpSocket:read() end fibaro:debug(result) else fibaro:debug("Error dans le mdp") end --deconnect la session telnet tcpSocket:disconnect() fibaro:abort() et voilà le debug : [DEBUG] 18:39:44: login: [DEBUG] 18:39:44: Password: [DEBUG] 18:39:44: NetgearRdc# ça semble un peu plus propre sans les sleep() , mais par contre je traite plus le errorCode du coup ! c'est instantané l'enchainement des commandes... Modification faites, j'ai rajouter les errorCode... il faudra aussi que je regroupe dans une fonction les lignes de code, car elles sont répétitives. Et je mettrait les commandes telnet dans une variable tableau, un peu comme le watchdog avec le mot clé à rechercher ! -
Test Activer/désactiver Point Accès Wifi Via Hc2
jjacques68 a répondu à un(e) sujet de jjacques68 dans Périphériques et matériels autres
ok bon je m'y remets ce soir je posterai le nouvelle version merci ! -
Test Activer/désactiver Point Accès Wifi Via Hc2
jjacques68 a répondu à un(e) sujet de jjacques68 dans Périphériques et matériels autres
string.match() permet de faire une recherche de chaine dans une chaine ? c'est bien ça ? et le prompt c'est le nom du périphérique (en Telnet) suivi de ":", si je me trompe pas ! donc si je comprends bien, - je fais un read() dans une variable, - je fais un string.match(variable, prompt:) - si je trouve, c'est que la commande est terminée - je peux donc passer à la suivante. mais si la commande se passe mal, ou mauvaise valeur saisie, j'ai quand même le prompt qui revient. et les autres commandes ne passeront pas. Il faudrait alors analyser chaque réponse en détail, pas que attendre le prompt ! Et les réponses sont jamais identiques d'une commande à l'autre ! -
Test Activer/désactiver Point Accès Wifi Via Hc2
jjacques68 a répondu à un(e) sujet de jjacques68 dans Périphériques et matériels autres
dans la deuxième version j'ai fait des read() et afficher le resultat dans le debug, mais alors du coup ça veut dire que je peux enlever mes sleep() ? peux pas tester pour le moment... -
Test Activer/désactiver Point Accès Wifi Via Hc2
jjacques68 a répondu à un(e) sujet de jjacques68 dans Périphériques et matériels autres
merci, mais je me suis inspirer de quelque tuto bien sur... fermer la connexion TCP me créait une erreur... mais je pense qu'il faut que je mette un sleep avant pour pas fermer trop tôt. c'est pas très clair ces histoires de sleep et de setReadTimeOut. Si j'enchaine trop vite les commandes, j'ai l'impression qu'elles passent pas. doit certainement y avoir une logique, un truc du genre attendre la réponse précédente pour envoyer une nouvelle commande... ??? !!! -
Test Activer/désactiver Point Accès Wifi Via Hc2
jjacques68 a répondu à un(e) sujet de jjacques68 dans Périphériques et matériels autres
OOOHHHHHH PUNAISE !!!! siiiiii !!!!! ça marche !!!!!! (je m’étais trompé dans la commande d'activation/desactivation du wifi ) et j'ai un aperçu dans le debug !! local deviceIp = "192.168.xxx.xxx" local devicePort = 23 --ouvre la connexion tcpSocket = Net.FTcpSocket(deviceIp, devicePort) --set the read timeout tcpSocket:setReadTimeout(2000) bytes, errorCode = tcpSocket:write("admin".."\n") --login fibaro:sleep(1000) if errorCode == 0 then local result = tcpSocket:read() fibaro:debug(result) else fibaro:debug("error1") end bytes, errorCode = tcpSocket:write("xxxxxxx".."\n") --pass fibaro:sleep(1000) if errorCode == 0 then result = tcpSocket:read() fibaro:debug(result) else fibaro:debug("error2") end bytes, errorCode = tcpSocket:write("configure terminal".."\n") --menu configuration fibaro:sleep(1000) if errorCode == 0 then result = tcpSocket:read() fibaro:debug(result) else fibaro:debug("error3") end bytes, errorCode = tcpSocket:write("radio 2.4 disable".."\n") --coupe le wifi fibaro:sleep(1000) if errorCode == 0 then result = tcpSocket:read() fibaro:debug(result) else fibaro:debug("error4") end bytes, errorCode = tcpSocket:write("exit".."\n") --retour menu fibaro:sleep(1000) if errorCode == 0 then result = tcpSocket:read() fibaro:debug(result) else fibaro:debug("error5") end bytes, errorCode = tcpSocket:write("save-and-activate".."\n") --save modif fibaro:sleep(3000) --doit être plus long ????????? if errorCode == 0 then result = tcpSocket:read() fibaro:debug(result) else fibaro:debug("error6") end --tcpSocket:disconnect() --si je laisse ça marche pas !!! j'ai du mal avec cette ligne : --set the read timeout tcpSocket:setReadTimeout(2000) combien de temps faut-il laisser entre chaque envoi de commande ? merci pour votre aide !