VoIP+IAX Program Theory for OM

Meadhbh S. Hamrick mhamrick at cryptonomicon.net
Thu Feb 21 22:47:13 CET 2008

Hey Kyle...

Yes.. this is a basic "convergence" function. I worked at Divitas  
Networks last year trying to make this happen on WinMoblie and  
Symbian phones. Sadly, I was unsuccessful in getting them to work on  
a Linux Solution, so I had to do all my Linux based VoIP  
experimentation on my own time, though I've been working exclusively  
in the SIP/SRTP solution space.

There's a lot of flexibility in this kind of solution.

For one, you don't really need a POTS phone number connected to your  
VoIP system, you can use it as a complete net-bearer system using IAX  
or SIP.

You could then add an IPCSP (IP Communications Service Provider) to  
link the POTS phone number to your asterisk box. This is sort of what  
Skype does with Skype-In / Skype-Out, but their network is closed and  
you have to wait for them to port their client to various platforms :-(.

And if you wanted to have a lot of fun, you could even roam between  
VoIP and cell. This is essentially what the carriers do with UMA, and  
it's what Divitas did, though uptake on their product has been pretty  

Several folks are in this game.... I've been looking at Mozilla's ZAP  
project recently, and "under the hood" on the client I can't imagine  
rewriting a media framework given that gStreamer seems to work quite  


On Feb 21, 2008, at 9:33 AM, Kyle Bassett wrote:

> Hey guys,
> I've been contemplating writing an IAX client for OM which would be  
> capable of the following:
> Prerequisites:
> -user has dedicated VoIP phone number routed to an Asterisk server[1]
> ---OR a compatible VoIP provider that supports fallback[2] calling
> -user has smartphone+OM with some form of internet access (wifi/bt  
> internet/ethernet)
> ---in addition to regular GSM/CDMA service on the smartphone
> -[optional] user has regular GSM/CDMA cell phone+service
> Usage situation:
> The user exchanges the VoIP number with all contacts.  When someone  
> attempts to contact the user, via dialing the VoIP number, the  
> asterisk server answers the call and checks to see if the user is  
> available over VoIP.  If the user's smartphone is on and connected  
> to the internet, the OM IAX client should connect to the asterisk  
> server automatically (depending on the user's settings, etc.)  If  
> the phone is available over VoIP, asterisk attempts to ring the  
> user over VoIP for a specified time.  If the user does not answer  
> or a connection problem persisted, then the asterisk server can  
> forward the call to the user's regular (OM or third party) cell  
> line.  Asterisk is very flexible and many permutations of this  
> example can be accomplished, ie. calling all the numbers at once,  
> and forwarding the call to the first to pickup.
> There are many benefits to this system:
> --User has complete control over the call routing and voicemail system
> --User can prevent the usage of regular cell airtime by using VoIP  
> as much as possible
> --User can give one phone number to all contacts and have asterisk  
> decide how to handle the call (routing not just to the cell phones,  
> but to home lines, etc.)
> --During the debugging process with OM+GTA0x, users can carry both  
> phones and still use just one number throughout the day
> ----Call comes in->asterisk tries OM[VoIP]-> tries OM[GSM] -> tries  
> regular third party cell phone (can also ring all numbers at once)
> [1] asterisk.org
> [2] fallback calling is a service that allows VoIP users to enter a  
> number (regular landline/cell) as a fallback in case the VoIP call  
> cannot be established
> I have tried to remain as general as possible, that way this post  
> won't become outdated with specifics to any specific hardware.  In  
> reality, we want OM on as many phones as possible.  ;-)
> Please provide any feedback or ideas!
> -Kyle
> _______________________________________________
> OpenMoko community mailing list
> community at lists.openmoko.org
> http://lists.openmoko.org/mailman/listinfo/community

Meadhbh S. Hamrick (It's pronounced "Maeve")
mhamrick at cryptonomicon.net

More information about the community mailing list