Android - Protocolo SIP

SIP significa (Protocolo de inicio de sesión). Es un protocolo que permite a las aplicaciones configurar fácilmente llamadas de voz entrantes y salientes, sin tener que administrar sesiones, comunicación a nivel de transporte o grabación o reproducción de audio directamente.

Aplicaciones

Algunas de las aplicaciones comunes de SIP son.

  • Videoconferencia
  • Mensajería instantánea

Requisitos

Estos son los requisitos para desarrollar una aplicación SIP:

  • El sistema operativo Android debe ser 2.3 o superior
  • Debes tener una conexión de datos o WIFI
  • Debe tener una cuenta SIP para poder utilizar este servicio.

Clases SIP

A continuación, se muestra un resumen de las clases que se incluyen en la API SIP de Android:

No Señor Clase y descripción
1

SipAudioCall

Maneja una llamada de audio por Internet a través de SIP

2

SipErrorCode

Define los códigos de error devueltos durante las acciones SIP

3

SipManager

Proporciona API para tareas SIP, como iniciar conexiones SIP, y proporciona acceso a servicios SIP relacionados.

4

SipProfile

Define un perfil SIP, incluida una cuenta SIP, información de dominio y servidor

5

SipSession

Representa una sesión SIP que está asociada con un cuadro de diálogo SIP o una transacción independiente que no está dentro de un cuadro de diálogo.

Funciones de SIP

SIP tiene las siguientes funciones principales.

  • SIP permite el establecimiento de la ubicación del usuario
  • SIP proporciona un mecanismo para la gestión de llamadas
  • SIP proporciona negociación de funciones, de modo que todas las partes de la llamada pueden aceptar las funciones admitidas entre ellas

Componentes de SIP

SIP tiene dos componentes principales que se enumeran a continuación.

  • Cliente de agente de usuario (UAC)
  • Servidor de agentes de usuario (UAS)

UAC

UAC o User Agent Client son aquellos usuarios finales que generan solicitudes y las envían al servidor. Estas solicitudes son generadas por las aplicaciones cliente que se ejecutan en sus sistemas.

UAS

UAS o User Agent Server son aquellos sistemas que obtienen la solicitud generada por UAC. El UAS procesa esas solicitudes y luego, de acuerdo con las solicitudes, genera las respuestas correspondientes.

SipManager

SipManager es una API de Android para tareas SIP, como iniciar conexiones SIP, y proporciona acceso a servicios SIP relacionados. Esta clase es el punto de partida para cualquier acción SIP. Puede adquirir una instancia con newInstance ().

El SipManager tiene muchas funciones para administrar tareas SIP. Algunas de las funciones se enumeran a continuación.

No Señor Clase y descripción
1

close(String localProfileUri)

Cierra el perfil especificado para no realizar / recibir llamadas

2

getCallId(Intent incomingCallIntent)

Obtiene el ID de llamada de la intención de transmisión de llamada entrante especificada

3

isOpened(String localProfileUri)

Comprueba si el perfil especificado está abierto en el servicio SIP para realizar y / o recibir llamadas

4

isSipWifiOnly(Context context)

Devuelve verdadero si SIP solo está disponible en WIFI

5

isRegistered(String localProfileUri)

Comprueba si el servicio SIP ha registrado correctamente el perfil en el proveedor SIP (especificado en el perfil) para recibir llamadas.

6

isVoipSupported(Context context)

Devuelve verdadero si el sistema admite la API VOIP basada en SIP

7

takeAudioCall(Intent incomingCallIntent, SipAudioCall.Listener listener)

Crea un SipAudioCall para tomar una llamada entrante

8

unregister(SipProfile localProfile, SipRegistrationListener listener)

Anula manualmente el perfil del proveedor SIP correspondiente para dejar de recibir más llamadas