1.1010.210.62-x86_64 - Call Recording

Hi,

I have installed the latest stable 64bit distro, and have setup the extensions. however i’m getting a problem when I make a call that is set to be recorded. The asterisk seems to crash. I am using YeaLink T38G Phones

Here is the log:

== Using SIP RTP TOS bits 184 == Using SIP RTP CoS mark 5 -- Executing [1002@from-internal:1] Set("SIP/1000-00000000", "__RINGTIMER=15") in new stack -- Executing [1002@from-internal:2] Macro("SIP/1000-00000000", "exten-vm,novm,1002,0,0,0") in new stack -- Executing [s@macro-exten-vm:1] Macro("SIP/1000-00000000", "user-callerid,") in new stack -- Executing [s@macro-user-callerid:1] Set("SIP/1000-00000000", "AMPUSER=1000") in new stack -- Executing [s@macro-user-callerid:2] GotoIf("SIP/1000-00000000", "0?report") in new stack -- Executing [s@macro-user-callerid:3] ExecIf("SIP/1000-00000000", "1?Set(REALCALLERIDNUM=1000)") in new stack -- Executing [s@macro-user-callerid:4] Set("SIP/1000-00000000", "AMPUSER=1000") in new stack -- Executing [s@macro-user-callerid:5] Set("SIP/1000-00000000", "AMPUSERCIDNAME=1000") in new stack -- Executing [s@macro-user-callerid:6] GotoIf("SIP/1000-00000000", "0?report") in new stack -- Executing [s@macro-user-callerid:7] Set("SIP/1000-00000000", "AMPUSERCID=1000") in new stack -- Executing [s@macro-user-callerid:8] Set("SIP/1000-00000000", "CALLERID(all)="1000" <1000>") in new stack -- Executing [s@macro-user-callerid:9] GotoIf("SIP/1000-00000000", "0?limit") in new stack -- Executing [s@macro-user-callerid:10] ExecIf("SIP/1000-00000000", "0?Set(GROUP(concurrency_limit)=1000)") in new stack -- Executing [s@macro-user-callerid:11] ExecIf("SIP/1000-00000000", "0?Set(CHANNEL(language)=)") in new stack -- Executing [s@macro-user-callerid:12] GosubIf("SIP/1000-00000000", "7?sub-ccss,s,1(macro-exten-vm,1002)") in new stack -- Executing [s@sub-ccss:1] ExecIf("SIP/1000-00000000", "0?Return()") in new stack -- Executing [s@sub-ccss:2] Set("SIP/1000-00000000", "CCSS_SETUP=TRUE") in new stack -- Executing [s@sub-ccss:3] GosubIf("SIP/1000-00000000", "0?monitor_config,1(macro-exten-vm,1002):monitor_default,1(macro-exten-vm,1002)") in new stack -- Executing [monitor_default@sub-ccss:1] GotoIf("SIP/1000-00000000", "1?is_exten") in new stack -- Goto (sub-ccss,monitor_default,4) -- Executing [monitor_default@sub-ccss:4] Set("SIP/1000-00000000", "CALLCOMPLETION(cc_monitor_policy)=generic") in new stack -- Executing [monitor_default@sub-ccss:5] Set("SIP/1000-00000000", "CALLCOMPLETION(cc_max_monitors)=5") in new stack -- Executing [monitor_default@sub-ccss:6] Return("SIP/1000-00000000", "TRUE") in new stack -- Executing [s@sub-ccss:4] GosubIf("SIP/1000-00000000", "7?agent_config,1():agent_default,1()") in new stack -- Executing [agent_config@sub-ccss:1] Set("SIP/1000-00000000", "CALLCOMPLETION(cc_agent_policy)=generic") in new stack -- Executing [agent_config@sub-ccss:2] Set("SIP/1000-00000000", "CALLCOMPLETION(cc_offer_timer)=30") in new stack -- Executing [agent_config@sub-ccss:3] Set("SIP/1000-00000000", "CALLCOMPLETION(ccbs_available_timer)=") in new stack [2012-11-16 14:44:36] WARNING[3922]: ccss.c:940 ast_set_ccbs_available_timer: 0 is an invalid value for ccbs_available_timer. Retaining value as 4800 -- Executing [agent_config@sub-ccss:4] Set("SIP/1000-00000000", "CALLCOMPLETION(ccnr_available_timer)=") in new stack [2012-11-16 14:44:36] WARNING[3922]: ccss.c:910 ast_set_ccnr_available_timer: 0 is an invalid value for ccnr_available_timer. Retaining value as 7200 -- Executing [agent_config@sub-ccss:5] Set("SIP/1000-00000000", "CALLCOMPLETION(cc_callback_macro)=ccss-default") in new stack -- Executing [agent_config@sub-ccss:6] ExecIf("SIP/1000-00000000", "1?Set(CALLCOMPLETION(cc_recall_timer)=)") in new stack [2012-11-16 14:44:36] WARNING[3922]: ccss.c:925 ast_set_cc_recall_timer: 0 is an invalid value for ccnr_available_timer. Retaining value as 20 -- Executing [agent_config@sub-ccss:7] ExecIf("SIP/1000-00000000", "1?Set(CALLCOMPLETION(cc_max_agents)=)") in new stack -- Executing [agent_config@sub-ccss:8] ExecIf("SIP/1000-00000000", "0?Set(CALLCOMPLETION(cc_agent_dialstring)=Local/1000_1002@from-ccss-)") in new stack -- Executing [agent_config@sub-ccss:9] Set("SIP/1000-00000000", "CALLCOMPLETION(cc_callback_macro)=ccss-default") in new stack -- Executing [agent_config@sub-ccss:10] Return("SIP/1000-00000000", "") in new stack -- Executing [s@sub-ccss:5] Set("SIP/1000-00000000", "DB(AMPUSER/1000/ccss/last_number)=1002") in new stack -- Executing [s@sub-ccss:6] Return("SIP/1000-00000000", "") in new stack -- Executing [s@macro-user-callerid:13] GotoIf("SIP/1000-00000000", "0?continue") in new stack -- Executing [s@macro-user-callerid:14] Set("SIP/1000-00000000", "__TTL=64") in new stack -- Executing [s@macro-user-callerid:15] GotoIf("SIP/1000-00000000", "1?continue") in new stack -- Goto (macro-user-callerid,s,26) -- Executing [s@macro-user-callerid:26] Set("SIP/1000-00000000", "CALLERID(number)=1000") in new stack -- Executing [s@macro-user-callerid:27] Set("SIP/1000-00000000", "CALLERID(name)=1000") in new stack -- Executing [s@macro-user-callerid:28] Set("SIP/1000-00000000", "CHANNEL(language)=en") in new stack -- Executing [s@macro-exten-vm:2] Set("SIP/1000-00000000", "RingGroupMethod=none") in new stack -- Executing [s@macro-exten-vm:3] Set("SIP/1000-00000000", "__EXTTOCALL=1002") in new stack -- Executing [s@macro-exten-vm:4] Set("SIP/1000-00000000", "__PICKUPMARK=1002") in new stack -- Executing [s@macro-exten-vm:5] Set("SIP/1000-00000000", "RT=") in new stack -- Executing [s@macro-exten-vm:6] Gosub("SIP/1000-00000000", "sub-record-check,s,1(exten,1002,)") in new stack -- Executing [s@sub-record-check:1] GotoIf("SIP/1000-00000000", "1?check") in new stack -- Goto (sub-record-check,s,6) -- Executing [s@sub-record-check:6] Set("SIP/1000-00000000", "__MON_FMT=wav") in new stack -- Executing [s@sub-record-check:7] GotoIf("SIP/1000-00000000", "1?next") in new stack -- Goto (sub-record-check,s,10) -- Executing [s@sub-record-check:10] ExecIf("SIP/1000-00000000", "0?Return()") in new stack -- Executing [s@sub-record-check:11] GotoIf("SIP/1000-00000000", "0?exten,1") in new stack -- Executing [s@sub-record-check:12] Set("SIP/1000-00000000", "__REC_STATUS=INITIALIZED") in new stack -- Executing [s@sub-record-check:13] ExecIf("SIP/1000-00000000", "0?Set(__REC_POLICY_MODE=)") in new stack -- Executing [s@sub-record-check:14] Set("SIP/1000-00000000", "NOW=1353077076") in new stack -- Executing [s@sub-record-check:15] Set("SIP/1000-00000000", "__DAY=16") in new stack -- Executing [s@sub-record-check:16] Set("SIP/1000-00000000", "__MONTH=11") in new stack -- Executing [s@sub-record-check:17] Set("SIP/1000-00000000", "__YEAR=2012") in new stack -- Executing [s@sub-record-check:18] Set("SIP/1000-00000000", "__TIMESTR=20121116-144436") in new stack -- Executing [s@sub-record-check:19] Set("SIP/1000-00000000", "__FROMEXTEN=1000") in new stack -- Executing [s@sub-record-check:20] Set("SIP/1000-00000000", "__CALLFILENAME=exten-1002-1000-20121116-144436-1353077076.0") in new stack -- Executing [s@sub-record-check:21] Goto("SIP/1000-00000000", "exten,1") in new stack -- Goto (sub-record-check,exten,1) -- Executing [exten@sub-record-check:1] GotoIf("SIP/1000-00000000", "0?callee") in new stack -- Executing [exten@sub-record-check:2] Set("SIP/1000-00000000", "__REC_POLICY_MODE=always") in new stack -- Executing [exten@sub-record-check:3] GotoIf("SIP/1000-00000000", "0?caller") in new stack -- Executing [exten@sub-record-check:4] GotoIf("SIP/1000-00000000", "0?callee") in new stack -- Executing [exten@sub-record-check:5] ExecIf("SIP/1000-00000000", "2?Set(CALLER_PRI=10):Set(CALLER_PRI=0)") in new stack -- Executing [exten@sub-record-check:6] ExecIf("SIP/1000-00000000", "2?Set(CALLEE_PRI=10):Set(CALLEE_PRI=0)") in new stack -- Executing [exten@sub-record-check:7] GotoIf("SIP/1000-00000000", "1?caller:callee") in new stack -- Goto (sub-record-check,exten,10) -- Executing [exten@sub-record-check:10] Set("SIP/1000-00000000", "REC_POLICY_MODE=always") in new stack -- Executing [exten@sub-record-check:11] GosubIf("SIP/1000-00000000", "1?record,1(exten,1002,1000)") in new stack -- Executing [record@sub-record-check:1] Set("SIP/1000-00000000", "AUDIOHOOK_INHERIT(MixMonitor)=yes") in new stack -- Executing [record@sub-record-check:2] MixMonitor("SIP/1000-00000000", "2012/11/16/exten-1002-1000-20121116-144436-1353077076.0.wav,,") in new stack ws007*CLI> Disconnected from Asterisk server Executing last minute cleanups

