Voilà j'ai créé un WebSocket depuis un ESP32 accessible depuis l'extérieur (internet).
Je suis très satisfait du résultat, très peu de latence, c'est TOP.
J'ai fait une redirection de port dans ma box pour y accéder depuis n'importe où.
Maintenant, je désire ajouter plusieurs ESP pour d'autres fonctions mais sur le même réseau.
Et bien sûr je souhaiterai aussi y accéder d'internet.
Je ne vois pas comment faire sinon de paramétrer un port pour chaque ESP.
Ainsi chaque device à son port de com, mais ça ne me plait pas ...
L'idée finale est d'avoir plusieurs ESP connectés à la même box ou routeur.
Le code de l'ESP serait aussi identique dans tous les ESP, avec seulement les données d'identification personnalisée par ESP, du style en fonction du n° de série.
Il existe forcément une astuce, que j'ignore, pour faire en sorte que depuis une page web j'accède l'un ou l'autre des ESP même s'ils sont derrière un même routeur.
Bonjour sly37
Le principe est justement un numéro de port dédié, tu pourrais l'inscrire en EEPROM, ainsi tu ne changes pas le programme.
Sans cette "mécanique" comment pourrais-tu accéder sélectivement à tes ESP depuis l'extérieur ?
Ton adresse IP WAN est unique, donc la seule manière d'accéder à plusieurs services est de configurer plusieurs ports NAT.
Les adresses des services LAN sont forcément différentes, mais ces services peuvent très bien écouter sur le même port.
Exemple :
WAN LAN -> PORT
111.222.333.444:8080 192.168.1.100:80
111.222.333.444:8081 192.168.1.101:80
111.222.333.444:8082 192.168.1.102:80
L'autre solution est d'avoir un seul service visible de l'extérieur, et ce service redirige les requêtes HTTP en fonction des URLs vers les services concernés, et renvoie les réponses de ces services.
Si les services écoutent tous le même port, je devrais personnaliser le code des services pour qu'ils répondent aux requêtes de leur adresse et pas celle du voisin ?
En écrivant ces lignes, je pense que c'est possible sans personnalisation mais là en 2s j'ai pas la solution ...
L'autre solution effectivement sera d'avoir un ESP en Wifi qui redirige vers les autres ESP en ESP-NOW par exemple.
Du coup, vu de l'extérieur il n'y a qu'un seul service.
Là encore l'ESP "maître" devra faire le tri des requêtes, mais j'imagine que ça devrait fonctionner.
Pas forcément, c'est à toi d'indiquer, dans chaque ESP quel port il écoute. Si par défaut HTML écoute 80 ou 8080, tu peux dire à l'ESP1, écoutes 5080. Tu rediriges le port 5080 sur l'IP d'ESP1 et l'URL pour l'atteindre sera HTTP://urlTonServeur:5080
ça fonctionne dans l'autre sens - ce n'est pas du broadcast. Pour qu'ils entendent quelque chose, il faut que la requête leur soit routée (une trame émise à destination de l'adresse IP de votre ESP)
il faut aussi se renseigner sur le NAT (➜ Network address translation — Wikipédia) pour comprendre comment deux ordinateurs derrière votre routeur peuvent eux faire des requêtes et que la réponse leur revient spécifiquement à eux.
J'ai bien saisi mais vu de l'extérieur, mon navigateur attaque "l'adresse de la box : le port".
Comment va-t-elle savoir à qui rediriger, s'ils sont tous sur le même port ?
Pour info que je n'ai pas dit, j'utilise le WebSocket pour une question de fluidité, mais ça ne doit rien changer à ma connaissance.
J'ai paramétré mon NAT de box pour le 1er ESP, je vais voir cet aprem pour le paramétrer pour le 2nd ESP. Les 2 sur le même port de redirection, mais je ne comprends toujours pas comment la box saura à qui (quelle adresse => quel ESP) rediriger la requête.
D'autre part pour tester chaque service il faudra le faire depuis le WAN, pas en entrant l'adresse IP externe depuis un navigateur sur une machine locale.
Cela peut se faire depuis un tel mobile, mais sans utiliser le WIFI.
Mais cela dépend peut-être des box, en tous cas avec Orange, c'est le cas.
Pour l'explication, j'ai dû créé un compte il y a qq temps et j'en ai créé un autre il y a qq jours comme un abru....
Bref, quand je me suis connecté sur le forum avec mon mobile, il m'a proposé l'autre compte et paf....
Je ne veux pas pourrir ce post, mais comment puis faire pour supprimer un compte ?
êtes-vous modérateur et dans ce cas, pouvez-vous le faire ?
J'aimerai supprimer celui-ci : sylvainalphatest
vous pouvez supprimer vous même votre compte.
vous vous connectez sous le nom du compte que vous voulez supprimer
vous clickez sur votre avatar en haut à droite, choisissez le petit bonhomme puis Arduino Profile
il risque de vous demander de vous connecter à nouveau (problème de SSO chez Arduino...)
Dans le panneau ACCOUNT SETTINGS vous avez un lien pour détruire le compte
je ne l'ai jamais fait, mais je suppose qu'ensuite il y a demande de confirmation