yet another fantasy idea: nextel-like walkie talkie feature?

michael at michael at
Wed Dec 13 19:26:06 CET 2006

I suppose everyone is familiar with the Nextel feature that behaves a bit like
a walkie-talkie. In summary, you can contact anyone within certian groups in a
half-duplex (meaning only one talks at a time) push-to-talk like environment.

I suspect this needs support at the provider, which I suppose is why Nextel is
the only one I've heard of that supports this.

But given the data network, and our own community of brilliant and motivated
developers, would it be possible to implement something like this?

I did use this feature briefly, and Nextel certainly seems to take short-cuts
in order to make this service work. This is my impression (not measured, nor
confirmed by any research):

   1. It is not real-time. There is a very noticable delay in hearinga message, but
   they keep it all together which I think serves to make it less noticable
   i.e. there may be a delay before you start hearing a message, but once it
   starts there are no pauses until the end i.e. "don't start playing a message
   until you have all of it".

   2. Sound quality is reduced compared to a phone call. I would guess they use
   an audio filter to remove all but the important frequencies for simple voice
   messages e.g. the high frequencies need to distinguish 'f' from 's' or 'b'
   from 'c' from 'e' are missing.

Off the top of my head, one way to do this might be: Implement a server to
keep track of phones using this service and their IP address. Phones check in
with the server when their IP address changes. Then when someone wants to talk
to someone else, they select the recipient and press "talk". Code on the phone
connects to the server, gets the IP address of the recipient, opens a data
connection to the recipient (either directly or through some proxy if
necesary), and establishes the appropriate half-duplex voip connection. Oh,
and we reprogram the cool audio chip to reduce sound quality and thus bitrate
to save bandwidth and decrease delays.

But this is just one possible solution. I'm sure there are many others.

Comments, both about the feature in general, and then about implementation?


More information about the community mailing list