Any ideas?

Further Info:

On the console it reads about 1696 Segmentation Fault

Looks like a Asterisk issue. I suggest getting asterisk back traces setup so you can get a proper core dump and submit a ticket to Asterisk on this.

I will do that.

I have just installed a 1.11xx Beta… and it works as expected. “odd”.

I’m seeing the same issue with my install running Asterisk 10.10.0. Do you happen to have the Asterisk ticket number for the issue so I’d be able to see if/when they resolve it?

In the meantime, would it be possibly for someone point me to instructions for upgrading Asterisk to version 11 without reinstalling the distro from scratch?

There is no upgrade path to that Distro yet as it is Beta. Once Asterisk 11 and Centos 6.3 prove stable to the Beta users we will kill the 1.10xx.210.62 track and provide a update script to the 1.11xx.211.63 track.

In the end I didnt submit a ticket as the system was a new install for production. If i get time this week i will setup another 10.10 asterisk and log a bug ticket. However feel free to log one yourself.

I ended up reinstalling as I needed a system working so I went with the beta to get me going. So far so good, a few issues with DAHDI and a 32bit dependancy but was fixed easy enough.

Hi Tony,
I’ve submitted a ticket with Digium here: https://issues.asterisk.org/jira/browse/ASTERISK-20705 . They’re looking for a backtrace of the crash to help in diagnosing

