Поделиться через


Функция NdisClIncomingCallComplete (ndis.h)

NdisClIncomingCallComplete возвращает принятие или отклонение клиентом предлагаемого входящего вызова, для которого функция ProtocolClIncomingCall ранее возвращала NDIS_STATUS_PENDING.

Синтаксис

void NdisClIncomingCallComplete(
  [in] NDIS_STATUS         Status,
  [in] NDIS_HANDLE         NdisVcHandle,
  [in] PCO_CALL_PARAMETERS CallParameters
);

Параметры

[in] Status

Для параметра задано значение NDIS_STATUS_SUCCESS, если клиент принимает предлагаемый вызов. В противном случае для этого параметра можно задать любое значение NDIS_STATUS_XXX, кроме NDIS_STATUS_PENDING, чтобы указать причину отклонения вызова, определяемую клиентом.

[in] NdisVcHandle

Указывает дескриптор для VC, который был создан диспетчером вызовов для представления входящего вызова. Клиент получил этот дескриптор из состояния по каждому VC, заданному протоколомVcContext , переданного в качестве входного параметра в его Функция ProtocolClIncomingCall .

[in] CallParameters

Указатель на структуру типа CO_CALL_PARAMETERS с указанием параметров вызова для входящего вызова.

Возвращаемое значение

None

Remarks

Если функция ProtocolClIncomingCall клиента возвращает NDIS_STATUS_PENDING для предлагаемого вызова, входящего в определенный SAP, ранее зарегистрированный клиентом с помощью NdisClRegisterSap, клиент должен вызвать NdisClIncomingCallComplete , чтобы указать, принимает или отклоняет предлагаемый вызов.

Перед вызовом NdisClIncomingCallComplete такой клиент может вести переговоры с диспетчером вызовов, вызывая NdisClModifyCallQoS один или несколько раз, пока оба водителя не достигнут соглашения о приемлемом качестве обслуживания для входящего звонка или клиент не определит, что он должен отклонить предлагаемый вызов, так как его попытки изменить QoS не достигнут определенного клиентом ограничения без согласия.

Если клиент изменил параметры вызова, переданные функции ProtocolClIncomingCall , он должен задать элемент Flags в структуре CO_CALL_PARAMETERS с CALL_PARAMETERS_CHANGED при передаче этих изменений в NdisClIncomingCallComplete. В зависимости от того, принимает ли диспетчер вызовов или отклоняет предлагаемые клиентом изменения параметров вызова, NDIS впоследствии вызывает либо клиент. Функция ProtocolClCallConnected или ее Функция ProtocolClIncomingCloseCall соответственно.

Вызов NdisClIncomingCallComplete приводит к тому, что NDIS вызывает cm's Функция ProtocolCmIncomingCallComplete . NDIS передает предоставленные клиентом параметры NdisClIncomingCallComplete в качестве входных параметров в ProtocolCmIncomingCallComplete.

Если клиент отклоняет предлагаемый вызов, задав для параметра Состояние значение, отличное от NDIS_STATUS_SUCCESS, клиент должен считать указатель CallParameters недопустимым сразу после вызова NdisClIncomingCallComplete .

Требования

Требование Значение
Минимальная версия клиента Поддерживается для драйверов NDIS 6.0 и NDIS 5.1 (см. раздел NdisClIncomingCallComplete (NDIS 5.1)) в Windows Vista. Поддерживается для драйверов NDIS 5.1 (см. раздел NdisClIncomingCallComplete (NDIS 5.1)) в Windows XP.
Целевая платформа Персональный компьютер
Верхняя часть ndis.h (включая Ndis.h)
Библиотека Ndis.lib
IRQL <= DISPATCH_LEVEL
Правила соответствия DDI Irql_Protocol_Driver_Function(ndis)

См. также раздел

CO_CALL_PARAMETERS

NdisClModifyCallQoS

NdisClRegisterSap

NdisCmDispatchIncomingCall

ProtocolClCallConnected

ProtocolClIncomingCall

ProtocolClIncomingCloseCall

ProtocolCmIncomingCallComplete