cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1552
Views
5
Helpful
13
Replies

VCS source manipulation

Thomas Buchholz
Level 1
Level 1

Hello,

we have several EX90 within a VCS-C and VCS-E environment.

They are mostly used for people they call to an external sign language translation service.

That calls needs to be billed separately from standard videoconferences.

The problem is, that more than one deaf people use the same system, but the external company needs a identification for each caller.

The EX90 are connected via H.323 only to a VCS-C and routed through firewall to VCS-E, which has a SIP only neighbour zone to the external companys SIP gatekeeper/proxy.

The only possibility to identify the caller to the external company is the source number/SIP adress of the EX90.

The units are configured as follows:

E.146 alias: dedicated phonenumber (i.e. 004912345678)

H.323 ID: dedicated phonenumber@domain.com (i.e. 004912345678@domain.com)

But If more people use the same EX90, each of them needs a different caller ID for billing.

We are thinking about to configure different outgoing numbers or aliases for each of the persons, and depending on which alias  has been dialed out, the source caller ID should be modified also, so that not hte EX90 H.323 or E.164 alias will be sent as caller id, but a dedicated ID for each dialed alias.

Is that possible? I believe it could work using call policy rules, but not sure and if yes, how we can configure it on the VCS-E?

Or is there another possible solution to get aour needs?

Thank you very much!

Thomas

2 Accepted Solutions

Accepted Solutions

Hi Thomas,

an example of cpl is below.

xmlns:taa="http://www.tandberg.net/cpl-extensions"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

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

alok@example.com">

1234@cisco.com">

you can add multiple entries in it with adding more location and address sections.

Rgds

Alok

View solution in original post

Thomas,

This is the suggestion I said that I have in mind: Let's consider the following example:

You have your EX90 registered with the number 5555. Many users will use that unique equipament to dial to your external system the uses the source alias for billing. You will set a standard to the users, they will have to dial "Billing code + Number of the external system". In this example, you have:

EX90 original number = 5555

UserA's billing code = 1000

Number of the external system = 9999

The following CPL script can be used to replace the source alias when the UserA dialls the remote system:

xmlns:taa="http://www.tandberg.net/cpl-extensions"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

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

 

10009999">

   

    

5555">

      source-url-for-message="1000">

    

   

 

It is important to point that, VCS considers the CPL script before considering the search rule, therefore, you must to have a search rule that matches 10009999 and then sends it to the removing the billing code 1000.

The bad point is, you will have to create several entries into the CPL script, basicly one entry per user. But it is gonna work.  =)

Can you try this?

Regards

Paulo Souza

Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Paulo Souza Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

View solution in original post

13 Replies 13

Paulo Souza
VIP Alumni
VIP Alumni

Hi Thomas,

I guess it can be achieved by using CPL scripts, just like you suggested. I have something in mind to suggest, but first, tell something, do you have Cisco Telepresence MCU or Cisco TMS with provisioning enable?

Regards

Paulo Souza

Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Paulo Souza Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Hi Paulo,

I know CPL scripts are not the best way to get what i want, also it is not fully supported by Cisco, so I understand it is only an alternative!

We have indeed several MCUs and TMS 13.2. And thanks to you, provisioning would fit our needs exactly!

However, we actually dont have provisioning extension installed and no Findme.

So I will try to push it, and if its not possible/not validated to our company, we need to go with CPL scipts, i believe we can modify the sources using Regex variables within the CPLs.

Becasue SIP is not vlaidated here, is provisioning also working with H323 clients?

Thanks,

Thomas

I got it. No problem.  =)

In fact, I am thinking about using MCU for that. Tell something, do your users call the remote system once per day? Or they make severall calls during the day?

Regards

Paulo Souza

Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Paulo Souza Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Hi Thomas,

an example of cpl is below.

xmlns:taa="http://www.tandberg.net/cpl-extensions"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

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

alok@example.com">

1234@cisco.com">

you can add multiple entries in it with adding more location and address sections.

Rgds

Alok

Hi Alok,

Although I think this is a good example, I think it is not going to achieve what Thomas needs, because as Thomas decribed, he doesn't need simply manipulating the source address, in fact, he needs to manipulate source address based upon the dialed number. For example, if you dial X, a replace your source address to X1, but if you dial Y, I replace your source address to Y1. This is because several users are going to use the same endpoint to dial an external system, so the only option you have to know which user is dialling is based upon the dialed number.

Thomas,

Tell me something, do your users call the remote system once per day? Or they make severall calls during the day?

Regards

Paulo Souza

Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Paulo Souza Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Thomas,

This is the suggestion I said that I have in mind: Let's consider the following example:

You have your EX90 registered with the number 5555. Many users will use that unique equipament to dial to your external system the uses the source alias for billing. You will set a standard to the users, they will have to dial "Billing code + Number of the external system". In this example, you have:

