[Freeswitch-users] Using Variables in Dialplans
Michael Collins
msc at freeswitch.org
Wed Apr 22 13:09:53 PDT 2009
On Wed, Apr 22, 2009 at 12:19 PM, Chris Fowler <chris at fowler.cc> wrote:
> I have the following defined:
>
> <!-- Billing Open? -->
> <extension name="billing_open" continue="true">
> <!-- man strftime - M-F, 9AM to 5PM -->
> <condition field="${strftime(%w)}" expression="^([1-5])$"/>
> <condition field="${strftime(%H%M)}"
> expression="^((09|1[0-6])[0-5][0-9]|1700)$">
> <action application="set" data="billingopen=true"/>
> </condition>
> </extension>
>
>
> <!-- billing line -->
> <extension name="billing">
> <condition field="destination_number" expression="^billing$|^2001$"/>
> <condition field="billingopen" expression="^true$">
> <...>
>
>
> But despite the "Billing Open" ext firing correctly:
> Action set(billingopen=true)
>
> The Billing extenstion fails to get the data:
> Regex (FAIL) [billing] billingopen() =~ /^true$/ break=on-false
>
> Please could someone point me in the right direction for using variables
> correctly in a dialplan? I must be missing something simple...
>
> Thanks, Chris.
>
This is a classic case of "dialplan is parsed all at once." The reason that
it is failing is because ${billingopen} is not defined when the extension
named "billing" is parsed. You need another pass through the dialplan, for
example by adding a transfer app to your "billing_open" extension:
<!-- Billing Open? -->
<extension name="billing_open" continue="true">
<!-- man strftime - M-F, 9AM to 5PM -->
<condition field="${strftime(%w)}" expression="^([1-5])$"/>
<condition field="${strftime(%H%M)}" expression="^((09|1[0-6])[0-5]
<action application="set" data="billingopen=true"/>
* <action application="transfer" data="billing"/>
* </condition>
</extension>
This will send the call back through the dialplan and into the "billing"
extension, this time with the value of ${billing_open} == "true" so you can
now work with it. The originally dialed number is now available in the
${rdnis} channel variable in case you need it.
Have fun and let us know how it goes.
-MC
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20090422/263e7037/attachment-0002.html
More information about the FreeSWITCH-users
mailing list