TSPI 메시지
이 섹션에는 TSPI(전화 통신 서비스 공급자 인터페이스)의 메시지 목록이 포함되어 있습니다. 이러한 메시지는 서비스 공급자 내에서 자발적으로 발생하는 비동기 이벤트가 발생했음을 TAPI에 알리는 데 사용됩니다. 서비스 공급자는 서비스 공급자가 회선, 통화 또는 전화 디바이스에서 이벤트를 보고하는지 여부에 따라 LINEEVENT 또는 PHONEEVENT 콜백 함수를 호출하여 이러한 이벤트를 TAPI에 전달합니다. 줄 또는 호출에서 발생하는 이벤트를 보고하기 위한 LINEEVENT 프로시저는 TSPI_lineOpen 함수를 사용하여 줄을 열 때 서비스 공급자에게 제공됩니다. 휴대폰에서 발생하는 이벤트를 보고하기 위한 PHONEEVENT 프로시저는 TSPI_phoneOpen 함수와 함께 제공됩니다.
이러한 자발적인 이벤트는 TAPI가 요청에 대한 직접적인 응답이 아니라는 점에서 원치 않습니다. 이러한 이벤트는 TAPI에서 수행한 요청의 완료를 보고하는 이벤트와 대조됩니다. 이러한 완료 이벤트는 ASYNC_COMPLETION 콜백 함수를 통해 보고됩니다.
자발적인 이벤트 프로시저에 대한 매개 변수 프로필에는 이벤트가 보고되는 관련 개체(전화, 회선 또는 통화)를 식별하는 매개 변수가 포함됩니다. ID는 TSPI에서 정확한 해석을 게시하지 않는 불투명 핸들 형식입니다. TAPI는 내부적으로 이러한 불투명 핸들과 디바이스를 나타내는 데 사용한 데이터 구조 간의 관계를 결정합니다.
자발적인 이벤트 프로시저에 대한 매개 변수 프로필에는 메시지 유형을 식별하는 메시지 매개 변수도 포함됩니다. 각 메시지 형식에는 다른 매개 변수 및 해당 의미와 함께 포함된 핸들을 결정하는 해당 정의가 있습니다. TSPI 수준에 표시되는 메시지와 TAPI 수준에 표시되는 메시지 사이에는 매우 강력한 대응이 있습니다. 다음은 서신의 일반적인 규칙입니다.
- 메시지 집합은 거의 동일합니다. 메시지가 해당하는 경우 TSPI 수준에서 동일한 메시지 이름과 값이 사용됩니다.
- TSPI 수준에 표시되는 핸들은 TSPI 사양에 정의된 불투명 형식입니다. 이러한 형식(및 해석)은 동일한 디바이스 클래스를 참조하지만 TAPI 수준의 형식과 다릅니다. 예를 들어 TAPI 메시지에 HLINE 핸들이 포함된 경우 해당 TSPI 메시지에는 일반적으로 HTAPILINE 핸들이 포함됩니다.
- 콜백에 전달된 dwCallbackInstance 데이터가 없습니다.
- dwParam1, dwParam2 및 dwParam3 매개 변수는 일반적으로 TAPI 메시지에 해당하는 매개 변수와 동일합니다.
- 회선 지향 및 통화 지향 메시지는 전화 지향 메시지와는 다른 콜백 프로시저로 전달됩니다.
각 메시지에 대해 이 섹션에는 다음 항목이 나열됩니다.
- 메시지의 목적
- 이 메시지가 전달되는 콜백 프로시저
- 메시지 매개 변수에 대한 설명
- 메시지 사용에 대한 선택적 설명
- 다른 함수, 메시지 및 데이터 구조에 대한 선택적 참조
- 이 메시지를 TAPI 인터페이스와 비교하는 선택적 주석
특정 메시지는 개체의 상태 변경 내용을 TAPI에 알리는 데 사용됩니다. 이러한 메시지는 TAPI 불투명 개체 핸들과 상태 항목이 변경되었음을 나타냅니다. TAPI는 이후에 개체의 적절한 "get 상태" 함수를 호출하여 개체의 전체 상태 가져올 수 있습니다.
이벤트가 발생하면 메시지가 TAPI로 전송되거나 전송되지 않을 수 있습니다. 상태 변경과 같은 일부 이벤트 형식의 경우 TAPI는 관심 있는 상태 변경 내용 집합을 지정합니다. 서비스 공급자는 보고하는 상태 변경 메시지 이벤트를 이 집합에 포함된 이벤트로 제한하는 것이 좋습니다. 서비스 공급자는 이 제한을 준수할 필요가 없습니다. 즉, 엄격하게 필요한 것보다 더 많은 변경 내용을 보고할 수 있습니다. 그러나 성능상의 이유로 제한을 준수해야 합니다.
LINE_REPLY 메시지는 TSPI 수준에서 사용되지 않습니다. 비동기 요청의 완료는 ASYNC_COMPLETION 콜백을 사용하여 보고됩니다.
PHONE_REPLY 메시지는 TSPI 수준에서 사용되지 않습니다. 비동기 요청의 완료는 ASYNC_COMPLETION 콜백을 사용하여 보고됩니다.
자세한 내용은 아래 항목을 참조하세요.