Einstieg
Kopieren Sie einen Einrichtungshinweis mit den Installationsanweisungen und der vollständigen Markdown-Guideline für diesen Plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-twilio-voice`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/twilio-voice/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Installieren
Sektion mit dem Titel “Installieren”Sie können unsere AI-gestützte Einrichtung verwenden, um das Plugin zu installieren. Fügen Sie die Capgo-Fähigkeiten Ihrem AI-Tool mithilfe der folgenden Befehl hinzu:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsDann verwenden Sie die folgende Anfrage:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-twilio-voice` plugin in my project.Wenn Sie die manuelle Einrichtung bevorzugen, installieren Sie das Plugin, indem Sie die folgenden Befehle ausführen und die unten aufgeführten plattformabhängigen Anweisungen befolgen:
bun add @capgo/capacitor-twilio-voicebunx cap syncImportieren
Sektion mit dem Titel “Importieren”import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';API Übersicht
Überschrift “API Übersicht”Authentifizieren Sie den Benutzer mit Twilio Voice mithilfe eines Zugriffstokens.
Das Zugriffstoken sollte auf Ihrem Backend-Server mit Ihren Twilio-Zugangsdaten generiert werden. Dieses Token ist erforderlich, um Anrufe über Twilio Voice aufzunehmen und zu empfangen.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
const result = await CapacitorTwilioVoice.login({ accessToken: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...'});console.log('Login successful:', result.success);logout
Überschrift “Abmeldung”Beenden Sie die aktuelle Sitzung und registrieren Sie sich nicht mehr bei Twilio Voice.
Dies wird alle aktiven Anrufe trennen und den Gerät von neuen Eingangsanruf-Notifikationen abmelden.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
const result = await CapacitorTwilioVoice.logout();console.log('Logout successful:', result.success);isLoggedIn
Überschrift “ist angemeldet”Überprüfen Sie, ob der Benutzer derzeit angemeldet ist und ein gültiges Zugriffstoken besitzt.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
const status = await CapacitorTwilioVoice.isLoggedIn();if (status.isLoggedIn && status.hasValidToken) { console.log('User identity:', status.identity);} else { // Re-authenticate the user}Initiieren Sie einen Ausgehanschluss an eine Telefonnummer oder einen Client.
Der Benutzer muss sich vor dem Anruf anmelden. Der Anruf wird über Ihre Twilio-Backend-Konfiguration weitergeleitet.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
// Call a phone numberconst result = await CapacitorTwilioVoice.makeCall({ to: '+1234567890'});console.log('Call SID:', result.callSid);
// Call another Twilio client with a readable name for CallKit Recentsawait CapacitorTwilioVoice.makeCall({ to: 'client:alice', displayName: 'Alice Smith'});
// Call a PSTN number using a specific caller IDawait CapacitorTwilioVoice.makeCall({ to: '+1234567890', callerId: '+10987654321'});acceptCall
Abschnitt mit dem Titel „acceptCall“Ein eingehenden Anruf akzeptieren.
Dies sollte in Reaktion auf einen 'callInviteReceived'-Ereignis aufgerufen werden.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
CapacitorTwilioVoice.addListener('callInviteReceived', async (data) => { console.log('Incoming call from:', data.from); const result = await CapacitorTwilioVoice.acceptCall({ callSid: data.callSid }); console.log('Call accepted:', result.success);});rejectCall
Abschnitt mit dem Titel „rejectCall“Ein eingehenden Anruf ablehnen.
Dies sollte in Reaktion auf ein Ereignis ‘callInviteReceived’ aufgerufen werden. Der Anrufer hört ein Besetztzeichen oder wird zur Mailbox weitergeleitet.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
CapacitorTwilioVoice.addListener('callInviteReceived', async (data) => { if (shouldRejectCall(data.from)) { await CapacitorTwilioVoice.rejectCall({ callSid: data.callSid }); }});Ein aktives Gespräch beenden.
Wenn callSid nicht bereitgestellt wird, beendet dies das derzeit aktive Gespräch.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
// End the current active callawait CapacitorTwilioVoice.endCall({});
// End a specific callawait CapacitorTwilioVoice.endCall({ callSid: 'CA1234567890abcdef'});Das Mikrofon während eines aktiven Gesprächs abschalten oder wieder eingeschalten.
Wenn abgeschaltet, hört die andere Seite kein Audio von Ihrem Mikrofon.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
// Mute the microphoneawait CapacitorTwilioVoice.muteCall({ muted: true});
// Unmute the microphoneawait CapacitorTwilioVoice.muteCall({ muted: false});setSpeaker
Abschnitt mit dem Titel “setSpeaker”Das Lautsprecher-Modus aktivieren oder deaktivieren.
Wenn aktiviert, wird das Audio über den Lautsprecher des Geräts statt über das Ohrhörer geleitet.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
// Enable speakerphoneawait CapacitorTwilioVoice.setSpeaker({ enabled: true});
// Disable speakerphoneawait CapacitorTwilioVoice.setSpeaker({ enabled: false});getCallStatus
Sektion mit dem Titel „getCallStatus“Erhalte den aktuellen Status der aktiven Anruf.
Dies liefert Echtzeitinformationen über den Anrufszustand, den Mute-Status, den Halte-Status und die Anrufidentifikatoren.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
const status = await CapacitorTwilioVoice.getCallStatus();if (status.hasActiveCall) { console.log('Call SID:', status.callSid); console.log('Call State:', status.callState); console.log('Is Muted:', status.isMuted); console.log('Is On Hold:', status.isOnHold);}checkMicrophonePermission
Sektion mit dem Titel „checkMicrophonePermission“Überprüfe, ob die Mikrofonberechtigung erteilt wurde.
Dies stellt die aktuelle Berechtigungsstatus nicht ab, sondern überprüft ihn nur.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
const result = await CapacitorTwilioVoice.checkMicrophonePermission();if (!result.granted) { console.log('Microphone permission not granted');}requestMicrophonePermission
Sektion mit dem Titel „requestMicrophonePermission“Berechtigung für das Mikrofon vom Benutzer anfordern.
On iOS und Android wird diese Anzeige das Systemeinstellungen-Dialog anzeigen, wenn die Berechtigung noch nicht erteilt wurde. Wenn die Berechtigung zuvor abgelehnt wurde, muss der Benutzer sie möglicherweise in den Systemeinstellungen erteilen.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
const result = await CapacitorTwilioVoice.requestMicrophonePermission();if (result.granted) { console.log('Microphone permission granted');} else { console.log('Microphone permission denied');}Typenreferenz
Sektion mit dem Titel „Typenreferenz“CallInvite
Sektion mit dem Titel „CallInvite“Capacitor-Plugin zur Integration der Twilio Voice-Funktionen in mobile Anwendungen.
export interface CallInvite { /** Unique identifier for the incoming call invitation */ callSid: string; /** Phone number or client identifier of the caller (may include custom caller name) */ from: string; /** Phone number or client identifier being called */ to: string; /** Custom parameters passed with the call invitation */ customParams: Record<string, string>;}Quelle der Wahrheit
Sektion mit dem Titel „Quelle der Wahrheit“Diese Seite wurde von dem Plugin generiert. src/definitions.ts. Wenn die öffentliche API-Datei sich im Hintergrund ändert, führen Sie die Synchronisation erneut durch.
Fortsetzen von Getting Started
Abschnitt mit dem Titel „Weitermachen von Getting Started“Wenn Sie Getting Started zum Planen von Dashboard und API-Operationen verwenden, verbinden Sie es mit Mit @capgo/capacitor-twilio-voice für die native Fähigkeit in Mit @capgo/capacitor-twilio-voice, 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.