lineGetRequest 関数 (tapi.h)
lineGetRequest 関数は、指定された要求モードの次のプロキシによる要求を取得します。
構文
LONG lineGetRequest(
HLINEAPP hLineApp,
DWORD dwRequestMode,
LPVOID lpRequestBuffer
);
パラメーター
hLineApp
TAPI の行部分のアプリケーション使用ハンドル。
dwRequestMode
取得する要求の種類。 dwRequestMode で設定できるビットは 1 つだけであることに注意してください。 このパラメーターは、 LINEREQUESTMODE_定数の 1 つだけを使用します。
lpRequestBuffer
要求のパラメーターが配置されるメモリ バッファーへのポインター。 バッファーのサイズとバッファーに配置されるデータの解釈は、要求モードによって異なります。 アプリケーションによって割り当てられたバッファーは、要求を保持するのに十分なサイズであると見なされます。
dwRequestMode がLINEREQUESTMODE_MAKECALL場合は、LINEREQMAKECALL 構造体を使用して要求バッファーの内容を解釈します。
LINEREQUESTMODE_MEDIACALLは廃止されました。 詳細については、「tapiRequestMediaCall」を参照してください。
戻り値
要求が成功した場合は 0 を返し、エラーが発生した場合は負のエラー番号を返します。 可能な戻り値は次のとおりです。
LINEERR_INVALAPPHANDLE、 LINEERR_NOTREGISTERED、 LINEERR_INVALPOINTER、 LINEERR_OPERATIONFAILED、 LINEERR_INVALREQUESTMODE、 LINEERR_RESOURCEUNAVAIL、 LINEERR_NOMEM、 LINEERR_UNINITIALIZED、 LINEERR_NOREQUEST。
注釈
テレフォニー対応アプリケーションは、 tapiRequestMakeCall を呼び出すことによって、その代わりに呼び出しを行う必要があります。 これらの要求は TAPI によってキューに登録され、要求を処理するために登録された最も優先度の高いアプリケーションは、保留中の要求のモードを示す LINE_REQUEST メッセージを送信します。 通常、このアプリケーションはユーザーの呼び出し制御アプリケーションです。 LINE_REQUEST メッセージは、登録されたアプリケーションが処理するために 0 個以上の要求が保留中である可能性があることを示します。LINE_REQUESTを受信した後、LINEERR_NOREQUESTが返されるまで lineGetRequest を呼び出す必要があります。これは、保留中の要求がないことを示します。
次に、このメッセージを受信する呼び出し制御アプリケーションは lineGetRequest を呼び出し、要求モードと、要求を保持するのに十分な大きさのバッファーを指定します。 その後、呼び出し制御アプリケーションは要求を解釈して実行します。
lineGetRequest の実行後、TAPI は内部キューから要求を消去し、後続の要求で空き時間を使用できるようにします。 したがって、同じアプリケーションまたは別のアプリケーションが別の要求を発行する必要がある場合、lineGetRequest の実行時に新しいLINE_REQUEST メッセージをすぐに受信できます。 このシナリオを何らかのメカニズムで処理するのは、要求受信者アプリケーションの責任です。たとえば、追加のLINE_REQUESTに目を付け、前の要求の処理が完了するまで後続の lineGetRequest を延期したり、必要に応じて後続の要求とバッファーを取得したり、別の適切な手段で遅延したりします。
TAPI によって繰り返されないため、後続のLINE_REQUESTは無視しないでください。
要件
要件 | 値 |
---|---|
対象プラットフォーム | Windows |
ヘッダー | tapi.h |
Library | Tapi32.lib |
[DLL] | Tapi32.dll |