[Twisted-Python] twisted and gprs networks
p.mayers at imperial.ac.uk
Sun Jan 7 09:50:56 MST 2007
John Aherne 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.
Those two paragraphs seem, to me, to be contradictory. The IP might
change, but you need to know the IP?
> 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.
Sessions need not be tied to a particular transport layer connection.
HTTP applications commonly deploy sessions (for example, using cookies)
that span multiple transport layer connections.
> 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.
You haven't defined the problem well enough for me to suggest a specific
solution, but Twisted can do all of the things above.
Could you give a bit more detail on what you want to achieve?
More information about the Twisted-Python