Saltare al contenuto

Iniziare

GitHub

Puoi utilizzare la nostra configurazione assistita da AI per installare il plugin. Aggiungi le Capgo abilità al tuo strumento AI utilizzando il seguente comando:

Finestra del terminale
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Usa poi il seguente prompt:

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

Se preferisci la configurazione manuale, installa il plugin eseguendo i seguenti comandi e segui le istruzioni specifiche del tuo platform qui sotto:

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

Autenticare l'utente con Twilio Voice utilizzando un token di accesso.

Il token di accesso dovrebbe essere generato sul tuo server backend utilizzando le tue credenziali di Twilio. Questo token è richiesto per effettuare e ricevere chiamate tramite Twilio Voice.

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

Disconnettere l'utente corrente e disiscrivere da Twilio Voice.

Ciò disconnetterà eventuali chiamate attive e impedirà al dispositivo di ricevere nuove notifiche di chiamata in arrivo.

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

Verificare se l'utente è attualmente connesso e ha un token di accesso valido.

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
}

Inizia una chiamata in uscita a un numero di telefono o a un cliente.

L'utente deve essere connesso prima di effettuare una chiamata. La chiamata verrà instradata attraverso la tua configurazione backend Twilio.

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

Accetta una chiamata in arrivo.

Questo dovrebbe essere chiamato in risposta a un evento ‘callInviteReceived’.

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

Rifiuta una chiamata in arrivo.

Questo dovrebbe essere chiamato in risposta a un evento ‘callInviteReceived’. Il chiamante sentirà un segnale di occupato o sarà diretto alla segreteria.

import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
CapacitorTwilioVoice.addListener('callInviteReceived', async (data) => {
if (shouldRejectCall(data.from)) {
await CapacitorTwilioVoice.rejectCall({
callSid: data.callSid
});
}
});

Termina una chiamata attiva.

Se non viene fornito callSid, questa azione terminerà la chiamata attiva corrente.

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

Attiva o disattiva il silenziamento del microfono durante una chiamata attiva.

Quando il microfono è silenziato, l'altra parte non sentirà audio dal tuo microfono.

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

Abilita o disabilita il modo speakerphone.

Quando abilitato, l'audio verrà reindirizzato attraverso lo speaker del dispositivo al posto dell'auricolare.

import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
// Enable speakerphone
await CapacitorTwilioVoice.setSpeaker({
enabled: true
});
// Disable speakerphone
await CapacitorTwilioVoice.setSpeaker({
enabled: false
});

Ottieni lo stato attuale della chiamata in corso.

Ciò fornisce informazioni in tempo reale sullo stato della chiamata, lo stato del silenzio, lo stato di sospensione e gli identificatori della chiamata.

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

Controlla se è stato concesso il permesso per l'uso del microfono.

Ciò non richiede il permesso, ma solo verifica lo stato di permesso attuale.

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

Richiedi il permesso all'utente per l'uso del microfono.

Su iOS e Android, ciò mostrerà il dialogo di permesso del sistema se il permesso non è stato ancora concesso. Se il permesso è stato precedentemente negato, l'utente potrebbe doverlo concedere nelle impostazioni del sistema.

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 per l'integrazione della funzionalità di voce di Twilio nelle applicazioni mobili.

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

Questa pagina è generata dal plugin’s src/definitions.tsRiavvia la sincronizzazione quando le informazioni pubbliche API cambiano in modo upstream.

Se stai utilizzando Iniziare per pianificare il dashboard e le API operazioni, connettilo con Utilizzando @capgo/capacitor-twilio-voice per la capacità nativa in Utilizzando @capgo/capacitor-twilio-voice, Panoramica di API per i dettagli di implementazione in Panoramica di API, Introduzione per i dettagli di implementazione in Introduzione, Chiavi di API per i dettagli di implementazione in Chiavi di API, e Dispositivi per i dettagli di implementazione in Dispositivi.