I recently had a need to route a wildcard DN from CUCM to UCCE. As ICM matches to specific DNs, not wildcards, I had a bit of a dilemma on my hands. The wildcard pattern I needed to route was "**71XXXX". I wasn't about to go create 10,000 new DNs in ICM to handle every possible number... so I came up with a simpler solution:
Create the **71XXXX CTI Route Point in CUCM. Assign control to "pguser" Application User as usual.
Create a Dialed Number in ICM with Dialed Number String of **71XXXX so calls will route to ICM.
In PG Explorer, under the Peripheral for CUCM, on the "Routing Client" tab, set a Default call type. I'll use "HandleDefaults" in this example.
Schedule a script for the default call type. In this example, I'll name the script "HandleDefaults".
In the HandleDefaults script, check if the left 4 digits of Call.DialedNumberString is "**71" and length 8. If so, requalify the call to another script. Otherwise, release the call.
While this solution is a little tricky, I feel it provides a good method for handling wildcards. The alternative (10,000 DNs in ICM in this case) is far too large to build and manage changes on.
One thing to keep in mind - using the Default Call Type does potentially reduce the utility of the Route Log Viewer. Any calls that hit the default call type because of a missing DN or Call Type mapping (in this case, any calls from CUCM without a DN) will no longer show an error in Router Log Viewer to let you know the problem. However, with having a Call Type applied to missing DNs, you can potentially create reporting in CUIC to see these errors.