lineMonitorMedia 関数 (tapi.h)
lineMonitorMedia 関数は、指定された呼び出しでメディアの種類 (モード) の検出を有効または無効にします。 メディアの種類が検出されると、メッセージがアプリケーションに送信されます。 詳細については、「 ITLegacyCallMediaControl::MonitorMedia」を参照してください。
構文
LONG lineMonitorMedia(
HCALL hCall,
DWORD dwMediaModes
);
パラメーター
hCall
呼び出しを処理します。 hCall の呼び出し状態は、アイドル状態を除く任意の状態にすることができます。
dwMediaModes
監視するメディアの種類。 このパラメーターが 0 の場合、すべてのメディアの種類の検出が取り消されます。 このパラメーターは、1 つ以上の LINEMEDIAMODE_定数を使用します。
戻り値
要求が成功した場合は 0 を返し、エラーが発生した場合は負のエラー番号を返します。 可能な戻り値は次のとおりです。
LINEERR_INVALCALLHANDLE、LINEERR_OPERATIONUNAVAIL、LINEERR_INVALCALLSTATE、LINEERR_OPERATIONFAILED、LINEERR_INVALMEDIAMODE、LINEERR_RESOURCEUNAVAIL、LINEERR_NOMEM、LINEERR_UNINITIALIZED。
注釈
lineOpen で指定されたメディアの種類は、適切なアプリケーションに新しい着信呼び出しを渡す目的で、サービス プロバイダーによってこれらのメディアの種類の検出を有効にすることにのみ関連します。 lineMonitorMedia の以前の呼び出しにより予想されるメディア モード通知メッセージには影響しません。
この関数は、メディアタイプの監視が終了したときではなく、メディアタイプの監視が正しく開始された場合に成功したと見なされます。 特定のメディアの種類のメディア監視は、dwMediaModes パラメーターを 0 に設定して lineMonitorMedia を呼び出して明示的に無効にするまで、呼び出しがアイドル状態に移行するまで、またはアプリケーションが呼び出しの呼び出しハンドルの割り当てを解除するまで有効なままになります。 lineMonitorMedia 関数は、主にイベント 報告メカニズムです。 LINECALLINFO で示されているように、呼び出しのメディアの種類 (モード) は、サービス プロバイダーによるメディアの種類の検出の影響を受けません。 制御アプリケーションのみが呼び出しのメディア・タイプを変更できます。
サービス プロバイダーによって実行される既定のメディア監視は、 lineOpen で指定されたすべてのメディアの種類の和集合に対応します。
この関数は任意の呼び出し状態で呼び出すことができますが、通常、呼び出しのメディアの種類は、呼び出しが特定の呼び出し状態にある間にのみ検出できます。 これらの状態は、デバイス固有の状態にすることができます。 たとえば、ISDN では、メディア ストリームが存在する前に、メディア ストリームのメディアの種類を示すメッセージが表示される場合があります。 同様に、呼び出しに関する固有の呼び出しまたは呼び出された識別子情報を使用して、通話のメディアの種類を識別できます。 それ以外の場合は、サービス プロバイダーがメディア ストリームをフィルター処理して通話のメディアの種類を判断できるようにするために、通話に応答する ( 接続 状態の呼び出し) 必要がある場合があります。 呼び出しのメディア ストリームをフィルター処理すると計算オーバーヘッドが発生するため、アプリケーションは必要ない場合にメディア監視を無効にする必要があります。 呼び出しのメディアの種類は、呼び出しを処理する必要があるアプリケーションを選択するため、既定では、メディアの監視は、新しく着信した呼び出しに対して有効になります。
音声メディアの種類を扱う発信アプリケーションでは、通話の通話の無音 (トーン) を監視して、通話の呼び出しの最後に誰または何があるかを区別する必要がある場合があります。 たとえば、自宅にいる人は、短い "hello" だけで通話に応答できます。オフィスのユーザーは、名前と会社名を示す長いあいさつ文を提供できます。 応答マシンでは、通常、さらに長いあいさつ文を使用できます。
lineMonitorMedia によって有効になっているメディア モード検出は、呼び出しのメディア ストリームの読み取り専用操作として実装されるため、中断されません。
電話会議でのメディアの監視は 、hConfCall パラメーターにのみ適用され、参加している個々の通話には適用されません。
要件
要件 | 値 |
---|---|
対象プラットフォーム | Windows |
ヘッダー | tapi.h |
Library | Tapi32.lib |
[DLL] | Tapi32.dll |