lineAnswer 関数 (tapi.h)
lineAnswer 関数は、指定されたオファリング呼び出しに応答します。
構文
LONG lineAnswer(
HCALL hCall,
LPCSTR lpsUserUserInfo,
DWORD dwSize
);
パラメーター
hCall
応答する呼び出しを処理します。 アプリケーションは、この呼び出しの所有者である必要があります。 hCall の呼び出し状態は、オファリングまたは受け入れ済みである必要があります。
lpsUserUserInfo
呼び出しに応答した時点でリモート パーティに送信されるユーザーユーザー情報を含む null で終わる文字列へのポインター。 ユーザーとユーザーの情報を送信しない場合は、このポインターを NULL のままに することができます。 ユーザーとユーザーの情報は、基になるネットワークでサポートされている場合にのみ送信されます ( LINEDEVCAPS を参照してください)。 必要に応じて、ユーザーユーザー情報のプロトコル判別フィールドは lpsUserUserInfo が指すバッファーの最初のバイトとして表示され、 dwSize では を考慮する必要があります。
dwSize
lpsUserUserInfo のユーザーユーザー情報のサイズ (null 終端記号を含む)、バイト単位 lpsUserUserInfo が NULL の場合、ユーザーユーザー情報は呼び出し元に送信されません。dwSize は無視されます。
戻り値
関数が非同期的に完了した場合は正の要求識別子を返し、エラーが発生した場合は負のエラー番号を返します。 関数が成功した場合は、対応するLINE_REPLY メッセージの dwParam2 パラメーターは 0、エラーが発生した場合は負のエラー番号です。 可能な戻り値は次のとおりです。
LINEERR_INUSE、LINEERR_OPERATIONUNAVAIL、LINEERR_INVALCALLHANDLE、LINEERR_OPERATIONFAILED、LINEERR_INVALCALLSTATE、LINEERR_RESOURCEUNAVAIL、LINEERR_INVALPOINTER、LINEERR_UNINITIALIZED、LINEERR_NOMEM、LINEERR_USERUSERINFOTOOBIG、LINEERR_NOTOWNER。
解説
新しい呼び出しが到着すると、呼び出しに関心のあるアプリケーションには 、 新しい呼び出しハンドルを提供し、呼び出しの状態と新しい呼び出しに対する特権 (モニターや所有者など) についてアプリケーションに通知するためのLINE_CALLSTATE メッセージが送信されます。 呼び出しの所有者特権を持つアプリケーションは、 lineAnswer を使用してこの呼び出しに応答できます。 呼び出しに正常に応答すると、通常、呼び出しは 接続 状態に遷移します。 最初は、着信呼び出しに対する所有者特権が与えられるアプリケーションは 1 つだけです。
一部のテレフォニー環境 (ISDN など) では、ユーザーアラートが通話オファリングとは別の場合、アプリケーションは応答する前に通話を受け入れるか、オファリング呼び出しを拒否またはリダイレクトするオプションを持つことができます。
別の呼び出しが既にアクティブになっているときに呼び出しが入ってくる (提供されている) 場合は、 lineAnswer を呼び出すと、新しい呼び出しに接続します。 これが既存のアクティブな呼び出しに与える影響は、回線のデバイス機能によって異なります。 最初の呼び出しは影響を受けず、自動的に削除することも、自動的に保留にすることもできます。 適切なLINE_CALLSTATE メッセージは、両方の呼び出しについてアプリケーションへの状態遷移を報告します。
ブリッジされた状況では、呼び出しが接続されているがLINECONNECTEDMODE_INACTIVE状態の場合は、 lineAnswer 関数を使用して参加させることができます。
アプリケーションには、回答時にユーザーとユーザーの情報を送信するオプションがあります。 ユーザーとユーザーの情報を送信できる場合でも、ネットワークがこの情報を呼び出し元に配信する保証はありません。 アプリケーションは回線のデバイス機能を調べて、通話に応答したときにユーザーとユーザーの情報を送信できるかどうかを判断する必要があります。
要件
対象プラットフォーム | Windows |
ヘッダー | tapi.h |
Library | Tapi32.lib |
[DLL] | Tapi32.dll |