#1 Le 08/09/2021, à 07:55
- airvb
Transferer des données avec socat sur un autre pc .
Bonjour ,
J'ai un esp8266 qui récupère les données d'un compteur linky avec espeasy. ( 88.161)
Les données sont envoyées via wifi avec ser2net sur un serveur. ( 88.150)
Elles sortent bien d'espeasy, j'ai controlé via log.
Un socat est lancé avec un script sur le serveur :
sudo socat -u -d -d tcp:192.168.88.161:8888 pty,link=/dev/ttyUSB21,ignoreeof,rawer
que je controle avec un
sudo screen /dev/ttyUSB21 1200,cs7
Le script décrypte les données, et alimente influx avec les données.
Tout cela fonctionne!
J'ai également un autre pc avec domoticz.qui peut lire les même données avec un script Teleinfo EDF with LAN interface.
Le truc c'est que les deux ne fonctionne pas ensemble créant une erreur EOF ! erreur eof
Q: Serait il possible avec socat de retransmettre les données reçues par le serveur (88.150) au même format au pc domoticz (88.161) ?
Hors ligne
#2 Le 08/09/2021, à 10:12
- airvb
Re : Transferer des données avec socat sur un autre pc .
Re,
J'ai essayé :
]sudo socat -u -d -d tcp:192.168.88.161:8888 tcp-listen:8889
2021/09/08 11:01:45 socat[436524] N opening connection to AF=2 192.168.88.161:8888
2021/09/08 11:01:45 socat[436524] N successfully connected from local address AF=2 192.168.88.150:60484
2021/09/08 11:01:45 socat[436524] N listening on AF=2 0.0.0.0:8889
2021/09/08 11:02:00 socat[436524] N accepting connection from AF=2 192.168.88.112:38614 on AF=2 192.168.88.150:8889
2021/09/08 11:02:00 socat[436524] N starting data transfer loop with FDs [5,5] and [7,7]
2021/09/08 11:02:00 socat[436524] N socket 1 (fd 5) is at EOF
2021/09/08 11:02:00 socat[436524] N exiting with status 0
On retombe sur le même soucis ,
Une tentative en essayant de 'copier' le flux USB.
sudo socat -d -d /dev/ttyUSB21,ignoreeof,rawer tcp-listen:8889
C'est pareil cela fait 'tomber' le 1er flux, et en plus les données reçues par domoticz sont pleines d'erreurs !
Une idée ?
Hors ligne
#3 Le 08/09/2021, à 12:09
- credenhill
Re : Transferer des données avec socat sur un autre pc .
hello
et quelque chose comime ça
socat ... | tee >(ssh $host "> /tmp/flux")
Hors ligne