Replacing Source Alias on VCS

Unanswered Question
Jan 30th, 2012


Is there a possibility to replace/overwrite/delete a source alias (H.323 Id or SIP URI) of a call on a VCS based on the original source alias?

All the tools on VCS like Transforms, Search Rules and even CPL only seem to change the destination alias.

Any examples would be appreciated if possible

Many thanks in advance



  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 5 (3 ratings)
Garvan Long Mon, 01/30/2012 - 14:23

The FindMe option alllows for you to repalce the source URI with the Find me name

STEFAN CHRISTEN Mon, 01/30/2012 - 14:42

Hi Garvan

Thanks for the reply but FindMe won't help because the source alias is not that of a local user.



Bill Ruhnke Thu, 07/19/2012 - 09:06

Since dial rules and transforms only apply to the destination address, if there are particular endpoints you want special treatment for you could have them use a unique prefix for all destinations they dial.  Regex can match the prefix and apply a rule.  It will not change the source alias.       

awinter2 Thu, 07/19/2012 - 09:19

Hi Stefan,

We are planning to include a new feature in VCS X7.2 which will allow you to rewrite source aliases using CPL.

X7.2 is due for release quite soon, and if everything goes to plan, you should find information about this feature in the X7.2 release notes once available.



pillowhead Thu, 08/16/2012 - 17:04

I have installed VCS X7.2 and was wondering how I can rewrite the source alias using CPL. I have looked through the documentation and did not find an example of how to do this.



pillowhead Fri, 08/17/2012 - 10:38

Thanks, but I am still not sure what the syntax will be. When I receive a call from an H323 device, I see it as [email protected] address. I want it to appear as [email protected] . Could you fill in the blanks for me on what the syntax will be? None of the examples in the documentation show an example of a rule-switch and replace.

<?xml version="1.0" encoding="UTF-8"?> " xmlns:xsi=" " xsi:schemaLocation="urn:ietf:params:xml:ns:cpl cpl.xsd">



awinter2 Fri, 08/17/2012 - 17:40

Here is a basic example on how to do source rewrite via CPL:

<?xml version="1.0" encoding="UTF-8" ?>" xmlns:xsi="" xsi:schemaLocation="urn:ietf:params:xml:ns:cpl cpl.xsd">

[email protected]">

[email protected]" source-url-for-message="[email protected]">

This CPL will match a call from an authenticated call from an endpoint with a source address of "[email protected]", where the source alias is rewritten to "[email protected]" and the destination alias is changed from whatever it was to "[email protected]". This is similar to what would happen when calling a FindMe alias and using FindMe source rewrite.

It is also possible to preserve the original destination alias when using the clause while rewriting the source alias, for example with

[email protected]">

It would probably make the most sense to implement CPL source rewrite by using an external Policy Server in order to do rewriting dynamically, since you would need a relatively large static CPL script to perform rewriting for a high number of endpoints.

Hope this helps!

- Andreas

pillowhead Sat, 08/18/2012 - 12:10

Thank you for this info! I was to get it to do what I needed with this. The next step is how do I add another source and destination for other endpoints. Or is it possible to use a regex to maintain the source host name and just change the domain portion?

Sent from Cisco Technical Support iPhone App

awinter2 Sun, 08/19/2012 - 03:19

If you need to add more source/destination pairs, you can add more and sections, but as I mentioned, writing this manually and maintaining a static CPL file for doing this could get very cumbersome.

Instead you could implement a Policy server using your language of choice (PHP, Perl, Python and so forth) and automate this process.

- Andreas

pcusty.mcpc Wed, 07/16/2014 - 08:09

Hello awinter2,

I understand that VCX X8.1 introduced  new capabilitites to modify the Source URI.

Do you know of any good tutorial or source for new CPL Example scripts showing how to use these new capabilities?


I am currently having a similar issue and would like to get it resolved.  TAC is not supporting CPL.



rasimyigit Sun, 11/25/2012 - 00:33

Good Morning Andreas,

i need a same point for this case.

An Example: i want to call somebody with my address like [email protected] or [email protected]

