Zum Inhalt springen

Getting Started

GitHub

Sie können unsere AI-gestützte Einrichtung verwenden, um den Plugin zu installieren. Fügen Sie die Capgo-Fähigkeiten zu Ihrem AI-Tool hinzu, indem Sie die folgende Befehl ausführen:

Terminal-Fenster
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Verwenden Sie dann die folgende Anfrage:

Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-incoming-call-kit` plugin in my project.

Wenn Sie die manuelle Einrichtung bevorzugen, installieren Sie den Plugin, indem Sie die folgenden Befehle ausführen und folgen Sie den unten angegebenen Plattform-spezifischen Anweisungen:

  1. Installieren Sie das Paket

    Terminal-Fenster
    bun add @capgo/capacitor-incoming-call-kit
  2. Synchronisiere native Projekte

    Terminalfenster
    bunx cap sync
  3. Wählen Sie Ihre Klingelquelle Beschließen Sie, ob das eingehende Anrufereignis von Ihrem Backend, einem SDK wie Twilio oder Stream oder einem native Push-Path wie FCM oder PushKit stammt.

Diese Erweiterung besitzt nur die native eingehende Anrufpräsentation. Ihr App besitzt noch immer Transport, Authentifizierung und die tatsächliche Medien-Sitzung.

Die häufigste Produktionsmuster ist:

  1. Ihr Backend oder Ihr Anruf-SDK sendet ein Klingelereignis.
  2. Ihre App ruft showIncomingCall().
  3. Das Plugin präsentiert eine native Anrufer-UI.
  4. callAccepted erzählt Ihrer App, sich dem tatsächlichen Raum oder der VoIP-Sitzung anzuschließen.
  5. callDeclined, callEnded, oder callTimedOut erzählt Ihrer App, das Remote-Zustand zu bereinigen.
import { IncomingCallKit } from '@capgo/capacitor-incoming-call-kit';
await IncomingCallKit.requestPermissions();
await IncomingCallKit.requestFullScreenIntentPermission();
await IncomingCallKit.addListener('callAccepted', async ({ call }) => {
console.log('Accepted', call.callId, call.extra);
// Start or join your real call session here.
});
await IncomingCallKit.addListener('callDeclined', ({ call }) => {
console.log('Declined', call.callId);
// Tell your backend or SDK that the user declined.
});
await IncomingCallKit.addListener('callTimedOut', ({ call }) => {
console.log('Timed out', call.callId);
// Clear ringing state in your backend or SDK.
});
await IncomingCallKit.showIncomingCall({
callId: 'call-42',
callerName: 'Ada Lovelace',
handle: '+39 555 010 020',
appName: 'Capgo Phone',
hasVideo: true,
timeoutMs: 45_000,
extra: {
roomId: 'room-42',
callerUserId: 'user_ada',
},
android: {
channelId: 'calls',
channelName: 'Incoming Calls',
showFullScreen: true,
},
ios: {
handleType: 'phoneNumber',
},
});
  • callId: stabiler Identifikator, der später wiederholt wird endCall()
  • timeoutMs: bestmögliche Antwort ohne Timeout
  • extra: beliebige JSON-Werte, die im Listener-Payload zurückgegeben werden
  • android.channelId und android.channelName: Android-Notifikationskanal-Einstellung
  • android.showFullScreen: fordert die Android-Full-Screen-Eingangsanrufaktivität an
  • ios.handleType: wählen generic, phoneNumber, oder emailAddress für CallKit
const { calls } = await IncomingCallKit.getActiveCalls();
await IncomingCallKit.endCall({
callId: 'call-42',
reason: 'remote-ended',
});
await IncomingCallKit.endAllCalls({
reason: 'session-reset',
});
  • incomingCallDisplayed: Die native Benutzeroberfläche wurde erfolgreich angezeigt
  • callAccepted: Benutzer akzeptiert aus der native UI
  • callDeclined: Benutzer ablehnt vor dem Beitritt
  • callEnded: Ihre App oder die Plattform beendete die verfolgte Anruf
  • callTimedOut: Die Anruf blieb unbeantwortet bis timeoutMs

: Jeder Ereignis trägt das normalisierte call : und Ihr Original extra : Plattformhinweise

: Abschnitt mit dem Titel “Plattformhinweise”

: Lesen Sie das

Fortsetzen Sie mit Getting Started

Abschnitt: Fortsetzen Sie mit Getting Started

Wenn Sie das Getting Started zur Planung Ihres Dashboards und API-Operationen verwenden, verbinden Sie es mit Verwenden Sie @capgo/capacitor-incoming-call-kit Verwenden Sie @capgo/capacitor-incoming-call-kit für die native Fähigkeit in Verwenden Sie @capgo/capacitor-incoming-call-kit, API-Übersicht für die Implementierungsdetails in API Übersicht Einführung für die Implementierungsdetails in Einführung API Schlüssel für die Implementierungsdetails in API Schlüssel und Geräte für die Implementierungsdetails in Geräte.