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