On Wednesday August 08 2007 12:10 pm, Mike wrote: > I can be a bit slow sometimes, but you said that it's not possible, and on > the other hand told me to write my own function (which appears to > contradict the first statement). > > Your example of the use of a function is exactly what I need (Create a > function and Dial(SIP/${MY_FUNKY_NEW_FUNC(ooga)})) , what I don't know is > how to actually write the function with a return value (and Googling this > doesn't get me any relevant result, apparently). > > I'd be most thankful for some link to a page that shows how to write such a > function in Asterisk. > > Mike > > -----Original Message----- > From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] On Behalf Of Andrew > Kohlsmith > Sent: Wednesday, August 08, 2007 11:59 > To: asterisk-users@lists.digium.com > Subject: Re: [asterisk-users] How to write a function with a return > valueinAsterisk > > On Wednesday 08 August 2007 11:41:38 am Mike wrote: > > But what if I wanted to write my own custom application for one > > specific purpose, I can't set a return value? It's not possible at all? > > Not possible, to my knowledge. > > > Let me put it this way then, if I needed to have some processing all > > done in the same Asterisk priority (in my case, I want to use the "hint" > > priority but I need to find the value of a variable and use it in the > > same line). > > Create a function and Dial(SIP/${MY_FUNKY_NEW_FUNC(ooga)}) > > > Exten => 12345,hint,Dial(SIP/${A}) ; I need to know ${A} first, but I > > can't know before this line is called (it's very DB driven). > > Give the function method a try; that's about the only way I can think of > doing something like that... Note that if it's a very DB driven system, > you can use func_odbc to do what you want by declaring an SQL statement as > a function. > > -A. > Asterisk will listen on stdin if you have your agi code write the var and value out to stdout asterisk will then be able touse that var in the dial plan. this is how I do this in a C++ app that i use often: fprintf(stdout,"EXEC SETVAR RESERVED=1 \n"); then in the dial plan I look at the value of ${RESERVED} and use a gotif to do what needs to be done based on that value. JohnM _______________________________________________ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users