My proposation is, to call someone foreign or local and he see only a phantasie adress like [email protected].

I tried with your cpl script. but it doesnt work. What is the entry for [email protected]" ???

Thanks for your feedback

Ryan Mullins Fri, 05/09/2014 - 09:55

I know this is an old post, but does anyone have this CPL script?  It appears all examples on the site are horked up due to formatting with the new site designs.



pillowhead Tue, 08/21/2012 - 00:17

Thanks for the info. Are there any policy servers already built for use with VCS that I can download?

Sent from Cisco Technical Support iPhone App

rasimyigit Sun, 11/25/2012 - 00:36

Good Morning Andreas,

i need a same point for this case.

An Example: i want to call somebody with my address like [email protected] or [email protected]

My proposation is, to call someone foreign or local and he see only a phantasie adress like [email protected].

I tried with your cpl script. but it doesnt work. What is the entry for [email protected]" ???

Thanks for your feedback

Tomonori Taniguchi Sun, 11/25/2012 - 17:06

The “[email protected]” should be configured to “[email protected]”.

If you are looking for source alias replacement for call from either [email protected] and [email protected] to external domain(s), then CPL may looks like follow;


<?xml version="1.0" encoding="UTF-8" ?>" xmlns:xsi="" xsi:schemaLocation="urn:ietf:params:xml:ns:cpl cpl.xsd">

[email protected][email protected])">

[email protected]">


The “regex="(?!.*@%localdomains%) “ is indicating call destination that contain SIP domain which is not part of local VCS SIP domain configuration list.

This should simplify the CPL configuration if you are looking for CPL to rewrite sauce alias for multiple or all external domain calls.

Please note, source alias rewrite replace incoming alias to far end device (if redial from far end device, call will go through rewrite alias), but device name that display in far end device will still remain as original Endpoint configured name.

For example, far end device see as call come from peter.pan with alias of [email protected], if call made from [email protected] to external device.

gubadman Mon, 11/26/2012 - 00:00

Hi Tomo,

Pattern matching variables such as %localdomains% are not supported in CPL.

The Admin guide - - states (page 368) "The VCS makes use of pattern matching in a number  of its features, namely Allow Lists and Deny Lists, presearch transforms and when configuring search rules and zone transforms." It doesn't mention CPL or Call policy rules at all.

Tomonori Taniguchi Mon, 11/26/2012 - 03:03

Try with this CPL.


<?xml version="1.0" encoding="UTF-8" ?>" xmlns:xsi="" xsi:schemaLocation="urn:ietf:params:xml:ns:cpl cpl.xsd">

peter\.[email protected]\.com|peter\.pan\.[email protected]\.com)">

[email protected]">


This CPL will replace source URL to “[email protected]” when and only when call initiate from either [email protected] or [email protected] to URL that is not contain domain name (assume is internal domain and anything else are treat as external call).

Tomonori Taniguchi Sun, 08/10/2014 - 22:43

Assume [email protected] and [email protected] on same VCS (or authentication policy set to treated as authenticated or check credential on zone that call come from), then CPL should be like below.


<?xml version="1.0" encoding="UTF-8" ?>

<cpl xmlns="urn:ietf:params:xml:ns:cpl" xmlns:taa="" xmlns:xsi="" xsi:schemaLocation="urn:ietf:params:xml:ns:cpl cpl.xsd">


<address-switch field="registered-origin">

<address regex="(peter\.pan|peter\.pan\.movi)@ciscotp\.com">

<taa:location clear="yes" regex="(.[email protected]\.com)(.*)" replace="\1\2" source-url-for-message="[email protected]">





JensLantermann Mon, 11/26/2012 - 05:46

Hi everybody,

my hint for using an external policy server is.

1. make a new IIS publication on the tms.

2. write an asp script where you can check everything

It was a two day work now everything works perfectly.

But one question about this, the external policy server guide says, that only an allow or deny can be send back to the

vcs. Is there a chance to send them a new source-alias back?

Ok my question is not enough specified. How can I send a

[email protected]">

and the vcs uses this new location!?!?!?!


This Discussion

Related Content