En el script antes de leer del socket, se escribe en él.
Al parecer lee cuando el punto remoto le contesta, quizas debas hacer
cambios en esta función.

    def flush_text_buffers(self):
        self.ser.write('\n')
        time.sleep(1)
        self.ser.flushInput()
        #self.ser.flushOutput()
        self.ser.write('\n')
        line = self.ser.read(9)
        if line != '\n\rIBOB % ': raise Exception("Bad Reply: '%s'"%line)

Y toma en cuenta que UDP no te asegura la entrega de los datos.
No puedo ayudarte mucho más porque el caso que planteas es muy específico.
Yo tengo hecho un juego multiplayer con sockets pero utilizando tcp.
*los datos los mando así:*

datos = "%s\n" % datos
self.socket.sendall(datos)
time.sleep(0.02)

*Y los recibo así:*

entrada = ""
while not entrada:
    try:
        entrada = self.socket.recv(1024)
        entrada = entrada.replace("*", "").strip()
    except socket.error, err:
        ...
        time.sleep(0.02)
return entrada

Todo esto es del lado de los clientes y es un proceso que se repite cada 35
milesimas de segundo.
El servidor es mucho mas complejo porque es multihilo, ahí
utilizo SocketServer.StreamRequestHandler, SocketServer.ThreadingMixIn y
SocketServer.ThreadingTCPServer

El 5 de junio de 2015, 19:49, Rolando Paz <flx...@gmail.com> escribió:

> Hola nuevamente a todos.
>
> Pueden darme sugerencias sobre cómo puedo modificar el script adjunto que
> utiliza el puerto serial para comunciarse y cambiarlo para usar el puerto
> ethernet?
>
> Especificamente yo necesito obtener datos por UDP.
>
> Estaré muy agradecido por cualquier sugerencia, pues ya hice varios
> intentos y no lo logro :-)
>
> Estoy seguro que debo usar lo siguiente:
>
> HOST = '169.254.128.32'
> PORT = 6969
>
> #set up receiver using UDP sockets
> socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
> socket.connect((HOST, PORT))
>
> resp = socket.recv(4096)
>
> Pero no logro integrar estas lineas en el script ibob_serial.py
>
> Saludos
>
> Rolando
>
> _______________________________________________
> Python-es mailing list
> Python-es@python.org
> https://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
_______________________________________________
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a