VoiceGuide IVR Software Main Page
Jump to content

Calls Disconnect Randomly

Recommended Posts

Dear SupportTeam,

 

Very often calls are disconnecting in the middle randomly, at random points within the script.

It does not always happen, but it happens very often.

 

I've included the log files from three such instances ("1", "2", and "3").

In each case I copied the log files immediately after the call was dropped so you should find the relevant part to be at the end.

 

{Log files attached}

 

Thank you.

Disconnects.zip

Share this post


Link to post

In each of the 3 cases the cause of hangup was 'loop current drop'.

 

Most likely cause is that the telephone cable has a break at some point, with results in intermittent flow of current through the cable.

When the current stops flowing through the cable this is interpreted as end of call, as many systems stop sending current through the circuit once the remote person has hung up.

 

Recommend you replace the cabling.

 

To change default reaction to loop current drop set in VG.INI in section [CallControl]:

 

LoopCurrentDrop=IGNORE

 

 

 

154240.531 6 1 1 state [Main Menu] Playing tts (C:\Program Files\VoiceGuide\temp\tts_1_12.wav)

154240.531 6 1 1 FindSoundFile start [C:\Program Files\VoiceGuide\temp\tts_1_12.wav]

154240.531 6 1 1 t timer clear (force=False)

154240.531 6 1 1 q tel add cmd_PlayStart 364140 ,C:\Program Files\VoiceGuide\temp\tts_1_12.wav []

154240.531 7 1 1 q tel run cmd_PlayStart 1|00:00:00.0156250

154240.546 6 1 1 play start ok, playId=364140

154245.625 18 1 1 ev Dialogic 134,TDX_CST, crn=10000002, 0,0,0,DE_LCOF,,

154245.625 18 1 1 q scr add evScriptEvent 134 DE_LCOF

154245.625 6 1 1 q scr run evScriptEvent sCode=[DE_LCOF] iActionID=0, crn=10000002[0|0|0|0|0][DE_LCOF|||||] 2|00:00:00.4687500

154245.625 6 1 1 scriptevent DE_LCOF 0|0|0 DE_LCOF||

154245.625 6 1 1 LsPlayMsg EV_UNKNOWN_134,DE_LCOF

154245.625 6 1 1 path {DE_LCOF} not found

154245.625 18 [CallControl]:LoopCurrentDrop =

154245.625 18 1 1 HangupCall, source=Loop Current Off (non-xfer vgm), WorkModeScript=Running_Normal, yLineStateAppPov=[Connected], lPlayId=364140, lRecId=0

154245.625 18 1 1 moduleTitle=[Main Menu]

154245.625 18 1 1 ScriptWorkingMode set Stopping, (called from HangupCall)

154245.625 18 1 1 ls set Disconnect_Pending (scriptstate=LS_ENDINGCALL)

154245.625 18 1 1 state Hanging up... [Loop Current Off (non-xfer vgm)]

 

 

 

155303.781 6 1 1 state [Donate Online] Playing tts (C:\Program Files\VoiceGuide\temp\tts_1_9.wav)

155303.781 6 1 1 FindSoundFile start [C:\Program Files\VoiceGuide\temp\tts_1_9.wav]

155303.781 6 1 1 t timer clear (force=False)

155303.781 6 1 1 q tel add cmd_PlayStart 987390 ,C:\Program Files\VoiceGuide\temp\tts_1_9.wav []

155303.781 7 1 1 q tel run cmd_PlayStart 1|00:00:00.0156250

155303.812 6 1 1 play start ok, playId=987390

155307.031 17 1 1 ev Dialogic 134,TDX_CST, crn=10000001, 0,0,0,DE_LCOF,,

155307.031 17 1 1 q scr add evScriptEvent 134 DE_LCOF

155307.031 6 1 1 q scr run evScriptEvent sCode=[DE_LCOF] iActionID=0, crn=10000001[0|0|0|0|0][DE_LCOF|||||] 1|00:00:00.1250000

155307.031 6 1 1 scriptevent DE_LCOF 0|0|0 DE_LCOF||

155307.031 6 1 1 LsPlayMsg EV_UNKNOWN_134,DE_LCOF

155307.031 6 1 1 path {DE_LCOF} not found

155307.031 17 [CallControl]:LoopCurrentDrop =

