connection problem (voice and CallerID)

Aug 19, 2011 at 10:11 AM

I downloaded the sample code form this discussion. I am able to start session, dial number successfully, monitor incoming calls. But what I am unable to get is the voice, neither incoming nor outgoing voices are listened in either terminal. Also I want to get the calling party number. In the new form after incoming call,  I can see the callerID option, but it remains
Can anyone out there help me?

Thanks

Coordinator
Mar 7, 2012 at 12:32 PM

To get voice data with TAPI 2.x (what ATAPI wraps), you need to interop to the wave multimedia APIs.  ATAPI doesn't do any of that work - it does expose the wave handle (TapiCall.GetWaveInDeviceId() and TapiCall.GetWaveOutDeviceId()).  You can get those two identifiers and then interop to waveOpen() to access the wave data.  It's a huge pain, but that's what Microsoft offered for this version.  A better alternative would be to use TAPI 3.0 which was the COM version of TAPI and was specifically designed for media management, not just call control.  See http://itapi3.codeplex.com for a simple .NET wrapper for that version.

mark

Jun 14, 2013 at 8:17 PM
I have the same problem with CallerID, I can receive new call, but callerID is empty, Cannot I access it using ATAPI ?
Coordinator
Jun 14, 2013 at 8:26 PM
Yes you can. My guess is it's not populated right away - this happens on your normal phone too - CID is delivered between the 1st and 2nd ring. You need to hook the CallStateChanged event on the new call and watch it for changes to the caller id field.

mark