Transfer

Operasi transfer memungkinkan aplikasi mengirim sesi komunikasi yang saat ini terhubung ke alamat yang berbeda.

TAPI menyediakan dua mekanisme untuk mentransfer sesi saat ini ke alamat yang berbeda. Transfer buta memungkinkan sesi yang ada ditransfer ke alamat tujuan tertentu dalam satu fase. Transfer konsultasi memerlukan adanya sesi konsultasi selain sesi saat ini untuk mengatur transfer, dan kemudian penyelesaian transfer. Pilihan antara kedua jenis ini sering didasarkan pada kemampuan penyedia layanan karena beberapa penyedia layanan tidak mendukung transfer buta. Dalam beberapa kasus, kebutuhan aplikasi dapat membuat transfer konsultasi menjadi metode pilihan bahkan di mana transfer buta dimungkinkan.

Operasi transfer buta pada dasarnya sama di bawah TAPI 2 dan TAPI 3, tetapi transfer konsultasi mengikuti pola yang sedikit berbeda.

TAPI 2.x: Transfer konsultasi dimulai dengan memanggil lineSetupTransfer, yang menempatkan panggilan yang ada pada penangguhan konsultasi, dan mengidentifikasi panggilan ini sebagai target untuk permintaan penyelesaian transfer berikutnya. Fungsi lineSetupTransfer juga mengalokasikan panggilan konsultasi yang dapat digunakan untuk membuat panggilan konsultasi dengan pihak tempat panggilan akan ditransfer. Aplikasi dapat memanggil ekstensi pihak tujuan pada panggilan konsultasi (menggunakan lineDial), atau dapat menghilangkan dan membatalkan alokasi panggilan konsultasi dan sebaliknya mengaktifkan panggilan yang ditahan yang ada (menggunakan lineUnhold), jika didukung oleh pengalihan. Meskipun panggilan awal berada pada penangguhan konsultasi dan panggilan konsultasi aktif, aplikasi dapat beralih antara panggilan ini menggunakan lineSwapHold.

TAPI 2.x: Aplikasi menyelesaikan transfer konsultasi menggunakan lineCompleteTransfer. Kedua panggilan akan kembali ke status diam.

Aplikasi dapat menggunakan fitur "transfer satu langkah" dari banyak PBX (tekan satu tombol untuk membuat transfer konsultasi) dengan mengatur parameter lpCallParams ke anggota LINECALLPARAMFLAGS_ONESTEPTRANSFER konstanta LINECALLPARAMFLAGS_ saat memanggil lineSetupTransfer.

TAPI 3.x: transfer Consultative dimulai dengan menggunakan ITAddress::CreateCall untuk membuat panggilan konsultasi ke alamat tujuan baru. ITBasicCallControl::Transfer kemudian dipanggil pada objek panggilan asli menggunakan pointer ke objek panggilan konsultasi baru sebagai parameter. Memanggil ITBasicCallControl::Selesaikan pada objek panggilan konsultasi lalu menyelesaikan transfer.

Aplikasi harus merilis sumber daya sesi setelah keberhasilan penyelesaian operasi transfer.

Tidak semua penyedia layanan mendukung penggunaan operasi ini.

TAPI 2.x: Lihat baris BlindTransfer, lineSetupTransfer, lineCompleteTransfer.

TAPI 3.x: Lihat ITBasicCallControl::BlindTransfer, ITAddress::CreateCall, ITBasicCallControl::Transfer, ITBasicCallControl::Finish.