03-25-2010 08:46 AM - edited 03-15-2019 09:58 PM
Hello,
I'm currently developing a .NET dialer application that is initiated by a Windows Sidebar Gadget via ActiveX and I've run into a strange problem. Seemingly at random (though more often when dialing long distance) the application causes the phone profile associated with the web dialer (https://ip:8433/webdialer/Webdialer) to no longer list a phone number. Once this has occured that phone can never web dial again whether from my application or through the web dialer (https://ip:8443/webdialer/Webdialer). However, the phone will still manually dial just fine, and the profile in the CUCM looks just fine. Further more, recreating the profile after resetting the phone to factory default has no effect. The only way we have been able to get web dialing to work again is to replace the physical phone (until the new phone gets corrupted). Were currently running on CUCM v7.1. My code is below. I really appreciate any help you can provide!
.NET Code using XMLRPC SOAP communication with overriden functions as specified in the "Cisco Unified Communications Manager
Developers Guide" in the "Using the AXL API in a .NET Environment" section.
static void Main(string[] args)
{
// Initialize variables for command line arguments
string argsUser = ""; // user id
string argsPass = ""; // user password
string argsDest = ""; // destination of phoen call - phone number
string argsDevi = "0"; // device number selected from profile options
string argsLine = "0"; // line number selected from profile options
if (args.Length >= 3) // were enough arguments provided by the user?
{
argsUser = args[0];
argsPass = args[1];
argsDest = args[2];
if (args.Length >= 5) // were optional pair to select device and line sent?
{
argsDevi = args[4];
argsLine = args[5];
}
using (WDSoapInterfaceService myCUCMClient = new WDSoapInterfaceService(argsUser, argsPass))
{
// create credentials to send to WebDialer
Credential myCredential = new Credential();
myCredential.userID = argsUser;
myCredential.password = argsPass;
// create profile to send to WebDialer
UserProfile myProfile = new UserProfile();
myProfile.user = myCredential.userID;
myProfile.deviceName = myCUCMClient.getProfileDetailSoap(myCredential).deviceInfoListDetail[0].deviceName;
myProfile.lineNumber = myCUCMClient.getProfileDetailSoap(myCredential).deviceInfoListDetail[0].lines[0];
myProfile.locale = "en";
myProfile.supportEM = false;
//myProfile.dontAutoClose = false;
//myProfile.dontShowCallConf = true;
// Initiate Phone Call
myCUCMClient.makeCallSoap(myCredential, argsDest, myProfile);
}
}
else // not enough arguments sent to initialize phone call. Prompt error message.
{
MessageBox.Show("PhoneDialer_XMLRPC: Invalid Arguments or Arguments Incomplete\n\nUsage: PhoneDialer_XMLRPC.exe <username> <password> <destination> (optional pair<Device#><line#>)");
}
}
}
Sidebar Gadget function (javascript) calling the dialer application
function makeCallSoap(dest)
{
var WshShell = new ActiveXObject('WScript.Shell');
var clientArgs = " " + System.Gadget.Settings.read("userID") + " " + System.Gadget.Settings.read("userPass") + " " + dest;
document.getElementById("updateStatus").innerHTML = clientArgs; // used to verify arguments sent to dialer
exec = WshShell.Exec(System.Gadget.path + "\\dialer\\DialerClient_XMLRPC.exe" + clientArgs);
}
06-01-2010 11:46 AM
I'm having the exact same problem you are describing. The device name still comes through, but the DN won't. And it seems to randomly happen to people that once worked.
Did you ever get a resolution? We're on CUCM 7.1.5.
06-02-2010 07:35 AM
My company did come to a resolution of sorts. A couple of weeks back the CUCM was completely reset to resolve unrelated issues. After the reset all of my "broken" devices worked again. We are speculating that there was bad data cached in the CUCM that was cleared after the services restarted. Since then the dialer application has be rewritten in JAVA to resolve latency issues that were being caused by the SSL handshake between the Call Manager and my .Net application. To date there have been no more problems.
I know that's not much, but I hope it helps!
Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: