i use the command line dialer with UCA on Windows 7 x64 for our entire environment. It works great.
Syntax is:
C:\Program Files (x86)\Mitel\Unified Communicator Advanced 4.1\ucadialer.exe +<phonenumber>
A great trick to is to set UCA as the default program for "callto" links (skype dial links) with the registry. You can then make an extension in Google Chrome that uses a RegEx to find all phone numbers on webpages and convert them to callto: links.
i deploy the registry key with GPO.
[HKEY_CURRENT_USER\Software\Classes\callto\shell\open\command]
@="\"C:\\Program Files (x86)\\Mitel\\Unified Communicator Advanced 4.1\\ucadialer.exe\" \"%1\""
Paste this code into Notepad and save as a *.js . Right-click on the file, and choose Open With->Google Chrome. This will install it as an extension.
// 800/555/1212
// 8005551212
// +1 (number)
// + (international number)
//
// Link to "callto:<formatted number>"
//
// ==UserScript==
// @name Make Phone Numbers Callto: Links
// ==/UserScript==
//default prefix
const defaultPrefix= '+';
(function () {
const trackRegex = /(\+\d\d?)?[\-\s\/\.]?[\(]?(\d){2,4}[\)]?[\-\s\/\.]?\d\d\d[\-\s\/\.]?(\d){3,5}\b/ig;
function trackUrl(t) {
if (String(t).charAt(0)!= '+') t= defaultPrefix + String(t);
return "callto:" + (String(t).replace(/[\-\s\/\(\)\.]/g, ""));
}
// tags to scan looking for un-hyperlinked urls
var allowedParents = [
"abbr", "acronym", "address", "applet", "b", "bdo", "big", "blockquote", "body",
"caption", "center", "cite", "code", "dd", "del", "div", "dfn", "dt", "em",
"fieldset", "font", "form", "h1", "h2", "h3", "h4", "h5", "h6", "i", "iframe",
"ins", "kdb", "li", "nobr", "object", "pre", "p", "q", "samp", "small", "span", "strike",
"s", "strong", "sub", "sup", "td", "th", "tt", "u", "var"
];
var xpath = "//text()[(parent::" + allowedParents.join(" or parent::") + ")" + "]";
var candidates = document.evaluate(xpath, document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
for (var cand = null, i = 0; (cand = candidates.snapshotItem(i)); i++) {
if (trackRegex.test(cand.nodeValue)) {
var span = document.createElement("span");
var source = cand.nodeValue;
cand.parentNode.replaceChild(span, cand);
trackRegex.lastIndex = 0;
for (var match = null, lastLastIndex = 0; (match = trackRegex.exec(source)); ) {
span.appendChild(document.createTextNode(source.substring(lastLastIndex, match.index)));
var a = document.createElement("a");
a.setAttribute("href", trackUrl(match[0]));
a.appendChild(document.createTextNode(match[0]));
span.appendChild(a);
lastLastIndex = trackRegex.lastIndex;
}
span.appendChild(document.createTextNode(source.substring(lastLastIndex)));
span.normalize();
}
}
})();
Hope this helps!