VoiceGuide IVR Software Main Page
Jump to content

Group Calling

Recommended Posts

Is possible to create call to all CC group members and after first pick up call abandon others?

 

We want to call agent group (several numbers) and wait until first answer in two versions: dialup and transfer.

Share this post


Link to post

Please update system to version below:

 

[old link removed]

 

 

This version will allow group calling by specifying multiple telephone numbers in the Transfer Call module's "Phone" text box, separated by the "&" character, like this:

 

5551111&5552222&5553333&555444

 

The above will result in the 4 numbers being dialed simultaneously, with caller only connected with the first party that answers. When that connection is made the other calls will be hung up.

 

 

To change from one release of VoiceGuide v7 to another:

1. Stop VoiceGuide Service and exit all VoiceGuide programs. (eg Script Designer, Voicemail Manager, etc) and all other programs.

2. Run the VoiceGuide install and install into same directory as existing installation. (Do NOT uninstall the previous VoiceGuide installation).

3. Start VoiceGuide service.

Running a VoiceGuide install over the top of an existing install will NOT overwrite existing configuration or license files (Config.xml, ConfigLine.xml, VG.INI, VmBoxList.xml, etc) and will not remove any of users script or sound files, and will not remove any log files etc.

Share this post


Link to post

This version now also supports Group Calling for calls loaded into the Dialer:

 

[old link removed - please use newest version of VoiceGuide]

 

The numbers to be dialed just need to be specified separated using the & character.

 

eg:

 

5551111&5552222&5553333&555444

 

The above will result in the 4 numbers being dialed simultaneously, with the first party that answers allowed to continue with the call, and the other calls hung up when the first party answers.

 

The "Transfer Call" module can now use the & separator between the phone numbers as well.

 

Please note that Group Calls made using the Dialer will only have one entry in the "Call Tracking" table, and port selection is not supported.