I’m wondering if you could assist me in how to get a backtrace out of the distro. Since it’s already compiled, I’m not sure if backtrace is enabled already, or if I need to re-compile asterisk… the instructions that they’ve linked to are assuming a level of familiarity with Asterisk and CentOS that I don’t really have at this point…

Thanks,
Gord

The problem appears to be in the RPMs shipped as part of the FreePBX distro rather than the Asterisk code itself.

Recompiling the code without optimizations doesn’t seem to exhibit the same behaviour.

Neither do the Asterisk11 rpms (with FreePBX 2.11 beta)

It seems to be specific to the current asterisk10 x64 rpms which are installed by default with the FreePBX iso … not an asterisk bug so Digium/asterisk.org won’t be able to help.

We are seeing this problem as well. FreePBX 1.1010.210.62-3, Asterisk 10.10
[root@pbx-golden Default_backup]# rpm -qi asterisk10-core
Name : asterisk10-core Relocations: (not relocatable)
Version : 10.10.0 Vendor: Schmooze Com, Inc.
Release : 67_centos6 Build Date: Wed 21 Nov 2012 03:18:03 PM MST
Install Date: Tue 04 Dec 2012 10:08:27 AM MST Build Host: jenkins6.schmoozecom.net
Group : Utilities/System Source RPM: asterisk10-10.10.0-67_centos6.src.rpm
Size : 9263036 License: GPL
Signature : (none)
Packager : Bryan Walters [email protected]
URL : http://www.asterisk.org
Summary : Asterisk core package without any “extras”.
Description :
This package contains a base install of Asterisk without any “extras”.

Is there a way to try another version of asterisk via RPM without re-installing? I realize that this thread is old too btw :slight_smile:

Maybe we could get the SRPM that is used to create the RPM above and try compiling that specific code with the options to allow for better backtraces, but if its already fixed in a newer asterisk (self compiled from the bug below), then maybe we can just get an updated Asterisk 10 RPM?

BUG: https://issues.asterisk.org/jira/browse/ASTERISK-20705

~tommy

You need to upgrade to the latest Distro.

We applied a patch in the latest Distro to fix this bug in Asterisk 10 Digium Phone branch. Digium has not put a fix in there version yet.