VoiceGuide IVR Software Main Page
Jump to content

IVR sends the BYE too quickly to PBX and doesn’t wait for the NOTIFY.

Recommended Posts

Version 774  PBX Hookflash Transfer - Blind wasn't working.

If you just review the Wireshark log and it looks OK, but actually caller got disconnected right after  200 OK (BYE).

after switch back to version 773 PBX Hookflash Transfer - Blind was start working again. it means caller did not get disconnected after 200 OK (BYE).

 

VG773.zip

VG774 (2).zip

Share this post


Link to post

The REFER transfers were done in the same way - the only difference is that in v7.7.4 the REFER message included the "User-Agent" header.

The 'User-Agent" header was not present in the REFER issued by v7.7.3.

In both cases the PBX responded with an ACCEPTED - which is a message used to indicate that the transfer succeeded.

You will need to ask the PBX administrator why you experienced their PBX acting differently in these two cases - even after it responded ACCEPTED in both cases.

Also it may be worth noting that the original call was made to a different extension ext 20038 in case of v7.7.3 , and to ext 20036 in case of v7.7.4, so it may be worth confirming that the configuration of both extensions is the same.

 

image.png.87b1f30798ba2979d927d8ba420c7fde.png

 

 

image.png.13b6098a67a11d5849a0af69529c792e.png

 

Share this post


Link to post

NEC engineer replied:

IVR sends the BYE too quickly to PBX and doesn’t wait for the NOTIFY. REFER-based transfer state machine should wait for NOTIFY until the REFER transfer timer expires. From the call flow looks like the REFER transfer timer is too short on the IVR side (less than 0.01 sec).

1204_0055_vgEngine.zip

Share this post


Link to post

Note: above post were originally made in this thread:

https://www.voiceguide.com/forums/topic/14220-how-could-i-make-dial-and-conference-work

but that thread's title is "How could I make 'Dial and Conference' work", and that thread deals with the need to set the User-Agent header during SIP REGISTER and SIP INVITEs in order to make outgoing calls through some PBXs.

The posts in this new thread are related to SIP REFER transfers, which is a different topic, and hence these posts were split out into separate topic.

Share this post


Link to post

VoiceGuide traces show that you are using a "Blind" transfer type.

It seems like you like you may need to use the "Monitored" transfer type with the way this PBX is set up.

Please change transfer type to "Monitored", and post vgEngine + ktTel + WireShark traces when the "Monitored" transfer type is used.

(please .ZIP up all traces before posting)

 

It is also possible to delay hangup whilst using the "Blind" transfer type - by setting up a path that triggers on the GCEV_INVOKE_XFER_ACCEPTED event - which is fired as soon as the SIP ACCEPTED message arrives, and point that path to a module that just has a single timeout path that points to a 'Hangup' type module. But recommend trying the "Monitored" transfer type in v7.7.4 first.

 

Also, this question seems to be similar to the one posted in this thread:

https://www.voiceguide.com/forums/topic/14239-bye-send-out-right-after-202-accepted-receive-for-erfer-request/

 

Here is the excerpt from the provided 1204_0055_vgEngine trace file:

