Problem hearing prompts

Hi Guys,

I have a problem, when I dial an invalid number - I hear nothing and then get hung up. the logs show that the system IS playing prompts but I cant hear them:

== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
– Executing [6632@from-internal:1] ResetCDR(“SIP/4155-000000e6”, “”) in new stack
– Executing [6632@from-internal:2] NoCDR(“SIP/4155-000000e6”, “”) in new stack
– Executing [6632@from-internal:3] Wait(“SIP/4155-000000e6”, “1”) in new stack
– Executing [6632@from-internal:4] Playback(“SIP/4155-000000e6”, “silence/1&cannot-complete-as-dialed&check-number-dial-again,n
oanswer”) in new stack
– <SIP/4155-000000e6> Playing ‘silence/1.slin’ (language ‘en’)
– <SIP/4155-000000e6> Playing ‘cannot-complete-as-dialed.ulaw’ (language ‘en’)
– <SIP/4155-000000e6> Playing ‘check-number-dial-again.ulaw’ (language ‘en’)
– Executing [6632@from-internal:5] Wait(“SIP/4155-000000e6”, “1”) in new stack
– Executing [6632@from-internal:6] Congestion(“SIP/4155-000000e6”, “20”) in new stack
== Spawn extension (from-internal, 6632, 6) exited non-zero on ‘SIP/4155-000000e6’
– Executing [h@from-internal:1] Macro(“SIP/4155-000000e6”, “hangupcall”) in new stack
– Executing [s@macro-hangupcall:1] GotoIf(“SIP/4155-000000e6”, “1?skiprg”) in new stack
– Goto (macro-hangupcall,s,4)
– Executing [s@macro-hangupcall:4] GotoIf(“SIP/4155-000000e6”, “1?skipblkvm”) in new stack
– Goto (macro-hangupcall,s,7)
– Executing [s@macro-hangupcall:7] GotoIf(“SIP/4155-000000e6”, “1?theend”) in new stack
– Goto (macro-hangupcall,s,9)
– Executing [s@macro-hangupcall:9] Hangup(“SIP/4155-000000e6”, “”) in new stack
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on ‘SIP/4155-000000e6’ in macro ‘hangupcall’
== Spawn extension (from-internal, h, 1) exited non-zero on ‘SIP/4155-000000e6’

I checked if the file exists and it does:

[root@spbx en]# pwd
/var/lib/asterisk/sounds/en
[root@spbx en]# ls -l cannot-complete-as-dialed*
-rw-rw-r-- 1 asterisk asterisk 20800 Dec 26 10:01 cannot-complete-as-dialed.alaw
-rw-rw-r-- 1 asterisk asterisk 20800 Dec 26 10:02 cannot-complete-as-dialed.g722
-r–rw-r-- 1 asterisk asterisk 2600 Dec 26 10:02 cannot-complete-as-dialed.g729
-rw-rw-r-- 1 asterisk asterisk 4290 Dec 26 10:01 cannot-complete-as-dialed.gsm
-r–rw-r-- 1 asterisk asterisk 15600 Dec 26 10:04 cannot-complete-as-dialed.siren14
-r–rw-r-- 1 asterisk asterisk 10400 Dec 26 10:03 cannot-complete-as-dialed.siren7
-rw-rw-r-- 1 asterisk asterisk 83200 Dec 26 10:03 cannot-complete-as-dialed.sln16
-rw-rw-r-- 1 asterisk asterisk 20800 Dec 26 10:00 cannot-complete-as-dialed.ulaw
-rw-rw-r-- 1 asterisk asterisk 41644 Dec 26 10:00 cannot-complete-as-dialed.wav

In a different scenario though, I hear system prompts no problem. (voicemail, IVR menu and conferencing as the example below…)

== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
– Executing [4444@from-internal:1] Macro(“SIP/4155-000000e9”, “user-callerid,”) in new stack
– Executing [s@macro-user-callerid:1] Set(“SIP/4155-000000e9”, “AMPUSER=4155”) in new stack
– Executing [s@macro-user-callerid:2] GotoIf(“SIP/4155-000000e9”, “0?report”) in new stack
– Executing [s@macro-user-callerid:3] ExecIf(“SIP/4155-000000e9”, “1?Set(REALCALLERIDNUM=4155)”) in new stack
– Executing [s@macro-user-callerid:4] Set(“SIP/4155-000000e9”, “AMPUSER=4155”) in new stack
– Executing [s@macro-user-callerid:5] Set(“SIP/4155-000000e9”, “AMPUSERCIDNAME=Ori Aldubi (H)”) in new stack
– Executing [s@macro-user-callerid:6] GotoIf(“SIP/4155-000000e9”, “0?report”) in new stack
– Executing [s@macro-user-callerid:7] Set(“SIP/4155-000000e9”, “AMPUSERCID=4155”) in new stack
– Executing [s@macro-user-callerid:8] Set(“SIP/4155-000000e9”, “CALLERID(all)=“Ori Aldubi (H)” <4155>”) in new stack
– Executing [s@macro-user-callerid:9] GotoIf(“SIP/4155-000000e9”, “0?continue”) in new stack
– Executing [s@macro-user-callerid:10] Set(“SIP/4155-000000e9”, “__TTL=64”) in new stack
– Executing [s@macro-user-callerid:11] GotoIf(“SIP/4155-000000e9”, “1?continue”) in new stack
– Goto (macro-user-callerid,s,18)
– Executing [s@macro-user-callerid:18] NoOp(“SIP/4155-000000e9”, “Using CallerID “Ori Aldubi (H)” <4155>”) in new stack
– Executing [4444@from-internal:2] Set(“SIP/4155-000000e9”, “MEETME_ROOMNUM=4444”) in new stack
– Executing [4444@from-internal:3] GotoIf(“SIP/4155-000000e9”, “0?READPIN”) in new stack
– Executing [4444@from-internal:4] Answer(“SIP/4155-000000e9”, “”) in new stack
– Executing [4444@from-internal:5] Wait(“SIP/4155-000000e9”, “1”) in new stack
– Executing [4444@from-internal:6] Set(“SIP/4155-000000e9”, “PINCOUNT=0”) in new stack
– Executing [4444@from-internal:7] Read(“SIP/4155-000000e9”, “PIN,enter-conf-pin-number,”) in new stack
– <SIP/4155-000000e9> Playing ‘enter-conf-pin-number.ulaw’ (language ‘en’)
– User disconnected
– Executing [h@from-internal:1] Macro(“SIP/4155-000000e9”, “hangupcall”) in new stack
– Executing [s@macro-hangupcall:1] GotoIf(“SIP/4155-000000e9”, “1?skiprg”) in new stack
– Goto (macro-hangupcall,s,4)
– Executing [s@macro-hangupcall:4] GotoIf(“SIP/4155-000000e9”, “1?skipblkvm”) in new stack
– Goto (macro-hangupcall,s,7)
– Executing [s@macro-hangupcall:7] GotoIf(“SIP/4155-000000e9”, “1?theend”) in new stack
– Goto (macro-hangupcall,s,9)
– Executing [s@macro-hangupcall:9] Hangup(“SIP/4155-000000e9”, “”) in new stack
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on ‘SIP/4155-000000e9’ in macro ‘hangupcall’
== Spawn extension (from-internal, h, 1) exited non-zero on ‘SIP/4155-000000e9’

I am running asterisk-1.6.2.1 with freepbx-2.6.0

Any ideas?

Thanks!

1 Like

I’m having similar issues.

Asterisk 1.6.2.0 built by portage @ v01 on a x86_64 running Linux on 2010-01-29 14:12:07 UTC

freepbx-2.7.0beta1

I can hear the *43 echo test ‘demo-test.gsm’ play back.

Hi all (and px),

I found that in extensions_additional.conf, the [bad-number] context is missing “Answer” so the system plays the prompts but did not open an RTP session so we hear nothing…

[bad-number]
include => bad-number-custom
exten => _X.,1,ResetCDR()
exten => _X.,n,NoCDR()
exten => _X.,n,Wait(1)
exten => _X.,n,Playback(silence/1&cannot-complete-as-dialed&check-number-dial-again,noanswer)
exten => _X.,n,Wait(1)
exten => _X.,n,Congestion(20)
exten => _X.,n,Hangup

I added “exten => _X.,n,Answer” after the NoCDR() row (see below). and viola! I hear the prompts. (I also changed the Congestion() from 20 to 1 - no point in letting it make that annoying noise for too long right?)

[bad-number]
include => bad-number-custom
exten => _X.,1,ResetCDR()
exten => _X.,n,NoCDR()
exten => _X.,n,Answer
exten => _X.,n,Wait(1)
exten => _X.,n,Playback(silence/1&cannot-complete-as-dialed&check-number-dial-again,noanswer)
exten => _X.,n,Wait(1)
exten => _X.,n,Congestion(1)
exten => _X.,n,Hangup

BUG? (I think so)

My audio issue seems to have turned out to be with the codecs I was allow/disallowing.

I tried your change with and without the Answer line, both work.

Doesn’t seem like a bug.

PX - For me the change is what made the difference. The way i figured it out was to listen to the PBX using wireshark. I compared it to other sessions that worked and noticed that in this case RTP session was not opened (which is what the Answer is suppose to do.) so I figured something in the dianplan was wrong.

HOWEVER, you are using the 2.7 beta and I am using the production 2.6.0.1 - that may be the difference (they may have fixed it in 2.7+ version).

Nah, the difference wouldn’t be the version of FreePBX. Maybe Asterisk just runs the configuration file differently, shrug. I’m was on 1.6.2.2 but just downgraded to 1.6.1.14. It doesn’t need the answer line.

[bad-number]
include => bad-number-custom
exten => _X.,1,ResetCDR()
exten => _X.,n,NoCDR()
exten => _X.,n,Wait(1)
exten => _X.,n,Playback(silence/1&cannot-complete-as-dialed&check-number-dial-again,noanswer)
exten => _X.,n,Wait(1)
exten => _X.,n,Congestion(20)
exten => _X.,n,Hangup

; end of [bad-number]

What I add exten => _X.,n,Answer I can hear the prompts. Problem is that any change in FreePBX will overwrite this fix. any ideas for how can I make it permanent?

THANKS!

#4273 fixes this

it has already been updated in 2.7 and 2.8.

Thanks! will upgrade and see what happens…

Hello,
in FreePBX version 2.9.0.2 (all modules updated) issue seems tobe back.
Added Andwer and it works.

Which script should be patched to have extensions_additional to be generated correctly ?