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 Ihrem AI-Tool hinzu, indem Sie die folgende Befehlszeile verwenden:

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

Verwenden Sie dann die folgende Anweisung:

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 angegebenen Plattform-spezifischen Anweisungen befolgen:

Terminal-Fenster
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 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);

Beenden Sie die aktuelle Sitzung und deaktivieren Sie den Zugriff auf Twilio Voice.

Dies wird alle aktiven Anrufe beenden und den Empfang von neuen Eingangsanruf-Notifikationen auf dem Gerät stoppen.

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
}

Initiiert einen ausgehenden Anruf 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 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 Anruf annehmen.

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

Ein Anruf ablehnen.

Dies sollte auf eine 'AnrufEinladungErhalten' Ereignis reagieren. 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 aktiven Anruf beenden.

Wenn keine callSid bereitgestellt wird, beendet dies den derzeit aktiven Anruf.

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

Das Mikrofon während eines aktiven Anrufs abschalten oder wieder einschalten.

Wenn abgeschaltet, hört die andere Seite 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
});

Das Lautsprecher-Modus aktivieren oder deaktivieren.

Wenn aktiviert, wird das Audio über den Geräte-Lautsprecher 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 der aktiven Anrufverbindung.

Dies liefert Echtzeitinformationen über den Anrufzustand, den Mute-Zustand, den Halte-Zustand und die Anruf-Identifikatoren.

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 Mikrofon-Berechtigung erteilt wurde.

Dies stellt die aktuelle Berechtigungsstatus überprüft, 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');
}

Bitten Sie den Benutzer um die Berechtigung für das Mikrofon.

On iOS und Android wird diese Meldung 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');
}

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.ts. Wenn sich die öffentliche API-API ändert, führen Sie den Sync erneut durch.

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.