Showing results for 
Search instead for 
Did you mean: 

CUSP pre-normalization vs. dial-peer and voice translation rules


Hi all,

I was hoping to consolidate as much dial-plan and digit manipulation as possible in CUSP but am having issues finding decent documentation (and examples) on how to effectively utilize pre-normalization policies.   The Telco is delivering 4 digits DNIS/DIDs that need to be expanded to 10 digits and then based on the assigned prefix routed to CVP/ICM, non-agent phones on a call center CUCM cluster, or another cluster altogether. 

Because of this I am expanding them on the ingress gateway via voice translation rules.  The call center related DNIS numbers are scttered throughout the larger range so there are quite a few exact match dial-peers configured in order to get the correct routing.  This effectively means that the routing decision is made at the gateway ( by assigning the prefix there) as opposed to centralizing it at the CUSP.

One of the items I could really use is better information on what regular expressions CUSP accepts.  CUSP seems to see the . (period) as a literal rather than a wildcard and does not seem to like what we commonly use in IOS.  Should the regular expression be enclosed in "" as in grep or egrep?

It would also be helpful to get better details on the "rules of engagement" on how the normalization policies actually work.  If I configure the module as shown below p6980 will work but p6990  will not.  If I change the trigger sequence number for p6990 to 5 then it does fire, but p6980 is then broken.

policy normalization p6980

uri-component update TO all user ^698 899222698

uri-component update request-uri user ^698 899222698

end policy


policy normalization p6990

uri-component update TO all user ^699 899222699

uri-component update request-uri user ^699 899555699

end policy


policy lookup cvp-policy

sequence 1 cvp-routes request-uri uri-component user

  rule prefix

  end sequence

end policy


trigger routing sequence 1 by-pass condition mid-dialog

trigger routing sequence 10 policy cvp-policy condition in-cvp-enterprise

trigger pre-normalization sequence 1 by-pass condition mid-dialog

trigger pre-normalization sequence 10 policy p6980 condition in-cvp-enterprise

trigger pre-normalization sequence 20 policy p6990 condition in-cvp-enterprise

Could someone please give me an example of how this would be written for CUSP:

rule 1 /^698[0-4]/ /899222\0/

Any help would be greatly appreciated!!

Many thanks,


1 Reply 1

Chris Deren
Hall of Fame Master Hall of Fame Master
Hall of Fame Master


Did you ever get this to work?


Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: