Xact-dialer over ISDN-GW , voice detection difficulty

I’m checking an Xact Dialer installation
I can place calls via ISDN by mean of a SIP trunk to a CISCO 1751V router acting as ISDN <-> VoIP gateway as well via VoIP ISP trunk.

While broadcast works almost perfectly over pure IP trunking, voice trough calls via ISDN is hardly detected so, after the 5sec. and next 30sec. BackgroundDetect, line hangs up.

If the called party is a mobile phone, situation is even worse.

Voice quality over ISDN is perfect and no issues about voice level or noise or distortion are noted.

Unfortunately I haven’t any other ISDN or PSTN gateway to check against to.
It would be interesting to know if the problem is caused by the VoIPtoBRI translation or the gateway signaling itself.

Any idea where to start from for troubleshooting ??

Thank you

I would start with the log. Look who hungup. Look for cause codes.

More than disconnection that probably occours by timeout after 5 and 30 seconds with nothing detected, it would be interesting to understand why the voice isn’t detected while the silence files are played.
Anyway I get a new “Teles” ISDN GW today
It seems to work fine with a mobile as well as home/office called number.

I’ll go for this last GW and I’ll try to troubleshoot Cisco one with next Broadcast I’ll buy…

Thank you

Hi
I came to a point that I NEED to use the broadcast module in conjunction with Cisco gateway
Anyway, despite the fact voice quality in inboubd-outbound calls made by ip phones is excellent, the module has big trouble in detecting voice/pauses with this gateway.

This is part of the asterisk log once the remote party has answered (04221832888 is the called number) :

