Can't dial in or out after last update yesterday

hi,

i’m using “FreePBX 2.9.0rc1.5” and “Asterisk 1.2.26.1 svn rev 79171”. both came with an “trixbox CE” install i made some time ago.

yesterday i made an update with the “module admin” in FreePBX and today i noticed i can not dial out nor dial in via a misdn chanel any more.

if i try to dial out to the number 0123 with twinkle as softphone i get a “603 Declined” in twinkle immediately and the asterisk CLI shows:

ERROR[13176]: pbx.c:1402 ast_func_read: Function MASTER_CHANNEL not registered
ERROR[13176]: pbx.c:1437 ast_func_write: Function CHANNEL not registered
WARNING[13176]: pbx.c:1720 pbx_extension_helper: No application 'VQA' for extension (from-internal, 0123, 2)
ERROR[13176]: pbx.c:1402 ast_func_read: Function MASTER_CHANNEL not registered
ERROR[13176]: pbx.c:1437 ast_func_write: Function CHANNEL not registered
WARNING[13176]: pbx.c:1720 pbx_extension_helper: No application 'VQA' for extension (from-internal, 0123, 2)

if i try to dial in from 0123 to the number 0456 i hear nothing in twinkle and the asterisk CLI shows

sip*CLI> P[ 1] I IND :SETUP oad:0123 dad:0456 pid:5 state:none
P[ 1]  --> channel:1 mode:TE cause:16 ocause:16 rad: cad:
P[ 1]  --> info_dad: onumplan:0 dnumplan:0 rnumplan:  cpnnumplan:0
P[ 1]  --> Bearer: Audio 3.1k
P[ 1]  --> Codec: Alaw
P[ 0]  --> * NEW CHANNEL dad:0456 oad:0123
P[ 1]  --> CTON: Unknown
P[ 1]  --> PRES: Restricted (0)
P[ 1]  --> SCREEN: Unscreened (0)
P[ 1] I SEND:PROCEEDING oad:0123 dad:0456 pid:5
P[ 1]  --> channel:1 mode:TE cause:16 ocause:16 rad: cad:
P[ 1]  --> info_dad: onumplan:0 dnumplan:0 rnumplan:  cpnnumplan:0
2011-05-02 12:39:29 WARNING[10151]: pbx.c:1720 pbx_extension_helper: No application 'VQA' for extension (from-trunk, 0456, 4)
P[ 1] * IND : HANGUP    pid:5 ctx:macro-hangupcall dad:s oad:0123 State:DIALING
P[ 1]  --> out_cause:16
P[ 1]  --> state:DIALING
P[ 1] I SEND:DISCONNECT oad:0123 dad:0456 pid:5
P[ 1]  --> channel:1 mode:TE cause:16 ocause:16 rad: cad:
P[ 1]  --> info_dad: onumplan:0 dnumplan:0 rnumplan:  cpnnumplan:0
P[ 1] I IND :SETUP oad:0123 dad:0456 pid:5 state:none
P[ 1]  --> channel:1 mode:TE cause:16 ocause:16 rad: cad:
P[ 1]  --> info_dad: onumplan:0 dnumplan:0 rnumplan:  cpnnumplan:0
P[ 1]  --> Bearer: Audio 3.1k
P[ 1]  --> Codec: Alaw
P[ 0]  --> * NEW CHANNEL dad:0456 oad:0123
P[ 1]  --> CTON: Unknown
P[ 1]  --> PRES: Restricted (0)
P[ 1]  --> SCREEN: Unscreened (0)
P[ 1] I SEND:PROCEEDING oad:0123 dad:0456 pid:5
P[ 1]  --> channel:1 mode:TE cause:16 ocause:16 rad: cad:
P[ 1]  --> info_dad: onumplan:0 dnumplan:0 rnumplan:  cpnnumplan:0
2011-05-02 12:39:29 WARNING[10151]: pbx.c:1720 pbx_extension_helper: No application 'VQA' for extension (from-trunk, 0456, 4)
P[ 1] * IND : HANGUP    pid:5 ctx:macro-hangupcall dad:s oad:0123 State:DIALING
P[ 1]  --> out_cause:16
P[ 1]  --> state:DIALING
P[ 1] I SEND:DISCONNECT oad:0123 dad:0456 pid:5
P[ 1]  --> channel:1 mode:TE cause:16 ocause:16 rad: cad:
P[ 1]  --> info_dad: onumplan:0 dnumplan:0 rnumplan:  cpnnumplan:0
sip*CLI> P[ 1] I IND :RELEASE oad:0123 dad:0456 pid:5 state:CLEANING
P[ 1]  --> channel:1 mode:TE cause:16 ocause:16 rad: cad:
P[ 1]  --> info_dad: onumplan:0 dnumplan:0 rnumplan:  cpnnumplan:0
P[ 1]  --> No need to queue hangup
P[ 1] Cannot hangup chan, no ast
P[ 1] I IND :RELEASE oad:0123 dad:0456 pid:5 state:CLEANING
P[ 1]  --> channel:1 mode:TE cause:16 ocause:16 rad: cad:
P[ 1]  --> info_dad: onumplan:0 dnumplan:0 rnumplan:  cpnnumplan:0
P[ 1]  --> No need to queue hangup
P[ 1] Cannot hangup chan, no ast
P[ 1] $$$ Cleaning up bc with stid :10010100 pid:5
P[ 1] $$$ Cleaning up bc with stid :10010100 pid:5

