Lompat ke konten

iOS

Pada iOS, plugin melaporkan panggilan masuk ke CallKit. Itu memberikan Anda lembaran panggilan masuk sistem dan aksi panggilan standar tanpa harus membangun UI panggilan masuk native sendiri.

requestPermissions() Dipenuhi segera pada iOS karena CallKit itu sendiri tidak memerlukan dialog izin runtime.

Contoh dasar

Contoh dasar
import { IncomingCallKit } from '@capgo/capacitor-incoming-call-kit';
await IncomingCallKit.showIncomingCall({
callId: 'call-42',
callerName: 'Ada Lovelace',
handle: '+1 555 010 020',
ios: {
handleType: 'phoneNumber',
supportsHolding: true,
supportsDTMF: false,
},
});

Tipe handle

Tipe handle

Gunakan ios.handleType untuk mengatur cara CallKit mengatur handle:

  • generic untuk identifikasi aplikasi khusus
  • phoneNumber untuk nomor telepon nyata
  • emailAddress untuk identitas berbasis email

Gunakan

Untuk getaran latar belakang yang benar atau getaran yang telah berhenti pada iOS, aplikasi host Anda masih memerlukan pengaturan push native Apple yang sesuai dengan strategi transportasi Anda:

  1. Aktifkan Notifikasi Push ketika transportasi Anda menggunakan pengiriman push Apple.
  2. Aktifkan mode latar belakang Voice over IP ketika aplikasi Anda menggunakan aliran push VoIP.
  3. Sampaikan event panggilan masuk ke aplikasi Anda dan panggil plugin ini segera setelah jembatan Capacitor tersedia.

Jika event getaran Anda hanya ada di JavaScript, Anda akan mendapatkan pengalaman terbaik ketika aplikasi sudah berjalan di latar depan.

CallKit tidak menggantikan media SDK. Jika sesi panggilan nyata menggunakan akses mikrofon atau kamera, deskripsi penggunaan masih harus ada di aplikasi Anda:

<key>NSMicrophoneUsageDescription</key>
<string>This app uses the microphone for calls.</string>
<key>NSCameraUsageDescription</key>
<string>This app uses the camera for video calls.</string>

Tambahkan hanya kunci yang aliran panggilan nyata Anda butuhkan.

Tetapkan tanggung jawab ini di lapisan aplikasi Anda

Judul bagian “Tetapkan tanggung jawab ini di lapisan aplikasi Anda”
  • Pendaftaran PushKit dan APNs
  • Autentikasi dan pembaruan token
  • Mengikuti ruang nyata atau sesi VoIP setelah callAccepted
  • Mengakhiri atau menyelesaikan status panggilan jarak jauh ketika plugin memancarkan callDeclined, callEndedatau callTimedOut