ITTAPI::RegisterCallNotifications 메서드(tapi3if.h)
RegisterCallNotifications 메서드는 애플리케이션이 받을 새 호출 알림을 설정합니다. 애플리케이션은 각 주소에 대해 메서드를 호출하여 처리할 수 있는 미디어 유형 또는 형식을 나타내고 요청하는 권한을 지정해야 합니다.
나가는 호출만 수행하는 애플리케이션은 이 메서드를 호출할 필요가 없습니다.
이 메서드를 호출하기 전에 ITTAPIEventNotification 나가는 인터페이스를 등록해야 합니다.
주소에 소유자 및 모니터 권한이 모두 필요한 경우 fMonitor 와 fOwner 를 모두 TRUE로 설정하여 이 메서드를 한 번만 호출해야 합니다.
구문
HRESULT RegisterCallNotifications(
[in] ITAddress *pAddress,
[in] VARIANT_BOOL fMonitor,
[in] VARIANT_BOOL fOwner,
[in] long lMediaTypes,
[in] long lCallbackInstance,
[out] long *plRegister
);
매개 변수
[in] pAddress
ITAddress 인터페이스에 대한 포인터입니다.
[in] fMonitor
애플리케이션이 호출을 모니터링할지 여부를 나타내는 부울 값입니다. VARIANT_TRUE 애플리케이션이 호출을 모니터링한다는 것을 나타냅니다. VARIANT_FALSE 그렇지 않을 것입니다.
[in] fOwner
애플리케이션이 들어오는 호출을 소유할지 여부를 나타내는 부울 값입니다. VARIANT_TRUE 애플리케이션이 들어오는 호출을 소유할 것임을 나타냅니다. VARIANT_FALSE 그렇지 않음을 나타냅니다.
[in] lMediaTypes
애플리케이션에서 처리할 수 있는 미디어 형식입니다.
[in] lCallbackInstance
TAPI 3 DLL에서 사용할 콜백 instance. ITTAPIEventNotification 나가는 인터페이스를 등록하는 동안 IConnectionPoint::Advise에서 반환하는 gulAdvise 값일 수 있습니다.
[out] plRegister
성공하면 ITTAPI::UnregisterNotifications에서 사용되는 반환된 값입니다.
반환 값
이 메서드는 이러한 값 중 하나를 반환할 수 있습니다.
반환 코드 | Description |
---|---|
|
메서드가 정상적으로 실행되었습니다. |
|
plRegister 매개 변수가 유효한 포인터가 아닙니다. |
|
TAPI 개체가 초기화되지 않았습니다. |
|
작업을 수행하기 위한 메모리가 부족합니다. |
설명
이 메서드의 여러 호출이 한 주소에서 사용되는 경우 애플리케이션에서 이미 모니터링 중인 호출이 전달되면 통화 허브의 참가자 호출에 대한 정보가 혼동될 수 있습니다.
RegisterCallNotifications 메서드는 호출을 모니터링하거나 지정된 미디어 형식의 호출 소유권을 받는 데 관심이 있는 것으로 애플리케이션을 등록합니다. 이러한 호출 권한은 fMonitor 및 fOwner 매개 변수에 설정됩니다. 애플리케이션은 여러 미디어 형식을 처리하기 위해 여러 플래그를 지정할 수 있습니다. 여러 애플리케이션이 동일한 주소 및 미디어 유형에 등록하는 경우 충돌이 발생할 수 있습니다. 이러한 충돌은 사용자가 애플리케이션에 상대적 우선 순위를 할당하는 우선 순위 체계에 의해 해결됩니다. 사용자는 ITTAPI::SetApplicationPriority 함수를 호출하여 애플리케이션 우선 순위를 설정할 수 있습니다. 지정된 미디어 유형에 대한 우선 순위가 가장 높은 애플리케이션만 해당 미디어 유형의 호출에 대한 소유권(원치 않음)을 받게 됩니다. 수신 전화가 처음 도착하거나 통화가 전달될 때 소유권을 받을 수 있습니다. ITBasicCallControl::HandoffDirect 및 ITBasicCallControl::HandoffIndirect 함수가 호출되어 다른 애플리케이션에 대한 호출 소유권을 전달합니다. 사용자가 애플리케이션에 우선 순위를 할당하지 않고 여러 애플리케이션이 동일한 줄 디바이스를 여는 경우 기본적으로 RegisterCallNotifications 를 먼저 호출한 애플리케이션의 우선 순위가 가장 높습니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | Windows |
헤더 | tapi3if.h(Tapi3.h 포함) |
라이브러리 | Uuid.lib |
DLL | Tapi3.dll |