Zum Inhalt springen

Einstieg

GitHub

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

Terminalfenster
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-twilio-voice` plugin in my project.

Wenn Sie eine manuelle Einrichtung bevorzugen, installieren Sie das Plugin, indem Sie die folgenden Befehle ausführen und die unten angegebenen plattform-spezifischen Anweisungen befolgen:

Terminalfenster
bun add @capgo/capacitor-twilio-voice
bunx cap sync
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';

Authentifizieren Sie den Benutzer mit Twilio Voice mithilfe eines Zugriffstokens.

Das Zugriffstoken sollte auf Ihrem Backend-Server mithilfe Ihrer Twilio-Anmeldeinformationen generiert werden. Dieses Token ist erforderlich, um Anrufe über Twilio Voice aufzunehmen und zu senden.

import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
const result = await CapacitorTwilioVoice.login({
accessToken: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...'
});
console.log('Login successful:', result.success);

Melden Sie den aktuellen Benutzer ab und registrieren Sie sich bei Twilio Voice nicht mehr.

Dies wird alle aktiven Anrufe trennen und verhindern, dass das Gerät neue eingehende Anrufbenachrichtigungen erhält.

import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
const result = await CapacitorTwilioVoice.logout();
console.log('Logout successful:', result.success);

Ü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
}

Erstellen Sie einen ausgehenden Anruf an eine Telefonnummer oder einen Client.

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 number
const result = await CapacitorTwilioVoice.makeCall({
to: '+1234567890'
});
console.log('Call SID:', result.callSid);
// Call another Twilio client with a readable name for CallKit Recents
await CapacitorTwilioVoice.makeCall({
to: 'client:alice',
displayName: 'Alice Smith'
});
// Call a PSTN number using a specific caller ID
await CapacitorTwilioVoice.makeCall({
to: '+1234567890',
callerId: '+10987654321'
});

Ein eingehenden Anruf annehmen.

Dies sollte in Reaktion auf ein Ereignis “Anruf-Einladung-Eingegangen” 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);
});

Ein eingehenden Anruf ablehnen.

Dies sollte in Reaktion auf ein Ereignis “Anruf-Einladung-Eingegangen” 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 keine Anruf-Id (callSid) angegeben wird, wird dieser den derzeit aktiven Anruf beenden.

import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
// End the current active call
await CapacitorTwilioVoice.endCall({});
// End a specific call
await CapacitorTwilioVoice.endCall({
callSid: 'CA1234567890abcdef'
});

Mikrofon abschalten oder wieder einschalten während eines laufenden Anrufs.

Wenn abgeschaltet, hört die andere Partei kein Audio von Ihrem Mikrofon.

import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
// Mute the microphone
await CapacitorTwilioVoice.muteCall({
muted: true
});
// Unmute the microphone
await CapacitorTwilioVoice.muteCall({
muted: false
});

Lautsprechermodus 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 speakerphone
await CapacitorTwilioVoice.setSpeaker({
enabled: true
});
// Disable speakerphone
await CapacitorTwilioVoice.setSpeaker({
enabled: false
});

Ermitteln Sie den aktuellen Status des laufenden Anrufs.

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);
}

Überprüfen Sie, ob die Mikrofonberechtigung erteilt wurde.

Dies stellt keine Anfrage zur Erlaubnis dar, sondern überprüft nur den aktuellen Zustand der Erlaubnis.

import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
const result = await CapacitorTwilioVoice.checkMicrophonePermission();
if (!result.granted) {
console.log('Microphone permission not granted');
}

Bitten Sie den Benutzer um die Erlaubnis zum Zugriff auf das Mikrofon.

Bei iOS und Android wird bei nicht erteilter Erlaubnis das Systemdialogfenster angezeigt. Wenn die Erlaubnis 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');
}

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>;
}

Diese Seite wurde aus dem Plugin generiert. src/definitions.tsRe-run die Synchronisation, wenn die öffentliche API upstream geändert wird.

Wenn Sie " Getting Started um das Dashboard und die API-Operationen zu planen, verbinden Sie es mit Verwenden Sie @capgo/capacitor-twilio-voice für die native Fähigkeit in Verwenden Sie @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.