Что означает код HRESULT 0x80040031 (TAPI_E_DROPPED)?

 
Предыдущий Следующий
TAPI_E_INVALHOOKSWITCHDEV TAPI_E_NOREQUESTRECIPIENT

TAPI_E_DROPPED

Уровень подсистемы

Для TAPI_E_DROPPED () рабочая граница — вызов сброшен. Код относится к TAPI 3 provider, address и call-control API. Сохраняйте первый native return и identity объекта: именно они определяют, проверяется ли здесь input, capability, ownership, lifecycle или transport.

При гонке answer/hold/transfer/disconnect сохраняйте порядок TAPI events и request completion: поздняя команда часто относится уже к старому call state.

Фрагменты исходного EN-описания

  • TAPI_E_DROPPED is HRESULT 2147745841 ( 0X80040031 ) from Tapi3err.h.
  • capture call state transition, disconnect code, remote address, last successful method, provider event order, and media shutdown.
  • AllStat describes it as “The call was disconnected.” The result normally appears while performing call control after the provider or remote party has already disconnected the call.
  • The evidence-based correction for this result is to treat the call as terminal, stop media, release call-specific objects, and create a new call for another attempt.

Минимальный trace

  • provider name/version, address ID и device class.
  • current address/call/phone state и privilege.
  • точный IT* method, async request ID и первый native HRESULT.

TAPI state изменяется событиями provider независимо от UI-команд; поэтому call/address/terminal generation нужно связать с каждым asynchronous request.

Как отделить соседний код

Сделайте минимальный before/after experiment для «вызов сброшен». Не меняйте одновременно provider, input и state — такой тест не показывает, что именно исправило результат.

Разделяйте asynchronous completion, remote call state и provider loss. Сохраняйте первое событие, которое изменило state, до автоматического повтора.

Критерий успеха

Обрабатывайте состояние как завершившуюся/изменившуюся асинхронную операцию; повторяйте только после нового call/request generation и проверки side effects.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.