155307.046 17 1 1 HangupCall, source=Loop Current Off (non-xfer vgm), WorkModeScript=Running_Normal, yLineStateAppPov=[Connected], lPlayId=987390, lRecId=0

155307.046 17 1 1 moduleTitle=[Donate Online]

155307.046 17 1 1 ScriptWorkingMode set Stopping, (called from HangupCall)

155307.046 17 1 1 ls set Disconnect_Pending (scriptstate=LS_ENDINGCALL)

155307.046 17 1 1 state Hanging up... [Loop Current Off (non-xfer vgm)]

 

 

 

155739.593 6 1 1 state [Donate Check] Playing tts (C:\Program Files\VoiceGuide\temp\tts_1_5.wav)

155739.593 6 1 1 FindSoundFile start [C:\Program Files\VoiceGuide\temp\tts_1_5.wav]

155739.593 6 1 1 t timer clear (force=False)

155739.593 6 1 1 q tel add cmd_PlayStart 263203 ,C:\Program Files\VoiceGuide\temp\tts_1_5.wav []

155739.593 7 1 1 q tel run cmd_PlayStart 1|00:00:00.0156250

155739.625 6 1 1 play start ok, playId=263203

155752.234 17 1 1 ev Dialogic 134,TDX_CST, crn=10000001, 0,0,0,DE_LCOF,,

155752.234 17 1 1 q scr add evScriptEvent 134 DE_LCOF

155752.234 6 1 1 q scr run evScriptEvent sCode=[DE_LCOF] iActionID=0, crn=10000001[0|0|0|0|0][DE_LCOF|||||] 2|00:00:00.1562500

155752.234 6 1 1 scriptevent DE_LCOF 0|0|0 DE_LCOF||

155752.234 6 1 1 LsPlayMsg EV_UNKNOWN_134,DE_LCOF

155752.234 6 1 1 path {DE_LCOF} not found

155752.234 17 [CallControl]:LoopCurrentDrop =

155752.250 17 1 1 HangupCall, source=Loop Current Off (non-xfer vgm), WorkModeScript=Running_Normal, yLineStateAppPov=[Connected], lPlayId=263203, lRecId=0

155752.250 17 1 1 moduleTitle=[Donate Check]

155752.250 17 1 1 ScriptWorkingMode set Stopping, (called from HangupCall)

155752.250 17 1 1 ls set Disconnect_Pending (scriptstate=LS_ENDINGCALL)

155752.250 17 1 1 state Hanging up... [Loop Current Off (non-xfer vgm)]

 

Share this post


Link to post

1-The problem with saying LoopCurrentDrop=Ignore is that the line will remain busy even after the user hangs up.

