Cómo hacer una llamada telefónica en Windows Mobile con C#
Agosto 6th, 2009 Archivado en Movilidad, Tecnologías .NET
Un teléfono móvil moderno, provisto de Windows Mobile, nos permite abrir archivos de MS Office, leer PDFs, hacer fotos, leer el correo electrónico, acceder a contenidos online por RSS, llevar la agenda de actividades, gestionar nuestros contactos, escuchar música, ver vídeos, chatear, jugar, ejecutar aplicaciones de un amplio rango… Además, por si no fuera suficiente, también sirve para hacer llamadas telefónicas.
Realizar una llamada telefónica mediante código C# desde una aplicación nuestra de Windows Mobile es algo ridículamente simple, gracias a un recurso que Microsoft ha puesto a nuestra disposición: la clase Phone. Esta clase se encuentra definida dentro del ensamblado Microsoft.WindowsMobile.Telephony (en la DLL microsoft.windowsmobile.telephony.dll), por lo que debemos agregar una referencia a este ensamblado en nuestro proyecto de Visual Studio.

Ahora sólo nos resta declarar y crear un objeto de la clase Phone, y llamar a su método mágico: Talk().
Phone p = new Phone();
p.Talk(numero);
Este método recibe como parámetro un texto (string) que representa el número al cual se desea llamar: public void Talk(string number).
El proceso no es silencioso. Realmente lo que hace es ejecutar (y mostrar) el programa Teléfono del sistema operativo. Delega en él todas las operaciones, como por ejemplo, colgar la llamada.
Puedes descargarte el proyecto completo desde aquí.
¿Y por qué necesitaríamos realizar llamadas telefónicas desde una aplicación propia? ¿Acaso para escribir una versión mejorada del programa nativo? Yo conozco al menos un caso en que sí es necesario acudir a esta funcionalidad. Hace algunos años tuve que desarrollar una aplicación de telecomunicaciones que necesitaba, como parte de su funcionamiento, realizar llamadas automáticamente a un cierto número. La aplicación OIGAA convierte los teléfonos móviles en extensiones de la centralita corporativa, permitiendo a sus usuarios responder desde cualquier lugar como si estuvieran en la oficina, y ofreciendo además diversas funcionalidades de valor añadido. Aquí te dejo algunas capturas de pantalla de la aplicación ejecutándose en el emulador de dispositivos móviles.
- OIGAA: Pantalla de autenticación
- OIGAA: Conexión y actualización inicial de datos
- OIGAA: Agenda de contactos. Posibilidad de iniciar una conexión de VoIP
- OIGAA: Configuración del tipo de llamada y el mensaje de presencia
Enlaces de interés:
Código completo del ejemplo














Un comentario a “Cómo hacer una llamada telefónica en Windows Mobile con C#”
Por TOMAS SANTOS (4/Ene/2010
Hola.
Se puede desarrollar una aplicacion para cortar las llamadas antes de los 5 minutos.
Estaria ideal para los planes de Telcel en Mexico.