linePark 함수(tapi.h)
linePark 함수는 지정된 대기 모드에 따라 지정된 호출을 주차합니다.
구문
LONG linePark(
HCALL hCall,
DWORD dwParkMode,
LPCSTR lpszDirAddress,
LPVARSTRING lpNonDirAddress
);
매개 변수
hCall
대기할 호출에 대한 핸들입니다. 애플리케이션은 호출의 소유자여야 합니다. hCall의 호출 상태는 연결되어야 합니다.
dwParkMode
호출을 대기할 대기 모드입니다. 이 매개 변수는 단일 플래그 집합만 가질 수 있으며 LINEPARKMODE_ 상수 중 하나를 사용합니다.
lpszDirAddress
directed park를 사용할 때 호출을 대기할 주소를 나타내는 null로 끝나는 문자열에 대한 포인터입니다. 주소는 전화 걸기 가능 번호 형식입니다. 이 매개 변수는 전달되지 않은 공원에 대해 무시됩니다.
lpNonDirAddress
VARSTRING 형식의 구조체에 대한 포인터입니다. 전달되지 않은 파크의 경우 호출이 대기되는 주소가 이 구조체에 반환됩니다. 이 매개 변수는 directed park에 대해 무시됩니다. VARSTRING 구조 내에서 dwStringFormat은 STRINGFORMAT_ASCII(null로 종료된 문자열을 포함하는 ASCII 문자열 버퍼)로 설정되어야 하며 종료되는 NULL은 dwStringSize에서 고려해야 합니다. linePark를 호출하기 전에 애플리케이션은 정보를 반환하기 위해 TAPI에 사용할 수 있는 메모리 양을 나타내기 위해 이 구조체의 dwTotalSize 멤버를 설정해야 합니다.
반환 값
함수가 비동기적으로 완료된 경우 양수 요청 식별자를 반환하거나 오류가 발생할 경우 음수 오류 번호를 반환합니다. 함수가 성공하면 해당 LINE_REPLY 메시지의 dwParam2 매개 변수가 0이거나 오류가 발생하면 음수 오류 번호입니다. 가능한 반환 값은 다음과 같습니다.
LINEERR_INVALADDRESS, LINEERR_NOTOWNER, LINEERR_INVALCALLHANDLE, LINEERR_OPERATIONUNAVAIL, LINEERR_INVALCALLSTATE, LINEERR_OPERATIONFAILED, LINEERR_INVALPARKMODE, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALPOINTER, LINEERR_STRUCTURETOOSMALL, LINEERR_NOMEM, LINEERR_UNINITIALIZED.
설명
Directed Park를 사용하면 애플리케이션에서 통화를 대기하려는 주소를 결정합니다. 전달되지 않은 park를 사용하면 스위치가 주소를 결정하고 이를 애플리케이션에 제공합니다. 두 경우 모두 이 주소를 지정하여 대기된 호출을 취소할 수 있습니다.
대기된 호출은 일반적으로 성공적으로 주차된 후 유휴 상태로 전환되고 애플리케이션은 호출에 대한 핸들의 할당을 취소해야 합니다. 애플리케이션이 대기된 호출에서 lineUnpark 를 수행하는 경우 애플리케이션이 이전 호출 핸들의 할당을 취소하지 않은 경우에도 대기되지 않은 호출에 대한 새 호출 핸들이 만들어집니다.
일부 스위치는 오랜 시간 동안 통화가 대기된 후 사용자에게 알림을 표시할 수 있습니다. 애플리케이션은 호출 이유가 미리 알림으로 설정된 제품 호출을 확인합니다.
전달되지 않은 공원에서 VARSTRING 구조의 dwTotalSize 멤버가 공원 주소를 수신하기에 충분한 메모리를 지정하지 않으면 해당 회신 메시지는 LINEERR_STRUCTURETOOSMALL 오류 값을 반환합니다. 이러한 경우 전체 공원 주소를 검색할 방법이 없습니다. LINEERR_STRUCTURETOOSMALL 오류 값이 반환되면 NonDirAddress 구조체의 dwNeededSize 멤버에 유효한 값이 포함되지 않습니다. LINEERR_STRUCTURETOOSMALL 오류 값이 전달되지 않은 linePark에서 수신되면 버퍼의 크기를 늘리고 성공 또는 다른 LINEERR_XXX 결과를 반환할 때까지 linePark 를 다시 호출합니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | Windows |
헤더 | tapi.h |
라이브러리 | Tapi32.lib |
DLL | Tapi32.dll |