(I am dealing with US lines so I don't think there is any way to have disconnect tones.)

Is there any way to configure it so that the call is dropped only if the current drops for a duration 5 full seconds? I think that would be a solution for me.

 

2-I am using brand new cables so I don't think the cabling is the problem.

But I am also using VOIP lines instead of real analog lines. Could that be the cause of the drop in current?

Then why don't I have the same problem when using the phone line ordinarily (without the IVR)?

 

Thank you

Share this post


Link to post

Most Telco Switches/PBxs do play a disconnect tone when an incoming call is ended by remote side.

 

But I am also using VOIP lines instead of real analog lines.

On this system VoiceGuide is controlling Analog Dialogic cards, so looks like you have a VoIP<->Analog media gateway, and its the analog lines from that media gateway are plugged into the Dialogic card. Correct? What is the brand/model of the media gateway? Is it just gateway used for the IVR system or is it a PBX?

You should be able to set up the gateway/PBX to play a disconnect tone upon the call ending.

 

Then why don't I have the same problem when using the phone line ordinarily (without the IVR)?

You would not hear a loop current drop. So most likely it is happening, but goes unnoticed.

 

The best approach now would be to set LoopCurrentDrop=IGNORE and rely on scripts to timeout and hangup when there is no response from caller.

Using this approach for a few days and looking at traces afterwards would let us see for how long the loop current drops each time.

Share this post


Link to post

I am using analog dialogic boards with lines from Vonage and with D-link telephone adapters:
Model: D-Link VTA-VR Broadband Telephone Adapter with Vonage

They do not play disconnect tones. If you could tell me how to program these adapters to play disconnect tones when calls end, that would be perfect!

Share this post


Link to post

Have you tried to just run VoiceGuide in VoIP mode and connect directly to Vonage without any Dialogic cards and media-conversion adapters?

Share this post


Link to post

As per previous post:

 

The best approach now would be to set LoopCurrentDrop=IGNORE and rely on scripts to timeout and hangup when there is no response from caller.

Using this approach for a few days and looking at traces afterwards would let us see for how long the D-Link devices drop the loop current each time.

 

It will also let us see whether this occurs on all port, or only on some/one port.

Share this post


Link to post

OK, I am attaching traces for over 400 phone calls.

 

1-Please check how long the D-link devices drop the loop current for. And please let me know if you can suggest a solution other than "LoopCurrentDrop=IGNORE".

 

2-Note that only the first three ports are relevant to our discussion:

dxxxB1C1

dxxxB1C2

dxxxB1C3

 

(The other ports are connected to a different kind of telephone adapter.)

 

Thank you very much.

Share this post


Link to post

So the other ports that are connected with a different type of VoIP<->analog adapter are not exhibiting these 'loop current drop' issues?

 

What VoIP<->analog adapter is used on those ports?

 

the trace files were not attached to the post. Can you please try attaching them again?

Share this post


Link to post

The other ports are connected Eurpoean phone lines which have disconnect tones, and therefore I have no problem leaving those as LoopCurrentDrop=IGNORE.

 

My problem is only with the United States telephone lines which do not have disconnect tones and which therefore depend on loop current drops to indicate end of phone call.

 

I attached the traces. You should get it this time.

 

Thank you

logs.zip

Share this post


Link to post

Please update your system to this version of VoiceGuide:

[old link deleted]

and then edit the ConfigLine.xml file that is used by the lines which have the short intermittent loop current drops.

In the ConfigLine.xml add this entry on the Rules section:

<rule>
<Description>Loop Current Drop Debounce</Description>
<key>DebounceLcOff</key>
<value>30</value>
<default></default>
</rule>


This will result in the Loop Current Drop only being reported to the application if the Loop Current has been absent for more then 3 seconds.

From the provided traces it looks like this should be more then enough time to let system ignore the short intermittent loop current drops that we can see are constantly occurring on this system.

It is possible to specify a different ConfigLine.xml file for each line, but it sounds like on this system all lines are using the D-Link adapter and hence have this problem.

Share this post


Link to post

If the <rules> section is not present in your ConfigLine.xml file then add it in like this:

<ConfigLine>

 

<Tones>

...

</Tones>

 

<rules>

<rule>

<Description>Loop Current Drop Debounce</Description>

<key>DebounceLcOff</key>

<value>30</value>

<default></default>

</rule>

</rules>

 

 

...

 

 

</ConfigLine>

Share this post


Link to post

As per your instructions I added...

 

<rule>

<Description>Loop Current Drop Debounce</Description>

<key>DebounceLcOff</key>

<value>30</value>

<default></default>

</rule>

 

...to my "configline.xml" file.

 

But this now has the same affect as LoopCurrentDrop=IGNORE.

 

In other words, upon adding this rule, voiceguide is not ending the script when the remote caller hangs up.

 

The log files isolating this experience are attached in logs2.zip.

 

Please explain how to tell voiceguide to disconnect the call three seconds after the remote caller hangs up.

 

Thank you

logs2.zip

Share this post


Link to post

 

 

In other words, upon adding this rule, voiceguide is not ending the script when the remote caller hangs up.


Looks like your D-link device only drops loop current for a short time upon caller hangup, and not permanently.

So with with the D-Link device it is not possible to distinguish between the loop current drops 'during the call' and the loop current drops 'at end of call' as they are all the same length.

You should approach D-Link about this, but it does look like this device (D-Link VTA-VR Broadband Telephone Adapter with Vonage) as been discontinued in April 2009.


As mentioned previously, for VoIP systems we would recommend using VoiceGuide in VoIP mode, without any physical cards and media converters.

If you want to continue using physical cards you may want to look at using another media converter, or changing your scrips to have then always hangup if caller stops interacting with system.



NB. Traces show that short loop current drops are now ignored by VoiceGuide. The loop current drop observed is around 350ms long.

193605.218 5024 1 ev TDX_CST (CST Event Received)
193605.218 5024 1 TDX_CST DE_LCOF data=539
193605.218 5024 1 ev DE_LCOF - debouncing for 30 units (in 100ms units) seconds as Rule: DebounceLcOff=30
193605.562 5024 1 CtEventProcess idx=32 : evttype=134(134), crn=0, data=09149CF0(08C21BE0), len=4(4) q: 0/1
193605.562 5024 1 ev TDX_CST (CST Event Received)
193605.562 5024 1 TDX_CST DE_LCON - debounced LCOF (hli->iTimer_LcOffDebounce was 26)

Share this post


Link to post
VoIP systems we would recommend using VoiceGuide in VoIP mode, without any physical cards and media converters

Understood, but from what I've been told, the sound quality that you get when using hardware cards and media converters is much, much better than what you get when using software media converters.

 

If you want to continue using physical cards you may want to look at using another media converter.

I understand. Though I'm not sure which one to get. If you happen to know of another vonage-compatible media converter that people have successfully used with VoiceGuide, please let me know. (It's not likely that I will find "does not suffer from intermittent loop current drops" in the technical specifications of an advertised media converter)

 

