cherche exemple client udp socket
Bonjour à tous.
Ce n'est pas faute d'avoir cherché en long et en large, de tester en vain un bout de code pour récupérer une suite de 96 octets que me retourne un serveur local(localhost) en UDP. :oops:
Je pensais trouver facilement un exemple "client udp" sur lequel me reposer, que nenni. je ne trouve que des exemples pour du tcp.
Mes maigres compétences me font perdre mon latin entre class, methode, self je décode pas tous du class BasicUDPTest(ThreadedUDPSocketTest): de testsocket.py
------
Le serveur (un simulateur de conduite) m'envoie toutes les X milllisecondes cette suite d'infos: (on peux forcer ce x dans le serveur).
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| Each update sends the following UDP packet :
unsigned int Time; // time in milliseconds (to check order)
char Car[4]; // Car name
word Flags; // Combination of OG_FLAGS, see below
byte Gear; // Reverse:0, Neutral:1, First:2...
byte SpareB;
float Speed; // M/S
float RPM; // RPM
float Turbo; // BAR
float EngTemp; // C
float Fuel; // 0 to 1
float OilPress; // BAR
float Spare1;
float Spare2;
float Spare3;
float Throttle; // 0 to 1
float Brake; // 0 to 1
float Clutch; // 0 to 1
char Display1[16]; // Usually Fuel
char Display2[16]; // Usually Settings
int ID; // (optional ID - if specified in cfg.txt) |
Le bout de code
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| # -*- coding: iso-8859-1 -*-
import socket
host="127.0.0.1"
port=56661
s=socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
print "connecting ..."
s.connect((host, port))
print "connected"
infoLFS=[] # Liste qui contiendra les 96 octects chaque x millisecondes
while 1:
# appel du module "va lire les 96 octects que t'envoie le serveur en udp"
# je traite ici les octects dont j'ai besoin (déjà develloper)
if raw_input("Tapez q pour quitter: ")=="q":
break
conn.close()
s.close() |
Si une âme charitable pouvait m'aider à créer un module qui récupères chaque x millisecondes quelques octects d'un serveur en UDP..., je tourne en rond et il me semble que je ne suis pas le seul à la lecture d'autres post.