Transfer

Operasi transfer memungkinkan aplikasi untuk 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 mengharuskan adanya sesi konsultasi selain sesi saat ini untuk mengatur transfer, lalu 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 jika 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 perpanjangan pihak tujuan pada panggilan konsultasi (menggunakan lineDial), atau dapat menghilangkan dan membatalkan alokasi panggilan konsultasi dan sebaliknya mengaktifkan panggilan yang diadakan yang ada (menggunakan lineUnhold), jika didukung oleh sakelar. Sementara panggilan awal berada pada penangguhan konsultasi dan panggilan konsultasi aktif, aplikasi dapat beralih di 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_ONESTEPTRANSFERkonstanta LINECALLPARAMFLAGS_ saat memanggil lineSetupTransfer.

TAPI 3.x: Transfer konsultasi 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::Finish pada objek panggilan konsultasi kemudian 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 lineBlindTransfer, lineSetupTransfer, lineCompleteTransfer.

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