Thank you.

Share this post


Link to post
Understood, but from what I've been told, the sound quality that you get when using hardware cards and media converters is much, much better than what you get when using software media converters.

The sound quality problems with VoIP arise when VoIP companies use lossy compression when relaying the voice, or packets are dropped/delayed along the transmission path. This is why often VoIP is not as good as switched circuit connections (T1/E1/Analog). The problems are in the transmission path.

 

If you have VoIP terminating at your premises then adding media converter etc will not improve the connection quality. Most media converters degrade connection quality further. Regardless of whether they are software or hardware.

 

If you have VoIP terminating at your premises then best approach is to have VoiceGuide deal with the VoIP directly.

 

We do not recommend any media converters, as our recommendation is that when handling VoIP traffic VoiceGuide should be set up in VoIP mode.

Share this post


Link to post

Side question: Is it possible to have some lines connected to voiceguide in VOIP mode and other lines connected to voice guide in dialogic-boards mode, on the same system?

 

I'm asking because some of my lines are not made able to connect with software media converters (i.e. Dialogic HMP).

Share this post


Link to post

You should be able to use use HMP with D/4PCI cards. You would need to test this setup to see if you can use some ports for VoIP and some over D/4PCI at same time.

 

HMP + 'Thin Interface' DNI cards is a common setup that lets you use T1/E1 trunks at same time as VoIP - but DNI 'Thin Interface' cards are not available in analog.

Share this post


Link to post

I did a lot of experimenting and here's what I found:

 

Replacing the media converters did not help and replacing the telephone wires did not help.

 

What I found was that even on the same Dialogic board, some ports consistently experience unexplained intermittent loop current drops lasting 300ms or more, while other ports are 100% (irrespective of which media converter is used). Legitimate loop current drops resulting from ends of call never lasted less than 300ms, so I updated configline.xml to always ignore 300ms or less. (you had said 3000ms is the correct value but my experience was that it's more like 300ms).

 

1-It surprises me that some of the ports on my boards are defective. Did you ever hear of a "bad port" before?

2-Is it possible that this behavior is due not to defective hardware but rather to some Dialogic configuration settings which can be corrected?

3-If my conclusions are correct, that would mean that I am unable to fully benefit from my licenses. For example, if I have an 8-port license and only 4 ports work reliably that means that I essentially have only a 4-port license. How then do I configure voiceguide to open those ports and only those ports that I intend to use?

 

Thank you.

Share this post


Link to post
1-It surprises me that some of the ports on my boards are defective. Did you ever hear of a "bad port" before?

Not in the way that we are seeing here. Would expect that 300ms loop current drops are caused by media converters. Possibly in reaction to missing incoming VoIP packets.

 

2-Is it possible that this behavior is due not to defective hardware but rather to some Dialogic configuration settings which can be corrected?

No. This is not due to Dialogic configuration.

 

How then do I configure voiceguide to open those ports and only those ports that I intend to use?

In Config.xml file you specify which ports to open.

Share this post


Link to post

How do I do LoopCurrentDrop=IGNORE for just two lines on my system (presumably in configline.xml)?

 

If I say LoopCurrentDrop=IGNORE in VG.INI it will apply to all of lines in the system, which is not what I need.

 

Thanks.

Share this post


Link to post

The VG.INI setting is global.

 

The DebounceLcOff setting can be used per line, in a 'ConfigLine.xml' file. A different 'ConfigLine.xml' file can be specified for each line.

 

Are you able to use the DebounceLcOff setting with a sufficiently high debounce value?

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
×