Android and VoIP

You may have come to the end of this description of Android telephony surprised, and perhaps disappointed, to find no mention of Voice over IP (VoIP). After all, GoogleTalk supports voice calls from PC to PC. Why was this capability omitted from the core telephony functionality of Android?

Android was not designed to treat VoIP calls and mobile calls similarly or, from a programmer's perspective, through the same APIs. What you see described in this chapter is an abstraction for mobile telephony, not telephony in general. AT commands that are nearly universal in mobile telephony—and that are not used outside mobile telephony—pervade the APIs described here all the way up to the PhoneApp application. The inter-process interfaces are designed around capabilities of mobile telephony, mobile messaging, and mobile data.

As a result, designers of VoIP technologies for Android are left with some design decisions. The current direction treats VoIP as a separate application and makes it possible in the future to provide a very high-level integration with other parts of the system— for example, supporting the ACTION_CALL call in Intent objects. This development would give the user a choice between Android's built-in mobile telephony and an addon for VoIP telephony.

A deeper integration of mobile telephony and VoIP can be implemented in Android, but it would require extending the functionality of PhoneApp to encompass both IP and conventional mobile telephony, while providing a compatible interface to applications written to Android's TelephonyManager API.


0 0

Post a comment