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.

Untuk memulai panggilan dari aplikasi Anda melalui HTTP, gunakan panduan Create Call. Cara ini menjalankan sequence Bird yang telah dipublikasikan setelah panggilan dijawab.

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 yang memenuhi syarat. Gunakan nomor Bird yang saat ini dialokasikan ke workspace ini, atau daftarkan nomor eksternal dan selesaikan panggilan verifikasi-nya. 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 Tujuan.
  • 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 nomor Bird yang memenuhi syarat atau caller ID eksternal 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. Panggilan yang menggunakan kunci API yang diizinkan juga harus berasal dari alamat yang terdaftar. Kredensial sesi yang diaktifkan menyediakan jalur masuk terpisah yang dijelaskan di bawah.
  • 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 dikirim sebelum tantangan diterima, jadi perangkat Anda harus memilih algoritma yang ditawarkan trunk. Untuk autentikasi kunci API, trunk dengan daftar izin IP tetap mengharuskan permintaan 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 Durasi total, 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 di semua panggilan, ekspor daftar panggilan yang difilter sebagai CSV dari halaman Leg, atau lihat faktur dan penggunaan Anda.

Langkah selanjutnya

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

Lanjutkan dengan dokumentasi, panduan, dan contoh untuk topik ini.