Thanks for that John. PHPAGI seems to be the right choice. 

 

However when doing a NoOp I am getting channel info like ip and sip info for 
the variable. It seems to me that the variable is not passed the right way back 
to the dial-plan.

 

NoOp reults:

 NoOp("SIP/64.64.65.65-00000d31", "") in new stack


 

Maybe the problem:

$agi->set_variable("var", $var);

 

-Bruce


 
> Date: Sun, 13 Jun 2010 16:16:48 -0400
> From: [email protected]
> To: [email protected]
> CC: [email protected]
> Subject: Re: [on-asterisk] How to pass ${EXTEN} from dialplan to php file 
> which accept variable $did_numb ???
> 
> 
> 
> ----- Original Message -----
> > Trying to pass ${EXTEN} to a php file for processing. Not sure how to.
> > The php file takes $did_numb as defined:
> > 
> > 
> > <?php
> > 
> > $did_numb = $_GET['did_numb'];
> > ?>
> 
> There are two ways to do this. If you insist on using a system() call you 
> could pass the variable as an aguement. I don't recall how to use the 
> system() function to pass an argument so I'll guess here:
> 
> exten => s,n,system(php file.php "${EXTEN}")
> 
> Then in PHP use:
> 
> #!/usr/bin/php
> <?php
> $did_numb = $_GLOBALS['argv'][1]
> ?>
> 
> > 
> > I know that http://serverIP/file.php?did_numb=416-444-5555 works fine
> > but when calling php file by system() from dialplan how can this be
> > done?
> > 
> > 
> > exten => s,n,system(php file.php?did_numb=${EXTEN}) |||| This method
> > doesn't work as "php file.php?did_numb=416-444-555" simply doesn't
> > work from the CentOS prompt.
> > 
> > 
> > What is the proper syntax here?
> > 
> > 
> > I also want whatever that file.php returns to be saved in $var for
> > later usage in dial-plan afterwards.
> 
> Okay so what you really want is to use AGI. Get an AGI library for PHP. I 
> recall using one called phpagi.php (http://sourceforge.net/projects/phpagi/)
> 
> You will want to use the get_variable() and set_variable() functions.
> 
> Again from memory:
> 
> exten => s,n,agi(file.php)
> 
> Then the PHP code
> 
> #!/usr/bin/php
> <?php
> 
> // Use the phpagi library
> require "phpagi.php';
> 
> // It's an object so let's instantiate it
> $agi = new AGI();
> 
> // Get a variable from dial plan
> $agi->get_variable($EXTEN);
> 
> // do something, like assign a value to $var
> $var = "something";
> 
> // Set a dial plan variable
> $agi->set_variable("var", $var);
> 
> exit(0);
> ?>
> 
> -- 
> John Van Ostrand 
> CTO, co-CEO 
> Net Direct Inc. 
> 564 Weber St. N. Unit 12, Waterloo, ON N2L 5C6 
> Ph: 866-883-1172 x5102 
> Fx: 519-883-8533 
> 
> Linux Solutions / IBM Hardware 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 
                                          
_________________________________________________________________
Game on: Challenge friends to great games on Messenger
http://go.microsoft.com/?linkid=9734387

Reply via email to