[2014-05-27 16:58:36] VERBOSE[3658][C-00000021] app_dial.c: – SIP/Cisco1-00000025 answered Local/04221832888@from-internal-0000001f;2
[2014-05-27 16:58:36] VERBOSE[3657][C-00000021] pbx.c: – Executing [s@broadcast-campaign-3:1] Set(“Local/04221832888@from-internal-0000001f;1”, “CALLERID(name)=Test1”) in new stack
[2014-05-27 16:58:36] VERBOSE[3657][C-00000021] pbx.c: – Executing [s@broadcast-campaign-3:2] Set(“Local/04221832888@from-internal-0000001f;1”, “CALLERID(num)=04221832888”) in new stack
[2014-05-27 16:58:36] VERBOSE[3657][C-00000021] pbx.c: – Executing [s@broadcast-campaign-3:3] Set(“Local/04221832888@from-internal-0000001f;1”, “MACHINE=0”) in new stack
[2014-05-27 16:58:36] VERBOSE[3657][C-00000021] pbx.c: – Executing [s@broadcast-campaign-3:4] Answer(“Local/04221832888@from-internal-0000001f;1”, “”) in new stack
[2014-05-27 16:58:36] VERBOSE[3657][C-00000021] pbx.c: – Executing [s@broadcast-campaign-3:5] Set(“Local/04221832888@from-internal-0000001f;1”, “_STATE=answered”) in new stack
[2014-05-27 16:58:36] VERBOSE[3657][C-00000021] pbx.c: – Executing [s@broadcast-campaign-3:6] AGI(“Local/04221832888@from-internal-0000001f;1”, “broadcast_log.php”) in new stack
[2014-05-27 16:58:36] VERBOSE[3657][C-00000021] res_agi.c: – Launched AGI Script /var/lib/asterisk/agi-bin/broadcast_log.php
[2014-05-27 16:58:37] VERBOSE[3657][C-00000021] res_agi.c: – <Local/04221832888@from-internal-0000001f;1>AGI Script broadcast_log.php completed, returning 0
[2014-05-27 16:58:37] VERBOSE[3657][C-00000021] pbx.c: – Executing [s@broadcast-campaign-3:7] BackgroundDetect(“Local/04221832888@from-internal-0000001f;1”, “silence-5,1000,50”) in new stack
[2014-05-27 16:58:37] VERBOSE[3657][C-00000021] file.c: – <Local/04221832888@from-internal-0000001f;1> Playing ‘silence-5.gsm’ (language ‘en’)
[2014-05-27 16:58:42] VERBOSE[3657][C-00000021] pbx.c: – Executing [s@broadcast-campaign-3:8] NoOp(“Local/04221832888@from-internal-0000001f;1”, “answering machine detected”) in new stack
[2014-05-27 16:58:42] VERBOSE[3657][C-00000021] pbx.c: – Executing [s@broadcast-campaign-3:9] Set(“Local/04221832888@from-internal-0000001f;1”, “MACHINE=1”) in new stack
[2014-05-27 16:58:42] VERBOSE[3657][C-00000021] pbx.c: – Executing [s@broadcast-campaign-3:10] BackgroundDetect(“Local/04221832888@from-internal-0000001f;1”, “silence-30,1000,50,30050”) in new stack
[2014-05-27 16:58:42] VERBOSE[3657][C-00000021] file.c: – <Local/04221832888@from-internal-0000001f;1> Playing ‘silence-30.gsm’ (language ‘en’)
[2014-05-27 16:59:12] VERBOSE[3657][C-00000021] pbx.c: – Executing [s@broadcast-campaign-3:11] NoOp(“Local/04221832888@from-internal-0000001f;1”, “too long of a message”) in new stack
[2014-05-27 16:59:12] VERBOSE[3657][C-00000021] pbx.c: – Executing [s@broadcast-campaign-3:12] Hangup(“Local/04221832888@from-internal-0000001f;1”, “”) in new stack
[2014-05-27 16:59:12] VERBOSE[3657][C-00000021] pbx.c: == Spawn extension (broadcast-campaign-3, s, 12) exited non-zero on ‘Local/04221832888@from-internal-0000001f;1’
[2014-05-27 16:59:12] VERBOSE[3657][C-00000021] pbx.c: – Executing [h@broadcast-campaign-3:1] NoOp(“Local/04221832888@from-internal-0000001f;1”, “this is where we will put do-not-call”) in new stack
[2014-05-27 16:59:12] VERBOSE[3658][C-00000021] pbx.c: – Executing [h@macro-dialout-trunk:1] Macro(“Local/04221832888@from-internal-0000001f;2”, “hangupcall,”) in new stack
[2014-05-27 16:59:12] NOTICE[3657] pbx_spool.c: Call completed to Local/04221832888@from-internal/n
[2014-05-27 16:59:12] VERBOSE[3658][C-00000021] pbx.c: – Executing [s@macro-hangupcall:1] GotoIf(“Local/04221832888@from-internal-0000001f;2”, “1?theend”) in new stack
[2014-05-27 16:59:12] VERBOSE[3658][C-00000021] pbx.c: – Goto (macro-hangupcall,s,3)
[2014-05-27 16:59:12] VERBOSE[3658][C-00000021] pbx.c: – Executing [s@macro-hangupcall:3] ExecIf(“Local/04221832888@from-internal-0000001f;2”, “0?Set(CDR(recordingfile)=)”) in new stack
[2014-05-27 16:59:12] VERBOSE[3658][C-00000021] pbx.c: – Executing [s@macro-hangupcall:4] Hangup(“Local/04221832888@from-internal-0000001f;2”, “”) in new stack
[2014-05-27 16:59:12] VERBOSE[3658][C-00000021] app_macro.c: == Spawn extension (macro-hangupcall, s, 4) exited non-zero on ‘Local/04221832888@from-internal-0000001f;2’ in macro ‘hangupcall’
[2014-05-27 16:59:12] VERBOSE[3658][C-00000021] pbx.c: == Spawn extension (macro-dialout-trunk, h, 1) exited non-zero on ‘Local/04221832888@from-internal-0000001f;2’
[2014-05-27 16:59:12] VERBOSE[3658][C-00000021] app_macro.c: == Spawn extension (macro-dialout-trunk, s, 22) exited non-zero on ‘Local/04221832888@from-internal-0000001f;2’ in macro ‘dialout-trunk’
[2014-05-27 16:59:12] VERBOSE[3658][C-00000021] pbx.c: == Spawn extension (outbound-allroutes, 04221832888, 6) exited non-zero on ‘Local/04221832888@from-internal-0000001f;2’
[2014-05-27 17:00:35] VERBOSE[2099] asterisk.c: – Remote UNIX connection disconnected

It shows the call history but I don’t see the cause it cannot forward the call to right destination once the remote voice/pause combination has detected.

I do not blame the module as with another gateway it works OK
Just need a suggestion to understand what is wrong with cisco one (I’m investigating the messy cisco log too)
Thank you for any help.

Chris make sure you have “no vad” on each of the voice-ports in the Cisco

Just checked, voice-ports already had “no vad” command
Applying “no vad” to voip dial-peer made the trick !!!

It seems to work OK now, thanks for the tip…