Now there is just 1 remaining issue I have with this, how to capture the dialed number in the first condition, as I have done with the parantheses in the destination_number expression, and use that in the bridge in the other two conditions. Is that possible? I tried with the below xml, but that didn't work. I got $1 out as the bridge number, and that obviously failed. <extension name="Outbound_ip24"> <condition field="destination_number" expression="^(.+)$" break="on-false"/> <condition field="caller_id_number" expression="^100$" break="on- true"> <action application="set" data="effective_caller_id_name=Ivan C Myrvold"/> <action application="set" data="effective_caller_id_number=37048300"/> <action application="bridge" data="sofia/gateway/ip24_37048300/$1"/> </condition> <condition field="caller_id_number" expression="^140$" break="on- true"> <action application="set" data="effective_caller_id_name=Laura L Myrvold"/> <action application="set" data="effective_caller_id_number=37397855"/> <action application="bridge" data="sofia/gateway/ip24_37397855/$1"/> </condition> </extension> Ivan On 16. aug.. 2008, at 21:51, Ivan C Myrvold wrote:
Thanks for all your help! With your last suggestion, and an addition of break="on-true" for the second condition, I got the intended result, which in a sort of pseudo-code was this:
if destination_number = ... { if caller_id_number=100 bridge to 140 else if caller_id_number=140 bridge to 100 }
Sure, a pretty stupid example, but I learned a lot with it, and I can now use this syntax in the dialplan.
Here is the final xml which works:
<extension name="Outbound_ip24"> <condition field="destination_number" expression="^(.+)$" break="on-false"/> <condition field="caller_id_number" expression="^(100)$" break="on- true"> <action application="bridge" data="sofia/$${domain}/ 140%imyrvold.dyndns.org"/> </condition> <condition field="caller_id_number" expression="^(140)$"> <action application="bridge" data="sofia/$${domain}/ 100%imyrvold.dyndns.org"/> </condition> </extension>
Ivan
On 16. aug.. 2008, at 18:59, Ivan C Myrvold wrote:
OK, no nested conditions. But I am still unsure about the syntax. In the wiki page I could not find any example of "stacked" condition. I tried with the below syntax, but still no success.
<extension name="Outbound_ip24"> <condition field="destination_number" expression="^(.+)$" break="on-false"> <condition field="caller_id_number" expression="^(100)$"> <action application="bridge" data="sofia/$${domain}/ 140%imyrvold.dyndns.org"/> </condition> <condition field="caller_id_number" expression="^(140)$"> <action application="bridge" data="sofia/$${domain}/ 100%imyrvold.dyndns.org"/> </condition> </condition> </extension>
Ivan
On 16. aug.. 2008, at 17:38, Anthony Minessale wrote:
you cannot nest conditions.
you can only stack them with the break attr set. see wiki page. http://wiki.freeswitch.org/wiki/Dialplan_XML#Condition
in the expression both "caller_id_number" and "$ {caller_id_number}" will work if you do not nest conditions. you do not say "${variable_caller_id_number}"
On Fri, Aug 15, 2008 at 3:58 PM, Ivan C Myrvold <ivan@myrvold.org> wrote: I am testing out conditions in my dialplan, but am unable to get a match on caller_id_number, and I wonder why.
I have to numbers registered from my PAP2, with User ID 100, and 200.
If I have this in my dialplan, I thought I should get a match if I call any number from any of these two users:
<extension name="Outbound_ip24"> <condition field="destination_number" expression="^(.+)$"> <condition field="caller_id_number" expression="^(100)$"> <action application="bridge" data="sofia/$$ {domain}/ 140%imyrvold.dyndns.org"/> </condition> <condition field="caller_id_number" expression="^(140)$"> <action application="bridge" data="sofia/$$ {domain}/ 100%imyrvold.dyndns.org"/> </condition> </condition> </extension>
But FreeSWITCH can not find a route to either of 100 nor 140.
If I remove the inner conditions, and dial any number, my 140 telephone will ring:
<extension name="Outbound_ip24"> <condition field="destination_number" expression="^(.+)$"> <action application="bridge" data="sofia/$$ {domain}/ 140%imyrvold.dyndns.org"/> </condition> </extension>
Why don't I get a match on caller_id_number?
Ivan
_______________________________________________ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Anthony Minessale II
FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/
AIM: anthm MSN:anthony_minessale@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch
FreeSWITCH Developer Conference sip:888@conference.freeswitch.org iax:guest@conference.freeswitch.org/888 googletalk:conf+888@conference.freeswitch.org pstn:213-799-1400 _______________________________________________ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_______________________________________________ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
_______________________________________________ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org