[asterisk-users] AGI and Music on hold

Jeff LaCoursiere jeff at jeff.net
Thu Nov 26 13:33:16 CST 2009


Hi,

Happy Thanksgiving to those of us in the USA...

Been trying to debug an AGI (in C) on 1.4.26.2.  I blind transfer a call to 
this snippet of dialplan:

exten => 999900,1,DeadAGI(pq.agi,999950)

pq.agi then plays a prompt (which I hear just fine):

[Nov 26 02:42:47] VERBOSE[28721] logger.c:     -- Launched AGI Script 
/var/lib/asterisk/agi-bin/pq.agi
[Nov 26 02:42:47] VERBOSE[28721] logger.c:     -- Playing 'you-are-caller-num' 
(escape_digits=) (sample_offset 0)
[Nov 26 02:42:48] VERBOSE[28721] logger.c:     -- <IAX2/w2bdialplan-239> 
Playing 'digits/2' (language 'en')

It then tries to put the caller on hold with the AGI command "SET MUSIC ON". 
The AGI logs to syslog, and I see this:

Nov 26 02:42:49 hades pq.agi[28725]: JAGI.c:161: AGI command(timeout=10000000) 
: SET MUSIC ON
Nov 26 02:42:49 hades pq.agi[28725]: JAGI.c:191: AGI response: 200 result=0

And I see this in /var/log/asterisk/full:

[Nov 26 02:42:49] VERBOSE[28721] logger.c:     -- Started music on hold, class 
'default', on IAX2/w2bdialplan-239
[Nov 26 02:42:51] WARNING[28273] channel.c: Exceptionally long voice queue 
length queuing to IAX2/w2bdialplan-239
[Nov 26 02:42:51] WARNING[28268] channel.c: Exceptionally long voice queue 
length queuing to IAX2/w2bdialplan-239
[Nov 26 02:42:51] WARNING[28267] channel.c: Exceptionally long voice queue 
length queuing to IAX2/w2bdialplan-239

The "Exceptionally long voice queue..." continues as long as the hold music 
should be playing, but I hear nothing.  30 seconds later the AGI turns the 
music off:

Nov 26 02:43:19 hades pq.agi[28725]: JAGI.c:161: AGI command(timeout=10000000) 
: SET MUSIC OFF
Nov 26 02:43:19 hades pq.agi[28725]: JAGI.c:191: AGI response: 200 result=0
Nov 26 02:43:19 hades pq.agi[28725]: JAGI.c:161: AGI command(timeout=100000000) 
: STREAM FILE pq_thanks-for-holding ""
Nov 26 02:43:29 hades pq.agi[28725]: JAGI.c:191: AGI response: 200 result=0 
endpos=80160
Nov 26 02:43:29 hades pq.agi[28725]: JAGI.c:161: AGI command(timeout=100000000) 
: STREAM FILE pq_you-are-currently-caller-number ""
Nov 26 02:43:33 hades pq.agi[28725]: JAGI.c:191: AGI response: 200 result=0 
endpos=29440
Nov 26 02:43:33 hades pq.agi[28725]: JAGI.c:161: AGI command(timeout=3000000) : 
SAY NUMBER 2 ""
Nov 26 02:43:33 hades pq.agi[28725]: JAGI.c:191: AGI response: 200 result=0
Nov 26 02:43:33 hades pq.agi[28725]: JAGI.c:161: AGI command(timeout=10000000) 
: SET MUSIC ON
Nov 26 02:43:33 hades pq.agi[28725]: JAGI.c:191: AGI response: 200 result=0

I hear the prompts that show above, and it attempts to turn the music back on 
(with a 200 result=0 response from asterisk), but again I hear no hold music, 
and again the "Exceptionally long voice queue..." messages start streaming in 
/var/log/asterisk/full.

I tried applying the patch from issue number 16268 with no effect.  I read the 
comments for issue number 15609, which is still open, and don't really know if 
it is relevant, since I am not experiencing a crash - just no hold music!

If I change the AGI command, in the exact same place, to do this instead:

EXEC MusicOnHold default

I hear the hold music just fine, but of course this command doesn't return, and 
is not useful within my AGI!

I'm pretty stumped and don't know what to try next.  Any suggestions?

Thanks,

j




More information about the asterisk-users mailing list