Asterisk 11.3.0, confbridge bombing after pin entry

Hi all,

I had conferences working with confbridge (on FPBX2.10 with Asterisk 1.8), and after upgrading both FreePBX (to 2.11rc1.7 - as this claims support for Asterisk 11.x) and Asterisk, I find everything in good working order with the exception of conferences. The confbridge module is built and installed and functions to a degree - I can call the conference room and if I enter an incorrect pin I’m told so, as expected, but if I enter a correct pin it hangs up.

I’ve pasted a trace below - any ideas? (I’ve been assured by the FreePBX guys that this is an Asterisk issue) - it seems to suggest that it thinks that the conference room is already full; although there’s more mention of meetme than I’m comfortable with - I’ve no meetme installed at all, as the platform I’m running on cannot run Dahdi (easily) - either way, I’ve FreePBX set to use confbridge by default.

I can of course also provide any configuration files if required.

Connected to Asterisk 11.3.0 currently running on rpi-pbx (pid = 2611)
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
– Executing [01235xxxxxx@from-trunk:1] Set(“SIP/Sipgate-0000000e”, “__FROM_DID=01235xxxxxx”) in new stack
– Executing [01235xxxxxx@from-trunk:2] Gosub(“SIP/Sipgate-0000000e”, “app-blacklist-check,s,1()”) in new stack
– Executing [s@app-blacklist-check:1] GotoIf(“SIP/Sipgate-0000000e”, “0?check-blocked”) in new stack
– Executing [s@app-blacklist-check:2] GotoIf(“SIP/Sipgate-0000000e”, “0?check-blocked”) in new stack
– Executing [s@app-blacklist-check:3] GotoIf(“SIP/Sipgate-0000000e”, “0?check-blocked:check”) in new stack
– Goto (app-blacklist-check,s,5)
– Executing [s@app-blacklist-check:5] GotoIf(“SIP/Sipgate-0000000e”, “0?blacklisted”) in new stack
– Executing [s@app-blacklist-check:6] Set(“SIP/Sipgate-0000000e”, “CALLED_BLACKLIST=1”) in new stack
– Executing [s@app-blacklist-check:7] Return(“SIP/Sipgate-0000000e”, “”) in new stack
– Executing [01235xxxxxx@from-trunk:3] Set(“SIP/Sipgate-0000000e”, “CDR(did)=01235xxxxxx”) in new stack
– Executing [01235xxxxxx@from-trunk:4] Gosub(“SIP/Sipgate-0000000e”, “cidlookup,cidlookup_1,1()”) in new stack
– Executing [cidlookup_1@cidlookup:1] ExecIf(“SIP/Sipgate-0000000e”, “1?Set(CALLERID(name)=Colin (Mobile))”) in new stack
– Executing [cidlookup_1@cidlookup:2] Return(“SIP/Sipgate-0000000e”, “”) in new stack
– Executing [01235xxxxxx@from-trunk:5] ExecIf(“SIP/Sipgate-0000000e”, “0 ?Set(CALLERID(name)=07554xxxxxx)”) in new stack
– Executing [01235xxxxxx@from-trunk:6] Macro(“SIP/Sipgate-0000000e”, “privacy-mgr,3,10”) in new stack
– Executing [s@macro-privacy-mgr:1] Set(“SIP/Sipgate-0000000e”, “KEEPCID=07554xxxxxx”) in new stack
– Executing [s@macro-privacy-mgr:2] Set(“SIP/Sipgate-0000000e”, “TESTCID=7554441439.000000”) in new stack
– Executing [s@macro-privacy-mgr:3] ExecIf(“SIP/Sipgate-0000000e”, “0?Set(CALLERID(num)=)”) in new stack
– Executing [s@macro-privacy-mgr:4] PrivacyManager(“SIP/Sipgate-0000000e”, “3,10”) in new stack
– CallerID number present: Skipping
– Executing [s@macro-privacy-mgr:5] GotoIf(“SIP/Sipgate-0000000e”, “0?fail”) in new stack
– Executing [s@macro-privacy-mgr:6] GosubIf(“SIP/Sipgate-0000000e”, “1?app-blacklist-check,s,1()”) in new stack
– Executing [s@app-blacklist-check:1] GotoIf(“SIP/Sipgate-0000000e”, “0?check-blocked”) in new stack
– Executing [s@app-blacklist-check:2] GotoIf(“SIP/Sipgate-0000000e”, “0?check-blocked”) in new stack
– Executing [s@app-blacklist-check:3] GotoIf(“SIP/Sipgate-0000000e”, “0?check-blocked:check”) in new stack
– Goto (app-blacklist-check,s,5)
– Executing [s@app-blacklist-check:5] GotoIf(“SIP/Sipgate-0000000e”, “0?blacklisted”) in new stack
– Executing [s@app-blacklist-check:6] Set(“SIP/Sipgate-0000000e”, “CALLED_BLACKLIST=1”) in new stack
– Executing [s@app-blacklist-check:7] Return(“SIP/Sipgate-0000000e”, “”) in new stack
– Executing [s@macro-privacy-mgr:7] Set(“SIP/Sipgate-0000000e”, “CALLERID(num-pres)=allowed_passed_screen”) in new stack
– Executing [s@macro-privacy-mgr:8] MacroExit(“SIP/Sipgate-0000000e”, “”) in new stack
– Executing [01235xxxxxx@from-trunk:7] Goto(“SIP/Sipgate-0000000e”, “ext-meetme,400,1”) in new stack
– Goto (ext-meetme,400,1)
– Executing [400@ext-meetme:1] Macro(“SIP/Sipgate-0000000e”, “user-callerid,”) in new stack
– Executing [s@macro-user-callerid:1] Set(“SIP/Sipgate-0000000e”, “TOUCH_MONITOR=1367166905.14”) in new stack
– Executing [s@macro-user-callerid:2] Set(“SIP/Sipgate-0000000e”, “AMPUSER=07554xxxxxx”) in new stack
– Executing [s@macro-user-callerid:3] GotoIf(“SIP/Sipgate-0000000e”, “0?report”) in new stack
– Executing [s@macro-user-callerid:4] ExecIf(“SIP/Sipgate-0000000e”, “1?Set(REALCALLERIDNUM=07554xxxxxx)”) in new stack
– Executing [s@macro-user-callerid:5] Set(“SIP/Sipgate-0000000e”, “AMPUSER=”) in new stack
– Executing [s@macro-user-callerid:6] Set(“SIP/Sipgate-0000000e”, “AMPUSERCIDNAME=”) in new stack
– Executing [s@macro-user-callerid:7] GotoIf(“SIP/Sipgate-0000000e”, “1?report”) in new stack
– Goto (macro-user-callerid,s,13)
– Executing [s@macro-user-callerid:13] GotoIf(“SIP/Sipgate-0000000e”, “0?continue”) in new stack
– Executing [s@macro-user-callerid:14] Set(“SIP/Sipgate-0000000e”, “__TTL=64”) in new stack
– Executing [s@macro-user-callerid:15] GotoIf(“SIP/Sipgate-0000000e”, “1?continue”) in new stack
– Goto (macro-user-callerid,s,26)
– Executing [s@macro-user-callerid:26] Set(“SIP/Sipgate-0000000e”, “CALLERID(number)=07554xxxxxx”) in new stack
– Executing [s@macro-user-callerid:27] Set(“SIP/Sipgate-0000000e”, “CALLERID(name)=Colin (Mobile)”) in new stack
– Executing [s@macro-user-callerid:28] Set(“SIP/Sipgate-0000000e”, “CDR(cnum)=07554xxxxxx”) in new stack
– Executing [s@macro-user-callerid:29] Set(“SIP/Sipgate-0000000e”, “CDR(cnam)=Colin (Mobile)”) in new stack
– Executing [s@macro-user-callerid:30] Set(“SIP/Sipgate-0000000e”, “CHANNEL(language)=en”) in new stack
– Executing [400@ext-meetme:2] Set(“SIP/Sipgate-0000000e”, “MEETME_ROOMNUM=400”) in new stack
– Executing [400@ext-meetme:3] Set(“SIP/Sipgate-0000000e”, “MAX_PARTICIPANTS=10”) in new stack
– Executing [400@ext-meetme:4] Set(“SIP/Sipgate-0000000e”, “MEETME_MUSIC=default”) in new stack
– Executing [400@ext-meetme:5] Gosub(“SIP/Sipgate-0000000e”, “sub-record-check,s,1(conf,400,never)”) in new stack
– Executing [s@sub-record-check:1] Set(“SIP/Sipgate-0000000e”, “REC_POLICY_MODE_SAVE=”) in new stack
– Executing [s@sub-record-check:2] GotoIf(“SIP/Sipgate-0000000e”, “1?check”) in new stack
– Goto (sub-record-check,s,7)
– Executing [s@sub-record-check:7] Set(“SIP/Sipgate-0000000e”, “__MON_FMT=wav”) in new stack
– Executing [s@sub-record-check:8] GotoIf(“SIP/Sipgate-0000000e”, “1?next”) in new stack
– Goto (sub-record-check,s,11)
– Executing [s@sub-record-check:11] ExecIf(“SIP/Sipgate-0000000e”, “0?Return()”) in new stack
– Executing [s@sub-record-check:12] ExecIf(“SIP/Sipgate-0000000e”, “1?Set(__REC_POLICY_MODE=never)”) in new stack
– Executing [s@sub-record-check:13] GotoIf(“SIP/Sipgate-0000000e”, “0?conf,1”) in new stack
– Executing [s@sub-record-check:14] Set(“SIP/Sipgate-0000000e”, “__REC_STATUS=INITIALIZED”) in new stack
– Executing [s@sub-record-check:15] Set(“SIP/Sipgate-0000000e”, “NOW=1367166905”) in new stack
– Executing [s@sub-record-check:16] Set(“SIP/Sipgate-0000000e”, “__DAY=28”) in new stack
– Executing [s@sub-record-check:17] Set(“SIP/Sipgate-0000000e”, “__MONTH=04”) in new stack
– Executing [s@sub-record-check:18] Set(“SIP/Sipgate-0000000e”, “__YEAR=2013”) in new stack
– Executing [s@sub-record-check:19] Set(“SIP/Sipgate-0000000e”, “__TIMESTR=20130428-173505”) in new stack
– Executing [s@sub-record-check:20] Set(“SIP/Sipgate-0000000e”, “__FROMEXTEN=07554xxxxxx”) in new stack
– Executing [s@sub-record-check:21] Set(“SIP/Sipgate-0000000e”, “__CALLFILENAME=conf-400-07554xxxxxx-20130428-173505-1367166905.14”) in new stack
– Executing [s@sub-record-check:22] Goto(“SIP/Sipgate-0000000e”, “conf,1”) in new stack
– Goto (sub-record-check,conf,1)
– Executing [conf@sub-record-check:1] Gosub(“SIP/Sipgate-0000000e”, “recconf,1(conf,400,400)”) in new stack
– Executing [recconf@sub-record-check:1] Set(“SIP/Sipgate-0000000e”, “__CALLFILENAME=”) in new stack
– Executing [recconf@sub-record-check:2] ExecIf(“SIP/Sipgate-0000000e”, “0?Set(DB(RECCONF/400)=)”) in new stack
– Executing [recconf@sub-record-check:3] Set(“SIP/Sipgate-0000000e”, “CONFBRIDGE(bridge,record_file)=2013/04/28/.wav”) in new stack
– Executing [recconf@sub-record-check:4] ExecIf(“SIP/Sipgate-0000000e”, “1?Return()”) in new stack
– Executing [conf@sub-record-check:2] Return(“SIP/Sipgate-0000000e”, “”) in new stack
– Executing [400@ext-meetme:6] GotoIf(“SIP/Sipgate-0000000e”, “0?READPIN”) in new stack
– Executing [400@ext-meetme:7] Answer(“SIP/Sipgate-0000000e”, “”) in new stack
– Executing [400@ext-meetme:8] Wait(“SIP/Sipgate-0000000e”, “1”) in new stack
– Executing [400@ext-meetme:9] Set(“SIP/Sipgate-0000000e”, “PINCOUNT=0”) in new stack
– Executing [400@ext-meetme:10] Read(“SIP/Sipgate-0000000e”, “PIN,enter-conf-pin-number,”) in new stack
– Playing ‘enter-conf-pin-number.slin’ (language ‘en’)
– User entered ‘1234’
– Executing [400@ext-meetme:11] GotoIf(“SIP/Sipgate-0000000e”, “1?USER”) in new stack
– Goto (ext-meetme,400,24)
– Executing [400@ext-meetme:24] NoOp(“SIP/Sipgate-0000000e”, “User Options:”) in new stack
– Executing [400@ext-meetme:25] Set(“SIP/Sipgate-0000000e”, “CONFBRIDGE(user,wait_marked)=yes”) in new stack
– Executing [400@ext-meetme:26] Set(“SIP/Sipgate-0000000e”, “CONFBRIDGE(user,end_marked)=yes”) in new stack
– Executing [400@ext-meetme:27] Set(“SIP/Sipgate-0000000e”, “CONFBRIDGE(user,announce_user_count)=yes”) in new stack
– Executing [400@ext-meetme:28] Set(“SIP/Sipgate-0000000e”, “CONFBRIDGE(user,announce_join_leave)=yes”) in new stack
– Executing [400@ext-meetme:29] Set(“SIP/Sipgate-0000000e”, “CONFBRIDGE(user,music_on_hold_when_empty)=yes”) in new stack
– Executing [400@ext-meetme:30] Set(“SIP/Sipgate-0000000e”, “MENU_PROFILE=user_menu”) in new stack
– Executing [400@ext-meetme:31] Goto(“SIP/Sipgate-0000000e”, “STARTMEETME,1”) in new stack
– Goto (ext-meetme,STARTMEETME,1)
– Executing [STARTMEETME@ext-meetme:1] ExecIf(“SIP/Sipgate-0000000e”, “1?Set(CONFBRIDGE(user,music_on_hold_class)=default)”) in new stack
– Executing [STARTMEETME@ext-meetme:2] Set(“SIP/Sipgate-0000000e”, “GROUP(meetme)=400”) in new stack
– Executing [STARTMEETME@ext-meetme:3] GotoIf(“SIP/Sipgate-0000000e”, “0?MEETMEFULL,1”) in new stack
== Spawn extension (ext-meetme, STARTMEETME, 4) exited non-zero on ‘SIP/Sipgate-0000000e’
– Executing [h@ext-meetme:1] Hangup(“SIP/Sipgate-0000000e”, “”) in new stack
== Spawn extension (ext-meetme, h, 1) exited non-zero on ‘SIP/Sipgate-0000000e’

