2010-06-27 2 views
13

정보를 잃지 않고 모뎀이나 전화선에서 직접 바이트를 읽을 수 있습니까? 벨소리 울림 후 SerialPort을 사용하는 경우 ReceiveData 이벤트에서 아무런 반응이 없습니다.전화선에서 발신자 ID를 찾는 방법은 무엇입니까?

라인에서 직접 발신자 정보를 읽고 싶습니다. 내 모뎀이 발신자 ID를 지원하지 않습니다.

답변

16

호출자 ID를 감지하는 올바른 방법은 TAPI API를 사용하는 것입니다.

여기서 C# TAPI 라이브러리 (ITAPI3)를 찾을 수 있습니다. http://www.julmar.com/tapi/

2006 년 4 월 4 일 블로그 항목에서 64 비트 Windows에서 링크 된 프로그램 빌드에 대한 일부 노트를 확인하십시오.

TTAPI tapi = new TTAPI(); 

tapi.TE_CALLINFOCHANGE += (sender, e) => 
{ 
    if (e.Cause == CALLINFOCHANGE_CAUSE.CIC_CALLERID) 
    { 
     Console.WriteLine(e.Call.get_CallInfo(CALLINFO_STRING.CIS_CALLERIDNUMBER)); 
     Console.WriteLine(e.Call.get_CallInfo(CALLINFO_STRING.CIS_CALLERIDNAME)); 
    } 
} 

tapi.Initialize(); 

// ... 
// Keep the TAPI object in memory so it can listen for events 
// ... 

tapi.ShutDown(); 
: 여기

그리고

샘플 코드입니다
관련 문제