015652.296   20   8   2     2 state [Transfer TRRS] Blind Hookflash Transfer to 23591@10.92.39.22 |
015652.296   20   8   2     2 t     timer set   0 sec : EV_TIMEOUT_READYTOBEGINTRANSFER
015652.297   20   8   2     2       q_scr +     evScriptEvent lcode=9012 scode=[EV_TIMEOUT_READYTOBEGINTRANSFER]
015652.297   20   8   2     2       q_scr run   evScriptEvent 9012 EV_TIMEOUT_READYTOBEGINTRANSFER action_id=0, crn=0 [0|0|0|0|0][|||||] 00:00:00 max:1|0
015652.297   20   8   2     2       evscr EV_TIMEOUT_READYTOBEGINTRANSFER 9012  0|0|0  || LineState=LS_XFER_1_START
015652.324   20   8   2     2       LsXfer_1_Start : 9012(EV_TIMEOUT_READYTOBEGINTRANSFER),EV_TIMEOUT_READYTOBEGINTRANSFER,0,0,0,,,
015652.324   20   8   2     2       path {EV_TIMEOUT_READYTOBEGINTRANSFER} not found
015652.325   20   8   2     2       timeout on transfer attempt set by  VG.INI [PBX] AnnouncedTransfersMaxWaitTime (30 sec)
015652.325   20   8   2     2 t     timer set   30 sec : EV_TIMEOUT_ANNOUNCED_TRANSFER_ATTEMPT_TOOK_TOO_LONG
015652.325   20   8   2     2       xfer  RFC3515 simple refer blind transfer to [23591@10.92.39.22]
015652.325   20   8   2     2       xfer  RFC3515 xml options: []
015652.326   20   8   2     2       q_tel +     cmd_TransferBlind 0 [] [0,0,0,0,0,0,0,0][23591@10.92.39.22|||||||]
015652.326   20   8   2     2 t     timer set   30 sec : EV_TIMEOUT_HANGUP
015652.326   21   8   2     2       q_tel run   cmd_TransferBlind 0 0 [] 0 max:1|0
015652.333   24   8   2     2 ev    xfer (genericEv) 10000 0,GCEV_INVOKE_XFER_ACCEPTED, crn=8000002, 0,0,0,,,
015652.333   24   8   2     2       q_scr +     evScriptEvent lcode=0 scode=[GCEV_INVOKE_XFER_ACCEPTED]
015652.333   24   8   2     2 ev    xfer (genericEv) 10000 0,xfer_success, crn=8000002, 0,0,0,,,
015652.333   20   8   2     2       q_scr run   evScriptEvent 0 GCEV_INVOKE_XFER_ACCEPTED action_id=0, crn=0 [0|0|0|0|0][||xfer|||] 00:00:00 max:1|0
015652.333   24   8   2     2       q_scr +     evScriptEvent lcode=0 scode=[xfer_success]
015652.334   20   8   2     2       evscr GCEV_INVOKE_XFER_ACCEPTED 0  0|0|0  ||xfer LineState=LS_XFER_1_START
015652.334   20   8   2     2       LsXfer_1_Start : 0(EV_UNKNOWN_0),GCEV_INVOKE_XFER_ACCEPTED,0,0,0,,,xfer
015652.334   20   8   2     2       path {GCEV_INVOKE_XFER_ACCEPTED} not found
015652.334   20   8   2     2       LsXfer_1 rfc3515 ACCEPTED
015652.334   20   8   2     2       q_scr run   evScriptEvent 0 xfer_success action_id=0, crn=0 [0|0|0|0|0][||xfer|||] 00:00:00 max:1|0
015652.334   20   8   2     2       evscr xfer_success 0  0|0|0  ||xfer LineState=LS_XFER_1_START
015652.335   20   8   2     2       LsXfer_1_Start : 0(EV_UNKNOWN_0),xfer_success,0,0,0,,,xfer
015652.335   20   8   2     2       path {xfer_success} not found
015652.335   20   8   2     2       LsXfer_1 xfer_success
015652.335   20   8   2     2       FindNextVgm_Boolean true no paths found
015652.335   20   8   2     2       HangupCall qScr add (xfer_success) crn_in=0, L1=Connected, L2=Running_Normal, lPlayId=1038035314, lRecId=0

 

Share this post


Link to post

The provided 1205_1756_vgEngine.txt trace shows that the PBX responded with a "403 Forbidden" when the Monitored/Supervised transfer attempt was started to extension 27190:

175718.925   20   3   1     1 state [Transfer MobilID] Monitored Hookflash Transfer to 27190@10.92.39.22 | 

image.thumb.png.f92c9a6460f4a38d8d4d16cc07864fbf.png

 

This is not the same extension as in the previously provided 1204_0055_vgEngine.txt trace. That extension was 23591:

015652.296   20   8   2     2 state [Transfer TRRS] Blind Hookflash Transfer to 23591@10.92.39.22 | 

And the Test1204_With_UA WireShark trace that was provided alongside the 1204_0055_vgEngine.txt trace was for a different call altogether, with the transfer being to telephone number 12409973549 :

image.png.1417f7ac2067d7d5c7b933eadc41fb26.png

 

Still, let's assume that this PBX responds to calls/transfers to 27190 and 23591 in same way.

Is this PBX set to respond with "403 Forbidden" when it receives a SIP INVITEs ? A SIP INVITE is needed to set up a Monitored/Supervised/Attended REFER transfer.

 

Going back to "Blind REFER" option: We will have a look at how this is working and compare with v7.7.3, but a quick workaround for now may be to just have VoiceGuide wait for a while after receiving the ACCEPTED event - to allow the NOTIFY events to arrive and be responded to. This delay can be achieved using this approach. The "success" path will result in VoiceGuide moving onto next module instead of hanging up the call.

image.png.d440fdf8954ac0016dfe472e4d197414.png

image.png.84998a67bc54def0f9212bef56e5580f.png

 

Attaching the .VGS script below:

BlindTransferWithWait_v3.vgs

 

Share this post


Link to post

Link to new version which fixes this issue in code was forwarded to user.

This fix will also soon be included in the main version available for download from our Downloads page.

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
×