IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Serveur UDP: probleme sur la réception de trame


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 9
    Par défaut Serveur UDP: probleme sur la réception de trame
    Bonjour,

    J'ai besoin de votre aide,
    Je réalise un espèce de serveur UDP en python. Mon code doit écouter sur un port et afficher toute les trames qui passent sur ce port. Mon client est une camera et m'envoi de l'UDP.
    Je vous explique le probleme, je ne recoit rien du tout sur mon serveur alors que avec WireShark je vois bien que la camera m'envoie des trames sur le bon port.
    Je suis branché en direct et je suis en IP fixe sur le meme sous réseau que la caméra.
    Je suis un windows 7 pro mon parfeu ne bloque rien.
    Voici mon code:


    import socket
    import sys

    HOST = 'localhost'
    PORT = 8400


    try :
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    print 'Socket creer'
    except socket.error, msg :
    print 'erreur de la creation de la socket code erreur: ' + str(msg[0]) + ' Message ' + msg[1]
    sys.exit()



    try:
    s.bind((HOST, PORT))
    except socket.error , msg:
    print 'erreur du bind code erreur : ' + str(msg[0]) + ' Message ' + msg[1]
    while True:
    msg = 'toto'
    sys.exit()

    print 'Socket binds sur le port: '+str(PORT)


    while True:
    print "execute"
    d = s.recvfrom(1024)
    data = d[0]
    addr = d[1]

    if not data:
    break

    reply = 'OK...' + data

    s.sendto(reply , addr)
    print 'Message[' + addr[0] + ':' + str(addr[1]) + '] - ' + data.strip()

    s.close()

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par may95 Voir le message
    Bonjour,

    J'ai besoin de votre aide,
    Je réalise un espèce de serveur UDP en python. Mon code doit écouter sur un port et afficher toute les trames qui passent sur ce port. Mon client est une camera et m'envoi de l'UDP.
    Je vous explique le probleme, je ne recoit rien du tout sur mon serveur alors que avec WireShark je vois bien que la camera m'envoie des trames sur le bon port.
    Je suis branché en direct et je suis en IP fixe sur le meme sous réseau que la caméra.
    Je suis un windows 7 pro mon parfeu ne bloque rien.
    Voici mon code:


    import socket
    import sys

    HOST = 'localhost'
    PORT = 8400


    try :
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    print 'Socket creer'
    except socket.error, msg :
    print 'erreur de la creation de la socket code erreur: ' + str(msg[0]) + ' Message ' + msg[1]
    sys.exit()



    try:
    s.bind((HOST, PORT))
    except socket.error , msg:
    print 'erreur du bind code erreur : ' + str(msg[0]) + ' Message ' + msg[1]
    while True:
    msg = 'toto'
    sys.exit()

    print 'Socket binds sur le port: '+str(PORT)


    while True:
    print "execute"
    d = s.recvfrom(1024)
    data = d[0]
    addr = d[1]

    if not data:
    break

    reply = 'OK...' + data

    s.sendto(reply , addr)
    print 'Message[' + addr[0] + ':' + str(addr[1]) + '] - ' + data.strip()

    s.close()
    Bonjour,

    Pour publier du code :

    C'est le bouton "#" en haut à droite de l'éditeur de messages du forum.

    Cela facilitera le travail des intervenants.


  3. #3
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 9
    Par défaut
    Desole c'est mon Premier Post


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
     
    import socket
    import sys
     
    HOST = 'localhost' 
    PORT = 8400 
     
     
    try :
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    print 'Socket creer'
    except socket.error, msg :
    print 'erreur de la creation de la socket code erreur: ' + str(msg[0]) + ' Message ' + msg[1]
    sys.exit()
     
     
     
    try:
    s.bind((HOST, PORT))
    except socket.error , msg:
    print 'erreur du bind code erreur : ' + str(msg[0]) + ' Message ' + msg[1]
    while True:
    msg = 'toto'
    sys.exit()
     
    print 'Socket binds sur le port: '+str(PORT)
     
     
    while True:
    print "execute"
    d = s.recvfrom(1024) 
    data = d[0] 
    addr = d[1] 
     
    if not data: 
    break
     
    reply = 'OK...' + data
     
    s.sendto(reply , addr)
    print 'Message[' + addr[0] + ':' + str(addr[1]) + '] - ' + data.strip()
     
    s.close()

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par may95 Voir le message
    Desole c'est mon Premier Post


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
     
    import socket
    import sys
     
    HOST = 'localhost' 
    PORT = 8400 
     
     
    try :
    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    print 'Socket creer'
    except socket.error, msg :
    print 'erreur de la creation de la socket code erreur: ' + str(msg[0]) + ' Message ' + msg[1]
    sys.exit()
     
     
     
    try:
    s.bind((HOST, PORT))
    except socket.error , msg:
    print 'erreur du bind code erreur : ' + str(msg[0]) + ' Message ' + msg[1]
    while True:
    msg = 'toto'
    sys.exit()
     
    print 'Socket binds sur le port: '+str(PORT)
     
     
    while True:
    print "execute"
    d = s.recvfrom(1024) 
    data = d[0] 
    addr = d[1] 
     
    if not data: 
    break
     
    reply = 'OK...' + data
     
    s.sendto(reply , addr)
    print 'Message[' + addr[0] + ':' + str(addr[1]) + '] - ' + data.strip()
     
    s.close()
    Bonjour,

    Tel que publié actuellement, votre code doit produire une erreur IndentationError à l'exécution.

    En Python, tout bloc doit être indenté (4 espaces), un bloc se caractérisant par les ":" en fin de ligne d'instruction try: except: if: etc...

    Commencez donc par là : indenter correctement vos blocs.

  5. #5
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 9
    Par défaut
    Oui je sais, si mon code se lance bien je bind sur mon port et je ne recoit rien...

  6. #6
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par may95 Voir le message
    Oui je sais, si mon code se lance bien je bind sur mon port et je ne recoit rien...
    Si on vous demande de publier le code tel que vous l'utilisez, c'est pour voir ce qui ne va pas.

    Si vous ne publiez pas le code que vous utilisez, nous travaillerons en aveugle et moi, je suis désolé, mais je ne sais plus où j'ai laissé traîner ma canne blanche...

    Commencez par publier le code tel que vous l'utilisez sans quoi nous risquons de passer à côté d'un détail qui pourrait bien être à l'origine de votre problème.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. MS Serveur 2005, probleme sur un update
    Par lazins dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 17/03/2008, 19h17
  2. probleme sur serveur uniquement.
    Par nico_4802 dans le forum ASP.NET
    Réponses: 10
    Dernier message: 08/08/2007, 15h57
  3. [ServerSocket]Problème communication client-serveur udp sur linux
    Par gdecrouez dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 29/09/2006, 14h59
  4. Problème sur Serveur Samba
    Par moule dans le forum Réseau
    Réponses: 1
    Dernier message: 05/06/2006, 21h30
  5. Problèmes sur le serveur forum ?
    Par Baptiste Wicht dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 19
    Dernier message: 24/04/2006, 16h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo