On Nov 10, 2006, at 8:50 AM, Andre Garzia wrote:

The client will write to the server then it will read from the socket to see if there was any answer.

That's what I tried to do, but (unless it was changed in the past two years) that is not how it works for UDP. I would have preferred something like that. It makes it more like TCP. In my message level scripts I make them more alike. Scott Raney set me straight on this some time ago when I reported bugs on the above method.

The client is able to write to the server fine, the datagrams arrive nicelly. The server is not able to answer back, no error is reported by the write to socket message but nothing is returned to the server, the read from socket message after the write to socket on the client returns empty. I've sent more than 1k packets, they could not be all droped since on one way it all works fine but on the other way they simply don't work.

Open the client-to-server with a callback. For UDP the callback is not a callback for when the open completes, it completes immediately. It is the callback for any return packets. This is the same kind of callback as 'accept' gets.

On the server end, handle the response with the handler for the 'accept' callback. The IP address & port is in the parameters. There is a socket to that destination open. Send back any packets you need (usually one) and then close it using the provided socket id.

For both that callback and the one for the server's accept you should close the incoming connection.

Rev doesn't allow specifying your local port, but you can crisscross one-way IP if you don't like the above methods.

If you have both a TCP 'accept' and a UDP 'accept' on the same port number, they look the same in the openSockets. When you close one or otherwise refer to one, you might not be closing or working with the one you think.

It's been a while since I have used UDP at this level on Rev, so there may have been changes.

Dar

_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to