Bob Pierce
2011-Jun-27 17:21 UTC
[asterisk-users] Asterisk 1.8 Paging without DAHDI or MOH Shoutcast with DAHDI
We just finished an upgrade of our Asterisk system to an HA environment on a pair of servers using Linux-HA. As part of the upgrade, we also moved to Asterisk version 1.8.4.3 Most things are working quite nicely on the new system. However, I?m having trouble getting a paging feature to work. In Asterisk 1.4, we simply used the Page() application like this: 3400,n,Page(SIP/3011&SIP/3021&SIP/3110&SIP/3120&SIP/3121&SIP/3122&SIP/3124&SIP/3125&SIP/3126&SIP/3127&SIP/3221&SIP/3222&SIP/3223&SIP/3250&SIP/3261&SIP/3262&SIP/3310&SIP/3311&SIP/3324&SIP/3329&SIP/3331&SIP/3332&SIP/3350&SIP/3455&SIP/3457) However, the Page() application seems to rely on the Meetme() application which also relies on the DAHDI channel driver for mixing of the audio streams. I have tried using the DAHDI channel driver on this system, but that seems to make the Music On Hold application use the DAHDI timing module instead of the pthread module. With the DAHDI timing module, Music On Hold does not playback Shoutcast streams which is also a requirement for this system. As an alternate solution, we have tried implementing a workaround which simply uses a set of .call files to dial each phone. Those phones then auto-answer the call and are placed into a conference bridge on mute using the ConfBridge application. At this point, the initiating caller speaks the announcement and the phones automatically hangup after about 10 second. This worked perfectly in our small scale tests. However, when we ramped this up to the 25 phones that are required and tested it this morning, somehow this caused the Asterisk service to restart. I suspect that processing the 25 call files and placing them into the conference all at the same time somehow made the system crash and it immediately started up again. Here's the relevant dialplan: exten => 3400,1,Answer exten => 3400,n,playback(beep) exten => 3400,n,system(cp /etc/asterisk/testPage/*.call /var/spool/asterisk/outgoing_staging/) exten => 3400,n,system(mv /var/spool/asterisk/outgoing_staging/*.call /var/spool/asterisk/outgoing/) exten => 3400,n,ConfBridge(testPage,1) exten => 3400,n,hangup [testPage] exten => s,1,Answer exten => s,n,playback(beep) exten => s,n,Set(TIMEOUT(absolute)=10) exten => s,n,ConfBridge(testPage,m) exten => s,n,hangup exten => _XXXX,1,SIPAddHeader(Alert-Info: Auto Answer) exten => _XXXX,n,Dial(SIP/${EXTEN}) exten => _XXXX,n,Hangup() and here's a sample call file: channel: Local/3011 at testPage callerid: Page context: testPage extension: s priority: 1 archive: no waittime: 120 Does anyone have insight into how we could accomplish this paging feature or of anything that we may have missed? I suspect we could get this all to work with the original Page() application if there was a way to force MusicOnHold to use the pthread timing module instead of the Dahdi timing module. Is that configurable somewhere? Thanks for your help, Bob
Faisal Hanif
2011-Jun-28 05:03 UTC
[asterisk-users] Asterisk 1.8 Paging without DAHDI or MOH Shoutcast with DAHDI
Call file are not suitable for you as asterisk process these files in serial mode (single threaded) and in case of large number of files processing of last file can be that much delayed that some portion of message may be already played or the 1st phone may be hanged. -----Original Message----- From: asterisk-users-bounces at lists.digium.com [mailto:asterisk-users-bounces at lists.digium.com] On Behalf Of Bob Pierce Sent: Monday, June 27, 2011 10:21 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: [asterisk-users] Asterisk 1.8 Paging without DAHDI or MOH Shoutcast with DAHDI We just finished an upgrade of our Asterisk system to an HA environment on a pair of servers using Linux-HA. As part of the upgrade, we also moved to Asterisk version 1.8.4.3 Most things are working quite nicely on the new system. However, I'm having trouble getting a paging feature to work. In Asterisk 1.4, we simply used the Page() application like this: 3400,n,Page(SIP/3011&SIP/3021&SIP/3110&SIP/3120&SIP/3121&SIP/3122&SIP/3124&S IP/3125&SIP/3126&SIP/3127&SIP/3221&SIP/3222&SIP/3223&SIP/3250&SIP/3261&SIP/3 262&SIP/3310&SIP/3311&SIP/3324&SIP/3329&SIP/3331&SIP/3332&SIP/3350&SIP/3455& SIP/3457) However, the Page() application seems to rely on the Meetme() application which also relies on the DAHDI channel driver for mixing of the audio streams. I have tried using the DAHDI channel driver on this system, but that seems to make the Music On Hold application use the DAHDI timing module instead of the pthread module. With the DAHDI timing module, Music On Hold does not playback Shoutcast streams which is also a requirement for this system. As an alternate solution, we have tried implementing a workaround which simply uses a set of .call files to dial each phone. Those phones then auto-answer the call and are placed into a conference bridge on mute using the ConfBridge application. At this point, the initiating caller speaks the announcement and the phones automatically hangup after about 10 second. This worked perfectly in our small scale tests. However, when we ramped this up to the 25 phones that are required and tested it this morning, somehow this caused the Asterisk service to restart. I suspect that processing the 25 call files and placing them into the conference all at the same time somehow made the system crash and it immediately started up again. Here's the relevant dialplan: exten => 3400,1,Answer exten => 3400,n,playback(beep) exten => 3400,n,system(cp /etc/asterisk/testPage/*.call /var/spool/asterisk/outgoing_staging/) exten => 3400,n,system(mv /var/spool/asterisk/outgoing_staging/*.call /var/spool/asterisk/outgoing/) exten => 3400,n,ConfBridge(testPage,1) exten => 3400,n,hangup [testPage] exten => s,1,Answer exten => s,n,playback(beep) exten => s,n,Set(TIMEOUT(absolute)=10) exten => s,n,ConfBridge(testPage,m) exten => s,n,hangup exten => _XXXX,1,SIPAddHeader(Alert-Info: Auto Answer) exten => _XXXX,n,Dial(SIP/${EXTEN}) exten => _XXXX,n,Hangup() and here's a sample call file: channel: Local/3011 at testPage callerid: Page context: testPage extension: s priority: 1 archive: no waittime: 120 Does anyone have insight into how we could accomplish this paging feature or of anything that we may have missed? I suspect we could get this all to work with the original Page() application if there was a way to force MusicOnHold to use the pthread timing module instead of the Dahdi timing module. Is that configurable somewhere? Thanks for your help, Bob -- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- New to Asterisk? Join us for a live introductory webinar every Thurs: http://www.asterisk.org/hello asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Bob Pierce
2011-Jul-11 14:51 UTC
[asterisk-users] Asterisk 1.8 Paging without DAHDI or MOH Shoutcast with DAHDI
I agree that call files are not an appropriate way to solve this. I would like to move back to using the original Page() application which had always worked for us with 1.4 My initial testing found that MOH from a streaming source such as Shoutcast only worked if I disabled the DAHDI timing module in modules.conf with "noload => res_timing_dahdi.so". I understand the DAHDI timing module is a requirement for the Page() application. Has anybody been able to get streaming MOH to work in 1.8.4.3 with the DAHDI timing module loaded? If not, is there a way to use both the pthreads and DAHDI timing modules and force MOH to use pthreads and force Page() to use DAHDI? Bob On Tue, Jun 28, 2011 at 12:03 AM, Faisal Hanif <faisal at vopium.com> wrote:> Call file are not suitable for you as asterisk process these files in serial > mode (single threaded) and in case of large number of files processing of > last file can be that much delayed that some portion of message may be > already played or the 1st phone may be hanged. >