Route pattern matching

Unanswered Question
Apr 3rd, 2009


I have two Partitions:

P-R-PSTN : contains route patterns to a gateway.

P-B-NATIONAL-CALL : contains a blocking route pattern.

I created a CSS to use in the device:



and another to use in the line



I've finaly created two route patterns (0 is the exit code):

0.2XXXXXXXX , P-R-PSTN , Route this pattern, GW-PSTN

0.2[^1]XXXXXXX, P-B-NATIONAL-CALL, Block this pattern, GW-DUMMY

Of the two route patterns, I think that the blocking pattern is more specific (3rd digit matches 9 digits, whereas in the other route pattern matches 10 digits).

What happens is that Callmanager matches the 0.2XXXXXXXX pattern instead of the 0.2[^1]XXXXXXX pattern, and the call gets trough.

If I change the blocking pattern to 0.2[2-9]XXXXXXX, it works.

Is this a bug or [^] works differently?

I have this problem too.
0 votes
  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 4 (1 ratings)
lordshawn Fri, 04/03/2009 - 14:39

It looks like its using your Line CSS First which gives a match, but then when you change the route pattern it uses the device CSS.

Just use one CSS and slap both partions in the same CSS> If you do a CUCM trace you can see the digita analysis taking place.

Manuel Azevedo Sat, 04/04/2009 - 03:34

The idea is to give devices the necessary routes to exit and then in the lines give the necessary blocking routes to each level a user has.

According to Cisco, when you have two CSS (Line+Phone), CCM concatenates both lists (with the line CSS partitions first) and test matches on each pattern contained in the partitions.

So what's happening here is, if you look to the third digit:

0.2[^1]XXX - Matches 9 digits (on the third digit)

0.2XXXX - Matches 10 digits (on the third digit)

So, what is the most specific?

If I change the 0.2[^1]XXX to 0.2[2-9]XXX (fortunately the zero is not a valid route), it matches 8 digits on the third digit and it works as expected.

Is this a bug?

Jaime Valencia Sat, 04/04/2009 - 20:15

i'm just guessing but most probably ^ includes * and # as possible options as they can also be dialed from the phone, therefore it's not the same amount of options and the other one is a best match.

the other pattern does only have numeric values in there and is the best match

these are all the valid entries for a RP:

[ ^ 0 1 2 3 4 5 6 7 8 9 A B C D - ] + ? ! X * # + . @

it probably matches more than just digits



if this helps, please rate


This Discussion