Lompat ke konten

iOS

GitHub

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

requestPermissions() Ditangani segera pada iOS karena CallKit sendiri tidak memerlukan dialog izin waktu eksekusi.

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

Gunakan ios.handleType untuk mengontrol cara CallKit mengatur handle:

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

Plugin ini tidak mendaftarkan PushKit atau APNs untuk Anda.

Untuk berdering di latar belakang atau dalam keadaan terhenti 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 Suara di Latar Belakang ketika aplikasi Anda menggunakan aliran push VoIP.
  3. Kirimkan event panggilan masuk ke aplikasi Anda dan panggil plugin ini segera setelah jembatan Capacitor tersedia.

If aplikasi Anda sudah berjalan di latar depan, Anda akan mendapatkan pengalaman terbaik jika event ring Anda hanya ada di JavaScript.

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 alur panggilan nyata Anda butuhkan.

Tahan tanggung jawab ini di layer aplikasi Anda

Bagian berjudul “Tahan tanggung jawab ini di layer aplikasi Anda”
  • Pendaftaran PushKit dan APNs
  • Autentikasi dan refresh token
  • Masuk ke ruang nyata atau sesi VoIP setelah callAccepted
  • Selesai atau menyelaraskan status panggilan remote ketika plugin memancarkan callDeclined, callEndedatau callTimedOut

Jika Anda menggunakan iOS untuk merencanakan kerja plugin native, hubungkannya dengan Menggunakan @capgo/capacitor-kit panggilan masuk untuk kemampuan native di Menggunakan @capgo/capacitor-kit panggilan masuk, Direktori Plugin Capgo untuk alur kerja produk di Direktori Plugin Capgo, Plugin-Plugin Capacitor oleh Capgo untuk detail implementasi di Plugin-Plugin Capacitor oleh Capgo Mengambah atau Mengupdate Plugin __CAPGO_KEEP_0__ untuk detail implementasi di Mengambah atau Mengupdate Plugin, dan Alternatif Plugin Enterprise Ionic __CAPGO_KEEP_0__ untuk alur produk di Alternatif Plugin Enterprise Ionic.