Sign inGet started

Melakukan panggilan

PBX Anda mengirim SIP INVITE ke domain SIP trunk untuk melakukan panggilan. Bird memeriksa permintaan, merutekannya ke carrier, dan meneruskan audio. Halaman ini membahas prasyarat, field permintaan, autentikasi, dan biaya.

Sebelum Anda melakukan panggilan

Empat hal harus siap, dalam urutan apa pun, dan tiga di antaranya Anda yang mengatur:
  • Trunk yang menerima trafik Anda. Buat trunk SIP dan aktifkan panggilan keluar. Tambahkan rentang IP perangkat Anda, kunci API yang diizinkan, atau keduanya. Klien yang tidak dapat menyimpan secret jangka panjang dapat menggunakan kredensial sesi.
  • Caller ID terverifikasi. Daftarkan nomor yang Anda tampilkan dan selesaikan panggilan verifikasi-nya, yaitu cara workspace membuktikan kepemilikan nomor yang ditampilkan. Verifikasi tidak menjamin pengiriman CLI secara end-to-end atau tersambungnya panggilan jika CLI bukan nomor yang diperoleh melalui Bird: lihat sanggahan verifikasi dan pengiriman CLI.
  • Negara tujuan diaktifkan. Aktifkan negara yang Anda layani di halaman Destinations.
  • Routing terpasang pada workspace Anda. Bird mengaturnya untuk Anda, memilih carrier mana yang melayani tujuan mana. Sebelum routing tersedia, panggilan ditolak dengan routing_not_configured, salah satu alasan yang dibahas di Panggilan ditolak.

Apa yang Bird harapkan pada INVITE

Kirim permintaan ke domain SIP trunk Anda pada salah satu port yang didukung. Dua header membawa semua yang Bird butuhkan:
HeaderApa yang Bird lakukan dengannya
ToNomor yang dipanggil. Bird membaca negaranya untuk memilih carrier dan menghitung biaya panggilan
FromNomor yang Anda tampilkan sebagai pemanggil. Nomor ini harus berupa caller ID terverifikasi di workspace ini
Gunakan nomor internasional lengkap dalam format E.164, yaitu + di depan diikuti kode negara dan nomor nasional, pada kedua header. Itulah format yang Bird catat pada panggilan dan format yang diharapkan oleh pencocokan tujuannya.
Selain kedua header tersebut, ini adalah panggilan SIP biasa, tanpa header kustom di kedua arah.

Mengautentikasi setiap panggilan

Apa yang dilalui panggilan bergantung pada cara trunk dibuka:
  • Hanya daftar izin IP. Satu permintaan. Bird mencocokkan alamat sumber dengan daftar dan merutekan panggilan, tanpa tantangan yang harus dijawab.
  • Hanya kunci API yang diizinkan. Bird meminta kata sandi terlebih dahulu melalui pertukaran Digest SIP.
  • Keduanya. Alamat sumber diperiksa sebelum Bird memberikan tantangan, sehingga panggilan dari alamat yang tidak terdaftar ditolak apa pun kredensial yang dibawanya.
  • Kredensial sesi aktif. Bird menantang panggilan dari mana pun asalnya, bahkan dari alamat yang tidak tercakup daftar izin, dan kredensial yang diterbitkan beberapa menit sebelumnya menjawab tantangan tersebut. Perangkat yang sudah diterima oleh daftar izin pada trunk tanpa kunci yang diizinkan tetap terhubung tanpa tantangan.
Jika trunk memiliki kunci API yang diizinkan, sistem telepon Anda menjawab dengan hash dari secret kunci API alih-alih secret itu sendiri, itulah yang dilakukan autentikasi Digest SIP:
  1. PBX Anda mengirim INVITE.
  2. Bird menjawab 407 Proxy Authentication Required dengan satu baris tantangan per algoritma yang ditawarkan trunk, SHA-256 lalu MD5 secara default.
  3. PBX Anda mengirim ulang INVITE dengan header Proxy-Authorization yang dihitung menggunakan username bird dan secret kunci API sebagai kata sandi.
  4. Bird memverifikasi jawaban dan melanjutkan routing.
