Showing results for 
Search instead for 
Did you mean: 
Walkthrough Wednesdays

Finesse call control gadget customization


We need to develop a customzised finesse call control gadget, which includes features like makeCall, Transfer, Consult transfer, Hold, Answer, Drop. We are using Cisco Finesse - JavaScript Library, Version 10.5(1). We are developing our own custom call control gadget and hosting this and supporting resources in Finesse server itself.

I tried for direct transfer by calling "initiateDirectTransfer" function passing two arguments extension(source agent extension) and destExtnNo (destination extension). But we are not getting expected result.

As I am new to this, please let me know which functions should i need to call from our javascript for Transfer, Consult transfer, Hold, Answer, Drop features to work. Please correct me if I am wrong in this process.




For gadget javascript use:

dialog.initiateDirectTransfer(userExt, toAddress, callbackHandlers);

where userExt is the extension of the user requesting the transfer

and toAddress is the extension to transfer to

I tested the following and the transfer works for me

                mySSTransfer : function (target){

                                clientLogs.log("transferring to " + target);

                                var options = {};

                                currdialog.initiateDirectTransfer(user.getExtension(), target, );


The initiateDirectTransfer only works with CCE.

What is the event for UCCX

As far as i found i can make a consultCall. But this is only opening a new call. Have can i make this as a "blind" transfer.

Im thinking the sequense of a one button event will be:

1. consultCall

2. waittimer 1 sec

3. transferCall

What is the commands i javascript for this

Best regards


Please rate all useful posts and mark as answer if it solves your issue

I have tried with

    BlindTransfer: function (number) {
        clientLogs.log("transferring to " + number);
        currdialog.makeConsultCall(user.getExtension(), number, { success: SSTSuccess, error: SSTError });
        currdialog.requestAction(user.getExtension(), "TRANSFER", { success: SSTSuccess, error: SSTError })

function sleep(milliseconds) {

    var start = new Date().getTime();

    for (var i = 0; i < 1e7; i++) {

        if ((new Date().getTime() - start) > milliseconds) {





but this is not working... Anyone up for a solution for this ?

Please rate all useful posts and mark as answer if it solves your issue

I didn't think that blind transfer was supported with Finesse and UCCX at the moment.

I know that blind transfer is not supported - that why i will make this as a consulted transfer with a waittime for 1 sek and then make the transfer. (automatic)

1. consultCall

2. waittimer 1 sec

3. transferCal

These 3 steps should be one button

Please rate all useful posts and mark as answer if it solves your issue

Did you ever get this to work?

I know that 11.0 has new functionality that will address this but not every customer wants to upgrade to 11.0 right when it comes out.

There are a couple of things wrong on your code:

1. TRANSFER action should be sent to the previous call, not the new call (use a second variable as prevdialog).

2. sleeping will not work, you need to add a handler to your new call and whenever it goes to active, send the TRANSFER action to the previous dialog.

3. CUCCX script needs to answer the call, then put it on hold and wait before getting enterprise info

This can all be gone with version 11, but SingleStepTransfer is possible with CUCCX for this case.

Content for Community-Ad