2013-02-13 3 views
0

클라이언트 용 CRM에 대한 간단한 호출 프로그램을 수행하고 있으며 전화 시스템에 문제가 있습니다. 그들은 내부 라우팅이있는 Cisco IP 전화 시스템을 가지고 있으며 다음 코드를 실행할 때 항상 발신자 ID 번호로 '9900'을 얻습니다. 라우팅 된 번호를 얻을 수있는 방법이 있습니까? 나는 TAPI를 처음 접해 보았습니다. 사전에 도움을 주셔서 감사합니다.Tapi3 CallerIDNumber returned 9900

cn = tapi.RegisterCallNotifications(line, true, true, TAPI3Lib.TapiConstants.TAPIMEDIATYPE_AUDIO, 2); 
if (cn.Call.CallState == TAPI3Lib.CALL_STATE.CS_OFFERING){ 
string c = cn.Call.get_CallInfoString(TAPI3Lib.CALLINFO_STRING.CIS_CALLERIDNUMBER); 
} 

아론 브레이크

답변

0

내가이 시스템에 익숙하지 않은 오전이 긴 샷을 할 수 있지만, 당신은 (또한 CallInfo 구조)를 ConnectedIdNumber보고 시도가있을 수 있습니다. 이 값은 호출이 수락 (응답되는 것과 같지 않음) 될 때까지 채워지지 않지만 올바른 호출 줄 식별자가 표시되어 여전히 문제가 될 수 있습니다. 행운을 빈다.

+0

안녕하세요. 다시 연락을 드려 죄송합니다. 다른 일을해야했다. 나는 ConnectedIdNumber를 시도하고 호출되는 번호, 즉 내 확장을 리턴합니다. CallInfo 구조에서 다른 숫자를 시도했지만 그 중 아무 것도 작동하지 않았습니다. 그들 중 대부분은 실제로 어떤 이유로 E_FAIL 결과를 반환했습니다. 생각에 감사드립니다. –

+0

수정 - ConnectedIdNumber가 대상 번호가 아닌 오류를 반환합니다. 나는 구조가 뒤섞여 있었다. 죄송합니다. –

0

낡은 질문의 종류에 대한 답을 찾았지만 후손을 위해 UCCM 전화 시스템과 유사한 작업을 수행했으며 시스템이 통화 대기열/헌트라인 관리에 UCCX를 사용할 때 주요 제한 사항을 발견했습니다.

UCCX를 사용하는 경우이 회선에 대한 실제 수신 전화는이 목적으로 UCCX 계층에 의해 설정된 내선 집합 중 하나에 "파킹"됩니다. 그러면 콜이 콜센터 에이전트의 회선으로 전달되면 해당 회선을보고있는 TAPI 클라이언트의 소프트웨어에서 볼 수있는 이벤트가 UCCX가 원래의 외부 번호 대신 발신자 ID로 파킹하는 데 사용하는 내선 번호를 가져옵니다. UCCX가 계속 추적하기 때문에 TAPI를 사용하여 원래 호출 뒤의 번호를 얻는 방법을 찾을 수 없었습니다. 따라서 최종 솔루션은 UCCX에서 올바른 소스 번호를 사용하여 더 많은 고급 기능을 위해 데이터베이스를 쿼리하는 스크립트를 작성하는 것이 었습니다. CID 정보 (처음에는 "바닐라"UCCM 800 블록을 사용하도록 설계된 원래 TAPI 응용 프로그램의 요점 이었음).