|
Subject:
|
TAPI: Detecting Dialed Digits [VC++]
|
|
Posted By:
|
goyal_saurabh
|
Post Date:
|
3/5/2004 12:49:43 PM
|
hi there to all experts..
I am making a Tapi application which is supposed to recv a call n then detect the digits pressed by the calling party. I am able to pick up the the line but still cannot detect the digits. One more problem that i am facing is that the i recv the LINECALLSTATE_CONNECTED message after the calling party disconnects. Moreover the Modem keeps producing the annoying sounds. I'll be really greatfull to u all if neone can help me solve these problems.and if u know ne link where i can find a sample code, do tell me
thanx
|
|
Reply By:
|
Daniel_hn
|
Reply Date:
|
3/7/2004 8:08:33 PM
|
I think you shuold learn more about AT command at first. You should use AT command set config at modem such as "AT0=3 AT&W" ect. The modem will auto pick the line whem ring coming after set successful,You will receive the data on COM port such as "connected at 9600" ect. Good lucky
|
|
Reply By:
|
goyal_saurabh
|
Reply Date:
|
3/8/2004 2:18:38 AM
|
thanx for ur suggestion. it really fels like tht i hv to learn AT commands first. but what i learned from MSDN is tht if ur modem is TAPI compliant u just need to call the TAPI functions.Whatever i think tht i'll hv to go for AT commands first. can u please tell me some links where i can find more information on the these commands.
thanx.
|
|
Reply By:
|
Daniel_hn
|
Reply Date:
|
3/8/2004 10:55:41 PM
|
pls use the key words "AT Command modem" search in google.com. You will get a lot of results. http://www.modem.com/general/extendat.html is one of the result
|
|
Reply By:
|
hanter
|
Reply Date:
|
9/14/2006 3:00:01 AM
|
It's veyry simple In your TAPI callback function Whenever your get the meaage LINE_CALLSTATE and the dwParam1 is LINECALLSTATE_CONNECTED
You call the function lineMonitorDigits, from now your application can get the detect the digit. And you can get the digit which press by caller or callee, and whenever the message LINE_MONITORDIGITS come. you cheack dwParam2 parameter to get the digit.
if(dwParam2 == LINEDIGITMODE_DTMF) { short digit = LOBYTE(dwParam1); }
Have success full.
|