Mulai Menggunakan
Copas prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-incoming-call-kit`
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/incoming-call-kit/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.
Pemasangan
Bab berjudul “Pemasangan”Kamu bisa menggunakan Setup Bantuan AI untuk menginstal plugin. Tambahkan Capgo kemampuan ke alat AI kamu menggunakan perintah berikut:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsKemudian gunakan prompt berikut:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-incoming-call-kit` plugin in my project.Jika kamu lebih suka Setup Manual, instal plugin dengan menjalankan perintah-perintah berikut dan ikuti instruksi spesifik platform di bawah ini:
-
Install the package
Jendela terminal bun add @capgo/capacitor-incoming-call-kit -
Sinkronkan proyek native
Jendela terminal bunx cap sync -
Pilih sumber suara Putuskan apakah event panggilan masuk berasal dari backend Anda, sebuah SDK seperti Twilio atau Stream, atau jalur push native seperti FCM atau PushKit.
Bagaimana integrasi ini berfungsi
Bab berjudul “Bagaimana integrasi ini berfungsi”Plugin ini hanya mengelola presentasi panggilan masuk native. Aplikasi Anda masih mengelola transportasi, autentikasi, dan sesi media yang sebenarnya.
Polanya produksi yang umum adalah:
- Backend Anda atau panggilan SDK mengeluarkan event ring.
- Aplikasi Anda memanggil
showIncomingCall(). - Plugin menampilkan UI panggilan masuk native.
callAcceptedMenghubungi ruang atau sesi VoIP sebenarnya.callDeclined,callEnded, ataucallTimedOutMengosongkan sisa data jarak jauh.
Integrasi minimal
Judul bagian “Integrasi minimal”import { IncomingCallKit } from '@capgo/capacitor-incoming-call-kit';
await IncomingCallKit.requestPermissions();await IncomingCallKit.requestFullScreenIntentPermission();
await IncomingCallKit.addListener('callAccepted', async ({ call }) => { console.log('Accepted', call.callId, call.extra); // Start or join your real call session here.});
await IncomingCallKit.addListener('callDeclined', ({ call }) => { console.log('Declined', call.callId); // Tell your backend or SDK that the user declined.});
await IncomingCallKit.addListener('callTimedOut', ({ call }) => { console.log('Timed out', call.callId); // Clear ringing state in your backend or SDK.});
await IncomingCallKit.showIncomingCall({ callId: 'call-42', callerName: 'Ada Lovelace', handle: '+39 555 010 020', appName: 'Capgo Phone', hasVideo: true, timeoutMs: 45_000, extra: { roomId: 'room-42', callerUserId: 'user_ada', }, android: { channelId: 'calls', channelName: 'Incoming Calls', showFullScreen: true, }, ios: { handleType: 'phoneNumber', },});Opsi penting
Judul bagian “Opsi penting”callId: identifikasi stabil yang digunakan kembali nantiendCall()timeoutMsWaktu tunggu tidak dijawab dengan upaya terbaikextraJSON acak yang dikembalikan dalam payload pendengarandroid.channelIddanandroid.channelNameWaktu pengaturan saluran Androidandroid.showFullScreenMengajukan aktivitas panggilan masuk Android penuh layarios.handleTypePilihgeneric,phoneNumber, atauemailAddressuntuk Kit Panggilan
Pengelolaan panggilan aktif
Bagian berjudul “Pengelolaan panggilan aktif”const { calls } = await IncomingCallKit.getActiveCalls();
await IncomingCallKit.endCall({ callId: 'call-42', reason: 'remote-ended',});
await IncomingCallKit.endAllCalls({ reason: 'session-reset',});Model acara
Judul Bagian: Model AcaraincomingCallDisplayed: UI asli ditampilkan dengan suksescallAccepted: pengguna menerima dari UI aslicallDeclined: pengguna menolak sebelum bergabungcallEnded: aplikasi Anda atau platform mengakhiri panggilan yang sedang diikuticallTimedOut: panggilan tetap tidak dijawab hinggatimeoutMs
Each event carries the normalized call payload dan aslinya extra object.
Catatan Platform
Baca Panduan gaya kami- Read the Petunjuk iOS sebelum menghubungkan CallKit ke dalam aliran PushKit atau APNs.
- Baca Petunjuk Android sebelum mengandalkan niat intents layar penuh pada Android 14 dan seterusnya.
- Petunjuk Android
Teruskan dari Mulai Menggunakan
Section titled “Keep going from Getting Started”Lanjutkan dari Getting Started Mulai Menggunakan Untuk merencanakan dashboard dan operasi API, hubungkannya dengan Menggunakan @capgo/capacitor-kit Panggilan Masuk untuk kemampuan asli dalam Menggunakan @capgo/capacitor-kit panggilan masuk, API Ringkasan untuk detail implementasi dalam API Ringkasan, Pendahuluan untuk detail implementasi dalam Pendahuluan, API Kunci untuk detail implementasi dalam API Kunci, dan Perangkat Untuk detail implementasi di Perangkat.