Pasar al contenido

iOS

GitHub

En iOS, el plugin informa la llamada entrante a CallKit. Eso te da la hoja de llamadas entrante del sistema y acciones de llamada estándarizadas sin que tengas que construir tu propia interfaz de llamadas entrante nativa.

requestPermissions() se resuelve inmediatamente en iOS porque CallKit mismo no requiere un diálogo de permiso de ejecución.

import { IncomingCallKit } from '@capgo/capacitor-incoming-call-kit';
await IncomingCallKit.showIncomingCall({
callId: 'call-42',
callerName: 'Ada Lovelace',
handle: '+1 555 010 020',
ios: {
handleType: 'phoneNumber',
supportsHolding: true,
supportsDTMF: false,
},
});

Usa ios.handleType para controlar cómo CallKit formatea el manejador:

  • generic para identificadores específicos de la aplicación
  • phoneNumber para números de teléfono reales
  • emailAddress para identidades basadas en correo electrónico

Este plugin no se registra por PushKit o APNs para usted.

Para un sonido de timbre verdadero en estado de fondo o terminado en iOS, su aplicación de anfitrión todavía necesita la configuración nativa de Apple push que coincida con su estrategia de transporte:

  1. Habilite las notificaciones de Push cuando su transporte utilice la entrega de Apple push.
  2. Habilite el modo de fondo de voz sobre IP cuando su aplicación utilice un flujo de empuje de VoIP.
  3. Envíe el evento de llamada entrante a su aplicación y invoque este plugin tan pronto como esté disponible la Capacitor puente.

Si su evento de timbre existe solo en JavaScript, obtendrá la mejor experiencia mientras la aplicación ya está ejecutándose en el fondo.

CallKit no reemplaza su SDK. Si la sesión de llamada real utiliza acceso a micrófono o cámara, las descripciones de uso todavía deben estar en su aplicación:

<key>NSMicrophoneUsageDescription</key>
<string>This app uses the microphone for calls.</string>
<key>NSCameraUsageDescription</key>
<string>This app uses the camera for video calls.</string>

Añada solo las claves que su flujo de llamada real necesita.

Mantenga estas responsabilidades en su capa de aplicación

Sección titulada “Mantenga estas responsabilidades en su capa de aplicación”
  • Registro de PushKit y APNs
  • Autenticación y refresco de token
  • Unirse a la habitación real o sesión de VoIP después de callAccepted
  • Finalizar o reconciliar el estado de llamada remota cuando el complemento emite callDeclined, callEnded, o callTimedOut

If you are using iOS para planificar el trabajo de plugin nativo, conecte con Usando @capgo/capacitor-kit-de-llamada-ingresante para la capacidad nativa en Usando @capgo/capacitor-kit-de-llamada-ingresante Capgo Directorio de Plugins para el flujo de trabajo del producto en Capgo Directorio de Plugins Capacitor Plugins por Capgo para el detalle de implementación en Capacitor Plugins por Capgo Agregar o Actualizar Plugins para el detalle de implementación en Agregar o Actualizar Plugins, y Alternativas de Plugins de Ionic Enterprise para el flujo de trabajo del producto en Ionic Enterprise Plugin Alternativas.