次の方法で共有


SAP の登録

クライアントが着信呼び出しを受け入れた場合、その ProtocolClOpenAfCompleteEx 関数は通常、NdisClRegisterSap を呼び出すことによって、コール マネージャーに 1 つ以上の SAP を登録します。

次の図は、SAP を登録するコール マネージャーのクライアントを示しています。

Diagram illustrating a client of a call manager registering a SAP.

次の図は、SAP を登録する MCM ドライバーのクライアントを示しています。

Diagram showing a client of an MCM driver registering a SAP.

NdisClRegisterSap を呼び出すと、クライアントは特定の SAP での着信呼び出しの通知を要求します。 NDIS は、クライアントによって提供される SAP 情報を、検証のためにコール マネージャーまたは MCM ドライバーの ProtocolCmRegisterSap 関数に転送します。 特定の SAP が既に使用されている場合や、コール マネージャーまたは MCM ドライバーがクライアント提供の SAP 仕様を認識しない場合、コール マネージャーまたは MCM ドライバーは、この要求に失敗します。

ProtocolCmRegisterSap では、コール マネージャーまたは MCM ドライバーがネットワーク制御デバイスまたは他のメディア固有のエージェントと通信して、接続指向クライアントの SAP をネットワークに登録することがあります。 ProtocolCmRegisterSap には、SAP を表す NDIS 提供の NdisSapHandle も格納されます。

ProtocolCmRegisterSap は、同期的または非同期的に完了できます。 非同期的に完了するために、Call Manager の ProtocolCmRegisterSap 関数は NdisCmRegisterSapComplete を呼び出します。 MCM ドライバーの ProtocolCmRegisterSap 関数は NdisMCmRegisterSapComplete を呼び出します。 Ndis(M)CmRegisterSapComplete を呼び出すと、NDIS はクライアントの ProtocolClRegisterSapComplete 関数を呼び出します。

NdisClRegisterSap へのクライアントの呼び出しに成功した場合、NDIS は、SAP を表す NdisSapHandle をクライアントに返します。

コール マネージャーは、接続指向クライアントの代わりに SAP を登録した後、NdisCmDispatchIncomingCall を呼び出すことによって、その SAP に送信された着信呼び出しオファーをそのクライアントに通知します。 MCM ドライバーは NdisMCmDispatchIncomingCall を呼び出します (「着信呼び出しの指示」をご覧ください)。 クライアントは、SAP 登録がまだ保留中の間でも、SAP で着信呼び出しを受け取ることができます。つまり、ProtocolClRegisterSapComplete 関数が呼び出される前です。