I am having a problem understanding/visualizing the environment of AGI and how
variables defined there can be used in my dial plan. I am so close I can
taste it. I just want to return a number to dial from a list of numbers in a
file.
from extensions.conf
[talk2doc]
; Please Hold While I Transfer Your Call
exten => s,1,AGI(pnumber.agi)
exten => s,2,Dial(Zap/2/$[PHONE_NUM]|15)
--------------------------------
in my agi perl script - pnumber.agi
.....
if ( $cntr >= $#file ) {
print "SET VARIABLE PHONE_NUM $file[$cntr - 1]";
$cntr = 1;
}
else {
print "SET VARIABLE PHONE_NUM $file[$cntr - 1]";
$cntr++;
}
If I open up a CLI and dial up asterisk and press the appropriate extension I
can see it run the agi script but no returned var.
-- Goto (talk2doc,s,1)
-- Executing AGI("Zap/1-1", "pnumber.agi") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/pnumber.agi
-- AGI Script pnumber.agi completed, returning 0
-- Executing Dial("Zap/1-1", "Zap/2/$PHONE_NUM|15") in
new stack
-- Called 2/$PHONE_NUM
--
Mark Street, D.C.
Red Hat Certified Engineer
Cert# 807302251406074
--
Key fingerprint = 3949 39E4 6317 7C3C 023E 2B1F 6FB3 06E7 D109 56C0
GPG key http://www.streetchiro.com/pubkey.asc
Why bother returning the value when you can just dial directly from AGI. On Wed, 2003-06-11 at 18:35, Mark Street wrote:> I am having a problem understanding/visualizing the environment of AGI and how > variables defined there can be used in my dial plan. I am so close I can > taste it. I just want to return a number to dial from a list of numbers in a > file. > > from extensions.conf > [talk2doc] > ; Please Hold While I Transfer Your Call > exten => s,1,AGI(pnumber.agi) > exten => s,2,Dial(Zap/2/$[PHONE_NUM]|15) > -------------------------------- > > in my agi perl script - pnumber.agi > ..... > if ( $cntr >= $#file ) { > print "SET VARIABLE PHONE_NUM $file[$cntr - 1]"; > $cntr = 1; > } > else { > print "SET VARIABLE PHONE_NUM $file[$cntr - 1]"; > $cntr++; > } > > If I open up a CLI and dial up asterisk and press the appropriate extension I > can see it run the agi script but no returned var. > > -- Goto (talk2doc,s,1) > -- Executing AGI("Zap/1-1", "pnumber.agi") in new stack > -- Launched AGI Script /var/lib/asterisk/agi-bin/pnumber.agi > -- AGI Script pnumber.agi completed, returning 0 > -- Executing Dial("Zap/1-1", "Zap/2/$PHONE_NUM|15") in new stack > -- Called 2/$PHONE_NUM > >-- Steven Critchfield <critch@basesys.com>
Notice that you should refer to PHONE_NUM variable this way:
${PHONE_NUM}
Martin
On Wed, 11 Jun 2003, Mark Street wrote:
> I am having a problem understanding/visualizing the environment of AGI and
how
> variables defined there can be used in my dial plan. I am so close I can
> taste it. I just want to return a number to dial from a list of numbers in
a
> file.
>
> from extensions.conf
> [talk2doc]
> ; Please Hold While I Transfer Your Call
> exten => s,1,AGI(pnumber.agi)
> exten => s,2,Dial(Zap/2/$[PHONE_NUM]|15)
> --------------------------------
>
> in my agi perl script - pnumber.agi
> .....
> if ( $cntr >= $#file ) {
> print "SET VARIABLE PHONE_NUM $file[$cntr - 1]";
> $cntr = 1;
> }
> else {
> print "SET VARIABLE PHONE_NUM $file[$cntr - 1]";
> $cntr++;
> }
>
> If I open up a CLI and dial up asterisk and press the appropriate extension
I
> can see it run the agi script but no returned var.
>
> -- Goto (talk2doc,s,1)
> -- Executing AGI("Zap/1-1", "pnumber.agi") in new
stack
> -- Launched AGI Script /var/lib/asterisk/agi-bin/pnumber.agi
> -- AGI Script pnumber.agi completed, returning 0
> -- Executing Dial("Zap/1-1", "Zap/2/$PHONE_NUM|15")
in new stack
> -- Called 2/$PHONE_NUM
>
>
>
>
>
> --
> Mark Street, D.C.
> Red Hat Certified Engineer
> Cert# 807302251406074
> --
> Key fingerprint = 3949 39E4 6317 7C3C 023E 2B1F 6FB3 06E7 D109 56C0
> GPG key http://www.streetchiro.com/pubkey.asc
>
> _______________________________________________
> Asterisk-Users mailing list
> Asterisk-Users@lists.digium.com
> http://lists.digium.com/mailman/listinfo/asterisk-users
>