Header Proxy-Authorization preemptive dikirim sebelum tantangan, jadi perangkat Anda harus memilih algoritma yang ditawarkan trunk. Jika trunk juga memiliki daftar izin IP, permintaan tetap harus berasal dari alamat yang terdaftar.
Bird menjawab handshake yang gagal di lapisan SIP, sehingga percobaan ditolak sebelum platform membuat catatan panggilan. Jika panggilan Anda tidak muncul sama sekali di Log panggilan, periksa kredensial, bukan routing.

Atestasi panggilan

Panggilan ke Amerika Serikat dan Prancis membawa atestasi STIR/SHAKEN. Carrier menggunakan tanda tangan ini saat melabeli panggilan. Bird menerapkan level B secara default tanpa konfigurasi tambahan. Hubungi dukungan untuk meminta level A.

Ketika panggilan ditolak

Bird memeriksa caller ID, tujuan, batas, dan saldo wallet sebelum menghubungi carrier. Penolakan sampai ke sistem telepon Anda sebagai SIP 503; penyebab spesifik tercatat pada catatan panggilan yang terautentikasi. Buka panggilan di log panggilan, atau lihat panggilan ditolak untuk setiap alasan dan solusinya.
Selesaikan penyebab yang tercatat sebelum mencoba lagi. Misalnya, calls_per_second_exceeded berlanjut sampai Anda memperlambat laju panggilan.

Panggilan darurat tidak dilayani

Bird Voice tidak melayani panggilan ke layanan darurat. Panggilan ke 112, 911, 999 atau nomor darurat lainnya ditolak, di setiap trunk, di setiap negara. Sistem telepon Anda harus menjangkau layanan darurat melalui jalur lain.
Perilaku ini tidak bergantung pada paket, saldo, atau tujuan Anda. Konfigurasikan sistem telepon Anda untuk merutekan panggilan darurat melalui layanan yang mendukungnya, seperti saluran PSTN lokal, gateway lokal, atau penyedia lain. Uji jalur tersebut. Bird mengembalikan 503 untuk panggilan darurat yang ditolak, sehingga sistem telepon dengan rute dial-plan lain dapat mencobanya.
Layanan darurat bergantung pada lokasi terdaftar pemanggil, yang tidak disimpan Bird untuk trunk. Jangan mengandalkan rute Bird untuk panggilan darurat.

Biaya dan penagihan

Voice dibayar di muka dari wallet organisasi Anda, seperti kanal lainnya:
  • Waktu yang ditagih berjalan dari jawaban hingga akhir, berapa pun lama panggilan berdering sebelumnya. Catatan panggilan menampilkannya bersama Total duration, yang berjalan sejak Bird menerima panggilan.
  • Tarif bergantung pada negara tujuan. Kartu tarif Anda menghargai setiap negara dalam mata uang wallet. Tarif menentukan waktu tagihan minimum dan kelipatan yang digunakan setelah minimum tersebut. Misalnya, tarif dengan minimum satu menit dan kelipatan enam detik menagih panggilan 10 detik sebagai satu menit.
  • Wallet diperiksa sebelum carrier dihubungi. Panggilan yang tidak dapat ditanggung saldo Anda ditolak dengan insufficient_balance di awal, bukan ditagihkan setelahnya. Pertahankan cadangan, atau aktifkan top-up otomatis.
  • Batas pengeluaran voice harian berlaku. Setelah melewatinya, panggilan ditolak dengan daily_spend_exceeded hingga hari UTC berikutnya dimulai. Jumlahnya bergantung pada paket Anda.
  • Biaya muncul pada panggilan setelah dihitung, dengan presisi penuh, sebelum pajak.
Untuk menjumlahkan pengeluaran seluruh panggilan, ekspor daftar panggilan yang difilter sebagai CSV dari halaman Calls, atau baca faktur dan penggunaan Anda.

Langkah selanjutnya

HalamanApa yang dibahas
Log panggilanMenelusuri, memfilter, dan mengekspor catatan panggilan Anda
Voice eventsMenerima hasil panggilan yang dikirim ke sistem Anda sendiri
Metode pembayaran & walletTop-up, top-up otomatis, dan cara wallet digunakan

Sumber daya terkait

Lanjutkan dengan dokumentasi, panduan, dan contoh untuk topik ini. Sumber daya tersedia dalam bahasa Inggris.

Dapatkan ringkasan implementasi