Hi,
I've mentioned that pattern matching in my dialplan works incorrectly but I can't figure out the main reason.
For example I have the following dialplan:
<context name="internal">
<extension name="echo_test">
<condition field="destination_number" expression="^(echo|9999)$">
Some action
</condition>
</extension>
<extension name="is_internal_call">
<condition field="destination_number" expression=".*"/>
<condition field="${sip_h_X-Exten-Type}" expression="internal">
Some action
</condition>
</extension>
<extension name="ua_local">
<condition field="destination_number" experession="^[2-5][0-9]{6}$">
Some action
</condition
</extension>
<extension name="ua_mobile">
<condition field="destination_number" experession="^0[0-9]{9}$">
<action application="bridge" data="sofia/gateway/golden/${destination_number}"/>
</condition>
</extension>
</context>
1. Call to "echo" - OK (echo_test)
2. Call to some extension with custom header X-Exten-Type - OK (is_internal_call)
3. Call to 5930000 - OK (ua_local)
4. Call to 0930000000 - FAILED to match ua_mobile extension.
The last call matches ua_local. But why?
The result of regex dp_tool
freeswitch@vlakas> regex 5930000|^[2-5][0-9]{6}$
true
freeswitch@vlakas> regex 0930000000|^[2-5][0-9]{6}$
false
So, everything is correct. I can't understand why almost everyting goes to ua_local extension.
I appreciate you help.