fungsi TSPI_linePrepareAddToConference (tspi.h)

Fungsi TSPI_linePrepareAddToConference menyiapkan panggilan konferensi yang ada untuk penambahan pihak lain. Ini menciptakan panggilan konsultasi sementara yang baru. Panggilan konsultasi baru kemudian dapat ditambahkan ke panggilan konferensi.

Sintaks

LONG TSPIAPI TSPI_linePrepareAddToConference(
  DRV_REQUESTID          dwRequestID,
  HDRVCALL               hdConfCall,
  HTAPICALL              htConsultCall,
  LPHDRVCALL             lphdConsultCall,
  LPLINECALLPARAMS const lpCallParams
);

Parameter

dwRequestID

Pengidentifikasi permintaan asinkron.

hdConfCall

Pegangan ke panggilan konferensi. Status panggilan hdConfCall dapat disambungkan.

htConsultCall

TAPI menangani panggilan konsultasi sementara yang baru. Penyedia layanan harus menyimpan ini dan menggunakannya dalam semua panggilan berikutnya ke prosedur LINEEVENT yang melaporkan peristiwa pada panggilan baru. Status panggilan hdAddCall tidak berlaku.

lphdConsultCall

Pointer ke HDRVCALL yang mewakili pengidentifikasi penyedia layanan untuk panggilan konsultasi sementara yang baru. Penyedia layanan harus mengisi lokasi ini dengan handelnya untuk panggilan baru sebelum prosedur ini kembali. Handel ini tidak valid jika fungsi menghasilkan kesalahan.

lpCallParams

Pointer ke LINECALLPARAMS yang berisi parameter panggilan untuk digunakan saat membuat panggilan konsultasi. Parameter ini diatur ke NULL jika tidak ada parameter penyiapan panggilan khusus yang diinginkan.

Nilai kembali

Mengembalikan dwRequestID, atau nomor kesalahan jika terjadi kesalahan. Parameter aktual lResult dari ASYNC_COMPLETION yang sesuai adalah nol jika fungsi berhasil, atau nomor kesalahan jika terjadi kesalahan. Kemungkinan nilai yang dikembalikan adalah sebagai berikut:

LINEERR_BEARERMODEUNAVAIL, LINEERR_INVALLINESTATE, LINEERR_CALLUNAVAIL, LINEERR_INVALMEDIAMODE, LINEERR_CONFERENCEFULL, LINEERR_INVALRATE, LINEERR_INUSE, LINEERR_NOMEM, LINEERR_INVALADDRESSMODE, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALBEARERMODE, LINEERR_OPERATIONFAILED, LINEERR_INVALCALLPARAMS, LINEERR_RATEUNAVAIL, LINEERR_INVALCALLSTATE, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALCONFCALLHANDLE, LINEERR_USERUSERINFOTOOBIG.

Keterangan

Penyedia layanan mengembalikan LINEERR_INVALLINESTATE jika baris saat ini tidak dalam keadaan di mana operasi ini dapat dilakukan. Penyedia layanan harus menunjukkan daftar operasi yang saat ini valid di anggota dwLineFeatures (dari jenis LINEFEATURE) dalam struktur LINEDEVSTATUS .

Penyedia layanan mengembalikan LINEERR_INVALCALLSTATE jika panggilan konferensi tidak dalam keadaan valid untuk operasi yang diminta.

Fungsi ini menempatkan panggilan konferensi yang ada dalam status onHoldPendingConference dan membuat panggilan konsultasi yang dapat ditambahkan nanti ke panggilan konferensi yang ada dengan TSPI_lineAddToConference.

Panggilan konsultasi dapat dibatalkan menggunakan TSPI_lineDrop. Mungkin juga bagi TAPI untuk bertukar antara panggilan konsultasi dan panggilan konferensi yang diadakan dengan TSPI_lineSwapHold. Penyedia layanan awalnya melakukan pemantauan media pada panggilan baru untuk setidaknya set jenis media yang dipantau pada baris.

Fungsi ini berbeda dari fungsi TAPI yang sesuai karena mengikuti model TSPI untuk memulai masa pakai panggilan. TAPI dan penyedia layanan bertukar handel buram yang mewakili panggilan satu sama lain. Selain itu, penyedia layanan diizinkan untuk melakukan panggilan balik untuk panggilan baru sebelum kembali dari prosedur ini. Bagaimanapun, penyedia layanan juga harus memperlakukan handel yang dikembalikan sebagai "belum valid" sampai setelah pesan ASYNC_COMPLETION yang cocok melaporkan keberhasilan. Dengan kata lain, tidak boleh mengeluarkan pesan LINEEVENT apa pun untuk panggilan baru atau menyertakannya dalam jumlah panggilan dalam pesan atau struktur data status untuk baris tersebut.

Persyaratan

Persyaratan Nilai
Target Platform Windows
Header tspi.h

Lihat juga

ASYNC_COMPLETION

LINECALLPARAMS

LINEDEVSTATUS

LINEEVENT

LINE_CALLSTATE

TSPI_lineAddToConference

TSPI_lineDial

TSPI_lineDrop

TSPI_lineRemoveFromConference

TSPI_lineSetupConference

TSPI_lineSwapHold