EX90 original number = 5555

UserA's billing code = 1000

Number of the external system = 9999

The following CPL script can be used to replace the source alias when the UserA dialls the remote system:

xmlns:taa="http://www.tandberg.net/cpl-extensions"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

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

 

10009999">

   

    

5555">

      source-url-for-message="1000">

    

   

 

It is important to point that, VCS considers the CPL script before considering the search rule, therefore, you must to have a search rule that matches 10009999 and then sends it to the removing the billing code 1000.

The bad point is, you will have to create several entries into the CPL script, basicly one entry per user. But it is gonna work.  =)

Can you try this?

Regards

Paulo Souza

Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Paulo Souza Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Hey Thomas/Paulo,

I have been following this one as I need to improve my understanding of CPL, however, could you also use CPL to RegEx the destination address at the same time as modfying the source address (i.e match "\d{4}(\d{4})", then replace with \1) - or is this better to leave this to the search rule?

Hi cris,

Well, as far as I know, using CPL, you cannot use regex to manipulate the source address, only the destination address. For example, to manipulate the destination with regex, you use the tag location:

xmlns:taa="http://www.tandberg.net/cpl-extensions"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

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

 

*@domain.com">

      1.jabber@domain.com">

     

In the above example, I replacing the destination *@domain.com by *.jabber@domain.com.

However, to manipulate the source, the only option I have is to use the "source-url-for-message" parameter inside the location tag, for example:

another-source@domain.com">

In the above example, I am keeping the destination, but I am replacing the original source address and changing it to "another-source@domain.com". But as you can see, it is totally static, I cant use regex for the source manipulation. So I will have to create too many entries.

Regards

Paulo Souza

Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Paulo Souza Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Hi all,

thank you for your answers guys!

Alok wrote what i thought about, however it seems it is like Paulo said, the entry is static and undependently to destination. But we will work with and maybe find optimized rules.

@Paulo: They dont make many calls, not regulary once day, lets say a few calls per week. How you could achieve that with MCU? but the billing codes look interestings, we will investigate in this. We are talking about 20 users so far, so it wouldnt be a huge amount to implement this.

I have some possibilities now and we can discuss here and test it for implementation. Thank you!

Thomas

If you just need to translate the destination address, so go ahead and use tranforms + search rules. It is not worth to use CPL for this kind of simple task.

Paulo Souza

Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Paulo Souza Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Cris,

Just to add one more cent to your doubt, take a look at this thread:

https://supportforums.cisco.com/thread/2206559

According to Andreas, at this moment, VCS does not support regex to rewrite the source address, only static source rewrite, just like I described above. However, it seems that in the version X8, we will be able to use CPL to rewrite the source address by using regex. 

Paulo Souza

Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Paulo Souza Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Thanks Paulo for correcting, i interpreted the problem a little wrong .

Thomas,

please provide more details and lets continue to explore possiblities

Rgds

Alok

Paulo Souza
VIP Alumni
VIP Alumni

Hi Thomas,

I just made some tests with my MCU and I think that I can address your issue by only using MCU, without any CPL configuration! This is my ace in the hole! XD

Try this and give me a feedback! Lets consider the following example:

EX90 original number = Ex90@domain.com

UserA's desirable source number = 88888@domain.com

Number of the external system = external@domain.com

1 - Go to MCU and pre-register a new SIP endpoint. That is going to be your external system. Use the following parameters:

Name: External System

Use SIP registrar: Check

Adress: external@domain.com

Dial out as: Guest

Configure the other parameters as desirable. If your external system is a bridge the requires you send DTMF, you can use the field DTMF sequence for that.

2 - Schedule a permanent conference in MCU with the following parameters:

Name: 88888

Numeric ID: 88888

Numeric ID registration: Check H323 and SIP registrar

When only guests remain: Disconnect all participants

Invite pre-configured participants: One at least one participant is present

Start Time: Permanent

Configure the other parameters as desirable.

Go to Settings > Conferences and check the parameter Use conference name as caller ID.

3 - From Ex90 endpoint, you can dial de number 88888. Ex90 will join into the conference in MCU, and when it joins, MCU will automatically call the External System using the source address 88888. When EX90 leaves the conference, MCU will automatically disconnect the External System from the conference (because it is being treated as Guest ). If Ex90 dialls into the conference later, the same will happen again, the external system will be automatically dialed and will be disconnected when Ex90 leaves the conference. In another words, everytime Ex90 dials the "desirable source number" 88888, the External System will called from 88888 and will join into the conference with Ex90.

Can you try this??

I hope this help.

Paulo Souza

Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".

Paulo Souza Was my response helpful? Please rate useful replies and remember to mark any solved questions as "answered".