Panduan
Cara menggunakan Twilio Voice di Capacitor
Menggunakan @capgo/capacitor-twilio-voice
Integrasikan SDK Twilio Voice ke dalam Capacitor
Instal
bun add @capgo/capacitor-twilio-voice
bunx cap sync
bunx cap sync menyalin code native plugin ke dalam proyek native Anda. Jalankan kembali setiap kali melakukan upgrade plugin.
Impor
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
Sekilas tentang API
| Metode | Deskripsi |
|---|---|
login |
Autentikasi user ke Twilio Voice menggunakan access token. |
logout |
Logout user saat ini dan unregister dari Twilio Voice. |
isLoggedIn |
Cek apakah user sedang login dan memiliki access token yang valid. |
makeCall |
Mulai panggilan keluar ke nomor telepon atau client. |
acceptCall |
Terima panggilan masuk. |
rejectCall |
Tolak panggilan masuk. |
endCall |
Akhiri panggilan yang sedang aktif. |
muteCall |
Mute atau unmute mikrofon saat panggilan aktif. |
setSpeaker |
Aktifkan atau nonaktifkan mode speakerphone. |
getCallStatus |
Dapatkan status panggilan yang sedang aktif. |
checkMicrophonePermission |
Cek apakah izin mikrofon sudah diberikan. |
requestMicrophonePermission |
Minta izin mikrofon kepada pengguna. |
Contoh
login()
Autentikasi pengguna ke Twilio Voice menggunakan access token.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
const result = await CapacitorTwilioVoice.login({
accessToken: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...'
});
console.log('Login successful:', result.success);
logout()
Logout pengguna saat ini dan unregister dari Twilio Voice.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
const result = await CapacitorTwilioVoice.logout();
console.log('Logout successful:', result.success);
isLoggedIn()
Periksa apakah pengguna sedang login dan memiliki access token yang valid.
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
}
makeCall()
Lakukan panggilan keluar ke nomor telepon atau client.
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'
});
acceptCall()
Terima panggilan masuk.
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()
Tolak panggilan masuk.
import { CapacitorTwilioVoice } from '@capgo/capacitor-twilio-voice';
CapacitorTwilioVoice.addListener('callInviteReceived', async (data) => {
if (shouldRejectCall(data.from)) {
await CapacitorTwilioVoice.rejectCall({
callSid: data.callSid
});
}
});
Tabel di atas mencantumkan 12 metode inti. Dokumentasi mengenai helper Listener, version, serta kontrak lengkap dari setiap metode tersedia di repositori GitHub.
Mendengarkan event
addListener mengembalikan sebuah handle. Panggil handle.remove() saat layar di-unmount, atau CapacitorTwilioVoice.removeAllListeners() untuk menghapus semua listener.
Referensi lengkap
Lanjutkan dari Menggunakan @capgo/capacitor-twilio-voice
Jika Anda menggunakan Menggunakan @capgo/capacitor-twilio-voice untuk merencanakan pekerjaan plugin native, hubungkan dengan @capgo/capacitor-twilio-voice untuk detail implementasi di @capgo/capacitor-twilio-voice, Panduan Memulai untuk detail implementasi di Getting Started, Direktori Plugin Capgo untuk alur kerja produk di Direktori Plugin Capgo, Plugin Capacitor oleh Capgo untuk detail implementasi di Plugin Capacitor oleh Capgo, dan Menambahkan atau Memperbarui Plugin untuk detail implementasi di bagian Menambahkan atau Memperbarui Plugin.