[Twisted-Python] twisted and gprs networks

Jean-Paul Calderone exarkun at divmod.com
Sun Jan 7 09:59:50 MST 2007

On Sun, 07 Jan 2007 11:41:52 +0000, John Aherne <johna at johnaherne.co.uk> wrote:
>I am looking at using PDA devices talking to a server over gprs.
>I need to push data to the PDA over elapsed timeframes that might be hours. 
>Naturally during this timespan the device may have been dropped from the 
>network or acquire a different IP address.
>However to push data to the PDA, I need to record the IP and port used by 
>the PDA for its first contact since it is stuck behind a firewall.
>The socket needs to be kept open on the PDA so the server can keep 
>responding on the same session over a period of time.
>Using straight sockets I can do this by holding the reference to the IP/port 
>used by the PDA. And checking every now and then that the connection is 
>still valid. But I am no comms expert and I need to keep track of over 100 
>devices and keep reliably sending messages to them at random intervals.
>So, I thought it might be better to use some framework for the server since 
>I am no expert on sockets.
>But looking through the docs for twisted and some of the code, I can't see 
>anywhere how I can get and use a reference to the port and reuse the open 
>session on the PDA.
>Can I do this with twisted or should I look for some other way of doing what 
>I want.
>I was thinking I could use irc with twisted but not sure if I am barking up 
>the wrong tree.
>Thanks for any ideas of solving the problem.

It's not totally clear to me what you're after.  Perhaps you could define
some terms.  What is a "session"?  What kind of sockets are involved?  What
does it mean to "hold a reference" to an IP/port?

If I try to guess at the answers to these questions, then it sounds like
a pretty straightforward problem involving multiple connections, which is
easily enough handled in Twisted.


More information about the Twisted-Python mailing list