(Port Selection is supported for the Call Transfer module's Group Calling feature)

 

Answering Machine detection should not be used on these calls. The 'Answering Machine' script should be set to disable

 

 

Do the Group Calling features now meet your requirements?

 

Please let us know if you have any questions/comments.

Share this post


Link to post

The value of $RV_DIALEDNUMBER needs to be read from the line which the successful outgoing leg of the group transfer is using.

 

When the first call is answered then the 2-line transfer is completed and the usual $RVs get set.

 

$RV[Conf_LineId_2] will store the LineID of the outgoing leg of the call.

 

So to query the $RV_DIALEDNUMBER value on that line the following VBScript can be used:

set vg = CreateObject("vgServices.CommandLink")
sReturnValue = vg.RvGet($RV[Conf_LineId_2], "RV_DIALEDNUMBER")
vg.Run_ResultReturn $RV_LINEID, "[OtherLineConnectedNumber]{" & sReturnValue & "}"
set vg = Nothing

NOTE:

In script above the RvGet call line uses: "RV_DIALEDNUMBER" and not "$RV_DIALEDNUMBER". (the "$" is omitted).

If "$RV_DIALEDNUMBER" was used the the $RV_DIALEDNUMBER would have been replaced before the script is executed.

 

 

Here are some trace excerpts showing this approach working:

213349.368  20   5   1       TwoCalls_Bridge (dtiB1T1<=>dtiB1T2)
213349.368  20   5   1       TwoCalls_Bridge iConferenceOtherLegLid_crn set to crn_CurrentConnected 6010005
213349.368  20   5   1       rvns  add   TsRoutedTo|8
213349.368  20   8   2       rvns  add   TsRoutedTo|5
213349.368  20   8   2       rvns  add   Conf_DevName_1|dtiB1T1
213349.369  20   8   2       rvns  add   Conf_LineId_1|5
213349.369  20   8   2       rvns  add   Conf_LineNbr_1|1
213349.369  20   8   2       rv    add   Conf_DevName_2|dtiB1T2
213349.369  20   8   2       rv    add   Conf_LineId_2|8
213349.369  20   8   2       rv    add   Conf_LineNbr_2|2
213349.369  20   5   1       rvns  add   Conf_DevName_1|dtiB1T1
213349.369  20   5   1       rvns  add   Conf_LineId_1|5
213349.369  20   5   1       rvns  add   Conf_LineNbr_1|1
213349.369  20   5   1       rv    add   Conf_DevName_2|dtiB1T2
213349.369  20   5   1       rv    add   Conf_LineId_2|8
213349.369  20   5   1       rv    add   Conf_LineNbr_2|2
213349.369  20   5   1       rvns  add   togroup_DevName_1|dtiB1T1
213349.369  20   5   1       rvns  add   togroup_LineId_1|5
213349.369  20   5   1       rvns  add   togroup_LineNbr_1|1
213349.369  20   5   1       rv    add   togroup_DevName_2|dtiB1T2
213349.369  20   5   1       rv    add   togroup_LineId_2|8
213349.369  20   5   1       rv    add   togroup_LineNbr_2|2
213349.370  13   5   1 state [see RV on other line] RunScript vbs, onhold=
213349.370  13   5   1       rv    replace start
------------------------------
set vg = CreateObject("vgServices.CommandLink")
sReturnValue = vg.RvGet($RV[Conf_LineId_2], "RV_DIALEDNUMBER")
vg.Run_ResultReturn $RV_LINEID, "[OtherLineConnectedNumber]{" & sReturnValue & "}"
set vg = Nothing
------------------------------
213349.370  13   5   1       rv    replace end   [set vg = CreateObject("vgServices.CommandLink")
sReturnValue = vg.RvGet(8, "RV_DIALEDNUMBER")
vg.Run_ResultReturn 5, "[OtherLineConnectedNumber]{" & sReturnValue & "}"
set vg = Nothing]
213349.380  32         rem   remoting link constructor activated: vgServices_CommandLink
213349.381  32   8   2 rem   RvGet RV_DIALEDNUMBER
213349.382  32   8   2       rv    replace start [$RV_DIALEDNUMBER]
213349.382  32   8   2       rv    replace end   [5551234]
213349.382  32   5   1 rem   Run_ResultReturn [[OtherLineConnectedNumber]{5551234}] 31
213349.382  32   5   1       q_scr +     cmdRun_ResultReturn 0
213349.382  20   5   1       q_scr run   cmdRun_ResultReturn sCode=[] iActionID=0, crn=0 [0|0|0|0|0][[OtherLineConnectedNumber]{5551234}|||||] 00:00:00 max:29|00:00:00.0278787
213349.383  13   5   1       engineVbs dispose call
213349.383  13   5   1       runscr sModuleType=Run VB Script
213349.383  13   5   1       runscr .Execute returned. iRunWait=1
213349.383  13   5   1       runscr RunWait_1 script completed
213349.383  13   5   1       runscr sModuleClearScriptProcessWasCalledFrom is current module see RV on other line, clearing setting (.iRunWait=1)
213349.383  13   5   1       runscr RunWait_1 bScriptHasSetNextModule was set. exiting thread.
213349.384  20   5   1       Run_ResultReturn_InqScr rv return
213349.384  20   5   1       rvns  add   OtherLineConnectedNumber|5551234

Share this post


Link to post

This point build version now also creates these two $RVs when the 2-line transfer call is connected. These $RVs are also created on the first call from a group transfer is connected.

 

 

$RV[Conf_ConnectedToNumber]

 

and

 

$RV[ModuleTitle_ConnectedToNumber]

 

 

[old link removed]

 

 

To change from one release of VoiceGuide v7 to another:

1. Stop VoiceGuide Service and exit all VoiceGuide programs. (eg Script Designer, Voicemail Manager, etc) and all other programs.

2. Run the VoiceGuide install and install into same directory as existing installation. (Do NOT uninstall the previous VoiceGuide installation).

3. Start VoiceGuide service.

Running a VoiceGuide install over the top of an existing install will NOT overwrite existing configuration or license files (Config.xml, ConfigLine.xml, VG.INI, VmBoxList.xml, etc) and will not remove any of users script or sound files, and will not remove any log files etc.

Here are some trace excerpts from this new version showing the new $RVs created:

222547.139  20   5   1       TwoCalls_Bridge 5<=>8
222547.139  20   5   1       TwoCalls_Bridge (dtiB1T1<=>dtiB1T2)
222547.139  20   5   1       TwoCalls_Bridge iConferenceOtherLegLid_crn set to crn_CurrentConnected 6000005
222547.139  20   5   1       rvns  add   TsRoutedTo|8
222547.139  20   8   2       rvns  add   TsRoutedTo|5
222547.139  20   8   2       rvns  add   Conf_DevName_1|dtiB1T1
222547.139  20   8   2       rvns  add   Conf_LineId_1|5
222547.139  20   8   2       rvns  add   Conf_LineNbr_1|1
222547.139  20   8   2       rv    add   Conf_DevName_2|dtiB1T2
222547.139  20   8   2       rv    add   Conf_LineId_2|8
222547.139  20   8   2       rv    add   Conf_LineNbr_2|2
222547.139  20   5   1       rvns  add   Conf_DevName_1|dtiB1T1
222547.139  20   5   1       rvns  add   Conf_LineId_1|5
222547.139  20   5   1       rvns  add   Conf_LineNbr_1|1
222547.139  20   5   1       rv    add   Conf_DevName_2|dtiB1T2
222547.139  20   5   1       rv    add   Conf_LineId_2|8
222547.139  20   5   1       rv    add   Conf_LineNbr_2|2
222547.139  20   5   1       rv    add   Conf_ConnectedToNumber|5551234
222547.140  20   5   1       rvns  add   togroup_DevName_1|dtiB1T1
222547.140  20   5   1       rvns  add   togroup_LineId_1|5
222547.140  20   5   1       rvns  add   togroup_LineNbr_1|1
222547.140  20   5   1       rv    add   togroup_DevName_2|dtiB1T2
222547.140  20   5   1       rv    add   togroup_LineId_2|8
222547.140  20   5   1       rv    add   togroup_LineNbr_2|2
222547.140  20   5   1       rv    add   togroup_ConnectedToNumber|5551234

Share this post


Link to post

Hi,

 

we tested call to group and during transfer (call waiting to connect with one from 3 targets) initial caller hang up call but 3 outbound connection was still active.

0313_1224_vgEngine.zip

Share this post


Link to post

Attached trace shows 3 calls were made, on ports 30, 29 and 28:
 

122729.240  11  92  30      6       ktTel_MakeCall_Enqueue([502131638],CONNECT_IMMEDIATELY, 60,0,77,502131638,<calltype>DialAndConf</calltype><CallerId>502131638</CallerId>)
122729.241  11  89  29      7       ktTel_MakeCall_Enqueue([224896039],CONNECT_IMMEDIATELY, 60,0,77,502131638,<calltype>DialAndConf</calltype><CallerId>502131638</CallerId>)
122729.242  11  86  28      8       ktTel_MakeCall_Enqueue([222030034],CONNECT_IMMEDIATELY, 60,0,77,502131638,<calltype>DialAndConf</calltype><CallerId>502131638</CallerId>)

 

and the call made on port 29 was answered first:

122731.719  18  89  29      7 ev    CallState GCEV_CONNECTED, crn=6010059, iEvent=0 ,256,2,4, s1:, s2:, s3:, build_date: 2018-02-14 17:40:59.81
122731.720  11  89  29      7 state [parallel calling] out_leg 25 => 29 224896039 group_xfer77_20180313_122729 .. connected

 

and the other two calls, on port 28 and 30 we hung up right away, and reported lines status was changed to "Waiting for a call"
 

122731.723  11  92  30      6       HangupCall qScr add (GroupCall_OutGoingCallAnswered othercall) crn_in=0, L1=Alerting, L2=Setup_Dialing, lPlayId=0, lRecId=0
122731.723  11  92  30      6       q_scr +     cmdHangupCall 0
122731.723  11  86  28      8       HangupCall qScr add (GroupCall_OutGoingCallAnswered othercall) crn_in=0, L1=Alerting, L2=Setup_Dialing, lPlayId=0, lRecId=0
122731.723  11  86  28      8       q_scr +     cmdHangupCall 0
...
122731.730  11  92  30      6       q_tel +     cmd_DropCall 601005c [] [0,0,0,0,0,0,0,0][|||||||]

122731.731  11  86  28      8       q_tel +     cmd_DropCall 6010056 [] [0,0,0,0,0,0,0,0][|||||||]

122731.910  11  86  28      8 state Waiting for a call

122732.136  11  92  30      6 state Waiting for a call

 

so from trace it looks like the group call functioned correctly.

 

Was there perhaps some delay in the status being reported to the Line Status Monitor? Was the timestamp in bottom left hand corner of the status monitor updated regularly at that time?

 

Share this post


Link to post
7 hours ago, SupportTeam said:

Attached trace shows 3 calls were made, on ports 30, 29 and 28:
 


122729.240  11  92  30      6       ktTel_MakeCall_Enqueue([502131638],CONNECT_IMMEDIATELY, 60,0,77,502131638,<calltype>DialAndConf</calltype><CallerId>502131638</CallerId>)
122729.241  11  89  29      7       ktTel_MakeCall_Enqueue([224896039],CONNECT_IMMEDIATELY, 60,0,77,502131638,<calltype>DialAndConf</calltype><CallerId>502131638</CallerId>)
122729.242  11  86  28      8       ktTel_MakeCall_Enqueue([222030034],CONNECT_IMMEDIATELY, 60,0,77,502131638,<calltype>DialAndConf</calltype><CallerId>502131638</CallerId>)

 

and the call made on port 29 was answered first:


122731.719  18  89  29      7 ev    CallState GCEV_CONNECTED, crn=6010059, iEvent=0 ,256,2,4, s1:, s2:, s3:, build_date: 2018-02-14 17:40:59.81
122731.720  11  89  29      7 state [parallel calling] out_leg 25 => 29 224896039 group_xfer77_20180313_122729 .. connected

 

and the other two calls, on port 28 and 30 we hung up right away, and reported lines status was changed to "Waiting for a call"
 


122731.723  11  92  30      6       HangupCall qScr add (GroupCall_OutGoingCallAnswered othercall) crn_in=0, L1=Alerting, L2=Setup_Dialing, lPlayId=0, lRecId=0
122731.723  11  92  30      6       q_scr +     cmdHangupCall 0
122731.723  11  86  28      8       HangupCall qScr add (GroupCall_OutGoingCallAnswered othercall) crn_in=0, L1=Alerting, L2=Setup_Dialing, lPlayId=0, lRecId=0
122731.723  11  86  28      8       q_scr +     cmdHangupCall 0
...
122731.730  11  92  30      6       q_tel +     cmd_DropCall 601005c [] [0,0,0,0,0,0,0,0][|||||||]

122731.731  11  86  28      8       q_tel +     cmd_DropCall 6010056 [] [0,0,0,0,0,0,0,0][|||||||]

122731.910  11  86  28      8 state Waiting for a call

122732.136  11  92  30      6 state Waiting for a call

 

so from trace it looks like the group call functioned correctly.

 

Was there perhaps some delay in the status being reported to the Line Status Monitor? Was the timestamp in bottom left hand corner of the status monitor updated regularly at that time?

 

Hi

 

You wrote about second call (with transfered call to Agent) .

first call was at 122557 and disconnected by caller at

122620.514  11  74  24      1 state Hanging up... [LineEvCallState_DISCONNECTED]

 

And I on Line Status Monitor use Hang Up button to finish call after 5 seconds after caller line was disconnected.

Share this post


Link to post

A version with this bug fixed has been made available to customer, and this fix will be included in release versions 7.5.18 onwards.

If required please contact VoiceGuide Support to obtain the fix version in the interim.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×