unfortunately i have no idea how to fix the problem.
please can you help me to get misdn up and running again?

thank you very much in advance.

Thank you for the valuable and helpful hints and the interesting discussion.

Done! Thanks for listening.

it’s not a module doing that, it’s in the core.

and no worries, no one is concerned abut bringing up issues (it’s never finger pointing…)

I’m just saying you are right we should say something, as this pertains to all of 2.9, not any single module. So it helps if you file a ticket because the forums have a 1/2 life of memory of roughly 5 minutes, where as the trac tickets is what we use to plan our work, features, fixes, changes etc. so if nothing is in there, we tend to forget that there was an issue, request, etc.

Yeah I guess we are guilty of that.

We specify in the project information (it’s in the Milestone) what release is supported but we are not providing any sort of notification or warning as to the issue since most things are still working in 1.2 and in general, we are not explicitly taking out code that is currently there to support 1.2. However, as new development happens we are not going out of our way to accommodate 1.2 as we will for 1.4, 1.6 and 1.8.

In this situation, it’s a case where the logic comes up with the wrong information for 1.2 on something that was newly added.

Feel free to file a ticket that we should at least be providing a warning in the notification panel and maybe in the version upgrade module and install_amp if 1.2 is present.

I wasn’t pointing fingers, but I should think that modules --in general-- should evaluate a min/max [ Asterisk | FreePBX | MySQL | whatever ] version before they’re allowed to be installed. Regardless of whether we’re talking about 1.2 or some future version. Just my $.02

Ah! Thank you. Yes, my Asterisk build is 1.2, and I must have accepted that Ditech module in the FreePBX 2.9RC update I applied.

I didn’t see any min version warnings or anything like that during the updates. Does the FreePBX project have a common method for evaluating the Asterisk version string and raising alerts to the Module Admin process? Just asking for future reference or if we ever build a module ourselves.

I do not believe Aserisk 1.2 is support anymore.

I do not believe that’s relevant. The absence of the PHP variable should have been good enough to ignore this module, but something seems to have confused that.

Since I haven’t heard any other issues coming, I have to suspect this is related to 1.2 which is not supported.

We check to see if VQA() is installed in the manager library with a command that looks like this:

[php]

<?php function app_exists($app) { $r = $this->command("core show application $app"); return (strpos($r['data'],"Your application(s) is (are) not registered") === false); } [/php] based on that we set the $amp_conf variable: AST_APP_VQA to true. In 1.2, this will result in looking like true because the command syntax will probably fail, thus inserting the VQA() app which will make Asterisk fail since the app is not there. This can still be disabled with the other settings being checked in both of those places: [php] <?php // if VQA present and configured call it if ($amp_conf['AST_APP_VQA'] && $amp_conf['DITECH_VQA_OUTBOUND']) { $ext->add($context, $exten, '', new ext_vqa($amp_conf['DITECH_VQA_OUTBOUND'])); } [/php] So if you go to the DITECH_VQA_OUTBOUND (and DITECH_VQA_INBOUND) settings in Advanced Settings in set the value to 0 then this will not be included into the dialplan either way. So bottom line, 1.2 is NOT supported for 2.9 and this is just once instance of such issues popping up. There is a workaround in the settings if you need to keep running that version for now but there's no guarantee that other issues won't crop up.

Me too. I had to comment out lines:

1275-1277 and
1929-1931 of

/var/www/html/admin/modules/core/functions.inc.php

…to get around this horrible blocking bug. You must reload your configs FROM THE WEB GUI, not just issue an amportal restart to make this work.