VoiceGuide IVR Software Main Page
Jump to content

Improper call termination after GCEV_DISCONNECTED with active Web Service

Recommended Posts

We encounter situations where, after a call disconnects, VoiceGuide does not properly terminate the session. In the attached example, during the processing of the Web Service target_user_data, a disconnect occurs (GCEV_DISCONNECTED), with the line in LS_WS_CALL state. Likely due to asynchronicity, upon receiving a 200 OK response, VoiceGuide continues executing the script flow instead of terminating. Consequently, the call remains active until the 20-minute timeout set in the transfer module. Only after that timeout does proper termination occur (GCEV_DROPCALL, GCEV_RELEASECALL, RecEnd).

How should we configure VoiceGuide so that after GCEV_DISCONNECTED, the Web Service callback does not continue the normal script flow but immediately ends the session? Attached is an anonymized log.

 
 
 
 

vgEngine_FORUM_FINAL.log

Share this post


Link to post

Please post the ktTel trace capturing these times.

Looks like something interrupted the stopping of the recording that was initiated here:

073716.714   20  17   5    83       HangupCall qScr exec src=LineEvCallState_DISCONNECTED, opt=, crn_in=6020011, L1=Disconnected, L2=Running_Normal, lPlayId=0, lRecId=2021317501
073716.714   20  17   5    83       HangupCall crn_connected=0, crn_NewCallArriving=0, crn_CurrentMakeCall=0, crn_InProcessOfReleasing=6020011
073716.714   20  17   5    83       rec_stop begin trunc100ms=0, rec_id=2021317501, caller=Line_Hangup_Main
073716.714   20  17   5    83       rec_stop lRec_Id_InProcessOfStopping=2021317501, lRecId=0
073716.715   20  17   5    83       HangupCall sScriptToRunOnHangup=[C:\VoiceGuide\Scripts\TERMINATION_SCRIPT.vgs]
073716.715   20  17   5    83       HangupCall lRec_Id_InProcessOfStopping=2021317501, wait till recording cmpletes

also, a quick fix would be to check that the value of the $RV[Conf_LineId_2] or other similar Result Variable, before getting the original line to just hold for 20 minute in the "Wait_till_end_of_call" module:

073718.004   20  17   5    83 state [Wait_till_end_of_call] Playing wav () | 
073718.007   20  17   5    83 t     timer set   10 sec : EV_TIMEOUT_HANGUP
073718.008   20  17   5    83 t     timer set   1200 sec : EV_TIMEOUT_GOTOMODULE

The attached trace doe snot show the Result Variable assignments, so looks like trace was captured at a lower log level.

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
×