Zum Starten
Eine Einrichtungsanfrage mit den Installationsanweisungen und der vollständigen Markdown-Guideline für diesen Plugin kopieren.
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
Abschnitt mit dem Titel „Installieren“Sie können unsere KI-gestützte Einrichtung verwenden, um das Plugin zu installieren. Fügen Sie den Capgo-Fähigkeiten Ihrer KI-Tool mithilfe der folgenden Befehl hinzu:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsVerwenden Sie dann den folgenden Prompt:
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 folgen Sie den unten angegebenen Plattform-spezifischen Anweisungen:
bun add @capgo/capacitor-twilio-voicebunx cap syncImportieren
Abschnitt mit dem Titel „Importieren“import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';API Übersicht
Abschnitt mit dem Titel „API Übersicht“Authentifizieren Sie den Benutzer mit Twilio Voice mithilfe eines Zugriffstokens.
Das Zugriffstoken sollte auf Ihrem Backend-Server mit Ihren Twilio-Anmeldeinformationen generiert werden.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
const result = await CapacitorTwilioVoice.login({ accessToken: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...'});console.log('Login successful:', result.success);Abschnitt mit dem Titel „Abmeldung“
Jeder aktive Anruf wird beendet und das Gerät wird von neuen eingehenden Anrufbenachrichtigungen ausgeschlossen.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
const result = await CapacitorTwilioVoice.logout();console.log('Logout successful:', result.success);isLoggedIn
Abschnitt mit dem Titel „isLoggedIn“Überprüfen Sie, ob der Benutzer derzeit angemeldet ist und einen gültigen 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}Ein ausgehender Anruf zu einem Telefonnummer oder einem Client starten.
Der Benutzer muss angemeldet sein, bevor er einen Anruf tätigen kann. Der Anruf wird über Ihre Twilio-Backend-Konfiguration geroutet.
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 annehmen.
Dies sollte in Antwort auf einen 'callInviteReceived'-Event 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 „Anruf ablehnen“Ein eingehenden Anruf ablehnen.
Dies sollte in Reaktion auf ein Ereignis „callInviteReceived“ aufgerufen werden. Der Anrufer hört ein Besetztzeichen oder wird zur Mailbox umgeleitet.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
CapacitorTwilioVoice.addListener('callInviteReceived', async (data) => { if (shouldRejectCall(data.from)) { await CapacitorTwilioVoice.rejectCall({ callSid: data.callSid }); }});Ein aktiven Anruf beenden.
Wenn callSid nicht bereitgestellt wird, beendet dies den derzeit aktiven Anruf.
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 Anrufs leise stellen oder wieder einstellen.
Wenn leise gestellt, hört die andere Partei 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“Sprecherfunktion aktivieren oder deaktivieren.
Wenn aktiviert, wird der Audio über das Gerätsprecher statt über das Ohrhörer abgespielt.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
// Enable speakerphoneawait CapacitorTwilioVoice.setSpeaker({ enabled: true});
// Disable speakerphoneawait CapacitorTwilioVoice.setSpeaker({ enabled: false});getCallStatus
Abschnitt mit dem Titel „getCallStatus“Aktuelle Statusinformationen der aktiven Anrufszustände abrufen.
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
Abschnitt mit dem Titel „checkMicrophonePermission“Überprüfen, ob die Mikrofonberechtigung erteilt wurde.
Dies überprüft den aktuellen Berechtigungsstatus, ohne eine Berechtigung zu beantragen.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
const result = await CapacitorTwilioVoice.checkMicrophonePermission();if (!result.granted) { console.log('Microphone permission not granted');}requestMicrophonePermission
Abschnitt mit dem Titel „Mikrofonberechtigung anfordern“Mikrofonberechtigung vom Benutzer anfordern.
Bei iOS und Android wird das Systemdialog für die Berechtigung angezeigt, 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');}Typenverweis
Abschnitt mit dem Titel „Typenverweis“CallInvite
Abschnitt mit dem Titel „CallInvite“Capacitor-Plugin zur Integration der Twilio Voice-Funktion 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
Abschnitt mit dem Titel „Quelle der Wahrheit“Diese Seite wurde aus dem Plugin generiert. src/definitions.tsRe-run die Synchronisierung, wenn die öffentliche API sich upstream ändert.
Weitergehen von Getting Started
Abschnitt mit dem Titel “Weitergehen von Getting Started”Wenn Sie " Getting Started um das Dashboard und API-Operationen zu planen, 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.