about MakeCall's problem in th CCA

Nov 18, 2011 at 8:58 AM
Edited Nov 22, 2011 at 7:59 AM

I wrote MakeCall code to achieve  the Dail in the CCA4.0, but the length of the phone number seems to have limitations.
More than 10-digit phone number can not be properly called. Please help me to check it, thank you very much
Code is as follows

[DllImport("CtiLayerTapi.dll", EntryPoint = "MakeCall")]
public static extern int MakeCallCti(int fromDevId, string to, int forceTollCall);

Dec 15, 2011 at 9:55 PM

Hi liuzhendong1122,

Were you able to resolve your issue?  I think I am also seeing this issue where phone calls only work as long as the phone number doesn't have more than a specific number of digits.  In my case, any phone number longer than 5 digits won't work.


Dec 21, 2011 at 8:34 PM
Edited Dec 21, 2011 at 8:35 PM


I might found the cause of the issue.  The C++ library will format any number that is 10 digits or longer.  If you enter a number that is less than 10 digits, presumably, the code is written to assume that it's an internal extension, so it dials it as it sees it.  However for 10 or longer digits, the following happens.  Firstly, the CCA code will strip away any non numeric characters before sending it to the C++ library.  Now, let's say the number to be dialed is 1234567890, the C++ library will assume that the first three characters are the area code.  So the phone number that is actually dialed is (123) 4567890.  

In my case, we are connecting to CISCO Call Manager through the TAPI driver on the computer.  CISCO Call Manager doesn't like the parenthesis around the area code.  Hence my phone calls that are going external will fail.