Best,

Colin

This looks like a problem with the dialplan, not with Asterisk. You need to contact the person who wrote the diaplan, or provide a copy of the diaplan.

The complexity suggests this may be an Asterisk GUI. These generally have their own support web sites.

Hi David,

I am using a GUI - FreePBX; and they’ve said that it’s a bug with Asterisk as everything was working before I went up to 11.3 - if I downgrade back to 1.8, conferences work fine again. I’m assuming that it’s the confbridge configurations you’re after:

confbridge.conf
#include confbridge_additional.conf
#include confbridge_custom.conf

confbridge_additional.conf
[general]
;This section reserved for future use

[default_user]
type = user

[default_bridge]
type = bridge

[admin_menu]
type = menu

  • = playback_and_continue(conf-adminmenu)
    *1 = toggle_mute
    1 = toggle_mute
    *2 = admin_toggle_conference_lock
    2 = admin_toggle_conference_lock
    *3 = admin_kick_last
    3 = admin_kick_last
    *4 = decrease_listening_volume
    4 = decrease_listening_volume
    *6 = increase_listening_volume
    6 = increase_listening_volume
    *7 = decrease_talking_volume
    7 = decrease_talking_volume
    *8 = no_op
    8 = no_op
    *9 = increase_talking_volume
    9 = increase_talking_volume

[user_menu]
type = menu

  • = playback_and_continue(conf-usermenu)
    *1 = toggle_mute
    1 = toggle_mute
    *4 = decrease_listening_volume
    4 = decrease_listening_volume
    *6 = increase_listening_volume
    6 = increase_listening_volume
    *7 = decrease_talking_volume
    7 = decrease_talking_volume
    *8 = leave_conference
    8 = leave_conference
    *9 = increase_talking_volume
    9 = increase_talking_volume

confbridge_custom.conf
[general]
mix_interval=20
mix_sample_rate=dynamic
denoise=yes

If there’s any other part of the dialplan you’d need to see, please let me know - I’ll report back to FreePBX with anything I learn here and vice-versa.

Best,

Colin

Go back to the FreePBX people and ask them to be specific about the nature of the bug they claim in Asterisk. Better still, ask them to raise a bug report themselves. Anyone else is going to have to reverse engineer their dialplan, first.