I try to use a diva board ( Dialog Diva Analog-2 PCI v1) in passive monitorin mode using dialogic sample code named "AudioMonitorMemory".
I encounter a problem,
DivaCreateMonitor function in this sample code generates an error: DivaErrorInvalidParameter = 4 ---------------------------------------------------------------------------------------------------------- /* * Create the monitor */ if ( DivaCreateMonitor ( hApp, hMyMonitor, &hSdkMonitor, deviceA/*=1*/, deviceB/*=2*/ ) != DivaSuccess ) // result is 4 != DivaSuccess return -1; --------------------------------------------------------------------------------------------------------------
DivaCreateMonitor function in this sample code generates an error: DivaErrorInvalidParameter = 4
---------------------------------------------------------------------------------------------------------- /* * Create the monitor */ if ( DivaCreateMonitor ( hApp, hMyMonitor, &hSdkMonitor, deviceA/*=1*/, deviceB/*=2*/ ) != DivaSuccess ) // result is 4 != DivaSuccess return -1; --------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------
/*
* Create the monitor */
*/
if ( DivaCreateMonitor ( hApp, hMyMonitor, &hSdkMonitor, deviceA/*=1*/, deviceB/*=2*/ ) != DivaSuccess ) // result is 4 != DivaSuccess
return -1;
--------------------------------------------------------------------------------------------------------------
Any helpful comments will be regarded highly.
You can't do passive tapping with a Analog board, only with Diva BRI or PRI ISDN boards.
Thanks Vic,
Is there any way to sniff (Just recording, without answering the incoming call or making an outgoing call) a analog line with Diva Analog 2 boards?
I've not tried it but you may be able to do this by using a two into one phone socket adapter - like you would use for connecting two phones to one socket if you wanted an extension phone somewhere else in the house.
The phone and the diva board should both see calls, so you may just be able to process calls normally without interferring with the call to the phone. Certainly worth experimenting with anyway.
You are right
Whic function API do you recommend to sniff the analog line?
I dont want to use DivaAnswer function because the incoming call should be answered by a person. In addition I dont want to interferring with the call to the phone. Furthermore if the DivaAnswer function doesn't invoke, the DivaSetAnalogHookState won't work correctly.
Could you please help me?
Its important to realise that you are not actually 'sniffing' the line as the analog card is not runnng in high impedance tapping mode so you are just sharing the line with the phone. As I said in the first post the analog cards do not support line tapping so you will have to work within those limitations. So when a call comes in you will have to answer the call and you can't tell when the phone has been answered so the best you can do is to run a short timer of say 3-5 seconds from when you get an incoming call notification (to allow the phone to be picked up) and then answer the call with the analog card. Note that if the phone is in use at this point they will probably hear an audible click.
Once the call is answered then all the normal SDK functions will work.
All this may not be ideal for your purposes but I'm afraid that is the consequence of not having high impedance tapping support in the analog cards.
1 - Do Diva BRI or PRI ISDN boards support the Analog lines for passive tapping?
2 - Which media proccessing boards do you recommend for sniffing the analog lines? That's better these boards have at least VAD, and CSP features.
Thnak you in advance for your helps.
1. No. The Diva ISDN boards connect to ISDN lines
2. I am not aware of any analog boards that support tapping I'm afraid.
Just as an update to this post, we did release full support for Analog card line tapping in SDK 5.5 SU1 which was released in April 2010. So Diva Analog cards can be used for line tapping from that SDK version onwards.