SPA9000 via Cisco 2821 ISR and BRI Interfaces: Outgoing Caller ID

Answered Question
Jun 8th, 2009

Hello

In a voice network setup we have a SPA9000 PBX which is connected via SIP to a Cisco 2801, which has 4 ISDN BRI interfaces to the PSTN.

The 2801 ISR is shared with another company, which have Cisco IP Phones (not Linksys ... by Cisco ... whatever it is called now ;) ). They own the router and gracefully let us share it with them. All this is located in Switzerland.

On the Cisco 2801 I've configured a dial peer (for outgoing calls) like that:

dial-peer voice 1 pots

  destination-pattern 7T

  port 0/2/0 <-- this is "our" bri interface

I've configured the dial plan of the SPA9000 to append a 7 to all outgoing calls. So "our" (company2) telephone network doesn't overlap with the "other" company's phone network. The dial-peer then removes this leading 7 because of the destination-pattern.

This all works great but here comes the question:

How can I "mangle" the outgoing caller id if someone places a call from the VoIP network to the PSTN (over ISDN)? In the documentation of the SPA9000 the only case mentioned is with the presence of a SIP trunk and a SIP provider (which doesn't exist yet within the national provider Swisscom).

Should I even do this on the SPA9000? Any help appreciated.

Cheers

I have this problem too.
0 votes
Correct Answer by Marcos Hernandez about 7 years 6 months ago

Very seldom do PSTN providers let you manipulate the CLID arbitrarily, but let's give it a shot. This is the config. Here "AAAA" is the original calling number, which is replaced by "BBBB" or "CCCC" depending on the dial pattern:

!

voice translation-rule 100

rule 1 /AAAA/ /BBBB/

!

voice translation-profile Dial0

translate calling 100

!

!

voice translation-rule 200

rule 1 /AAAA/ /CCCC/

!

voice translation-profile Dial9

translate calling 200

!

!

dial-peer voice 100 pots

destination-pattern 0.T

translation-profile outgoing Dial0

port 0/2/0

!

dial-peer voice 200 pots

destination-pattern 9.T

translation-profile outgoing Dial9

port 0/2/0

!

Marcos

Correct Answer by Marcos Hernandez about 7 years 6 months ago

In their graciousness, the 2800 owners might let you add a few commands to the ISR that could do the trick. With translation rules, you can modify the caller id and present it to the PSTN in any way you want. Now, it has to be something that they expect and understand, since most ISDN circuits will rewrite CLID if it is not (to avoid toll fraud, CLID spoofing, etc.).

What exactly do you want to do with the CLID? I can send you a sample config.

Thanks,

Marcos Hernandez
Technical Marketing Engineer
Cisco Systems, Inc.

  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 5 (2 ratings)
Loading.
Correct Answer
Marcos Hernandez Mon, 06/08/2009 - 07:04

In their graciousness, the 2800 owners might let you add a few commands to the ISR that could do the trick. With translation rules, you can modify the caller id and present it to the PSTN in any way you want. Now, it has to be something that they expect and understand, since most ISDN circuits will rewrite CLID if it is not (to avoid toll fraud, CLID spoofing, etc.).

What exactly do you want to do with the CLID? I can send you a sample config.

Thanks,

Marcos Hernandez
Technical Marketing Engineer
Cisco Systems, Inc.

mironetgmbh Mon, 06/08/2009 - 08:10

Currently we dial 0 to reach the PSTN.

This is the scenario I want to implement:

Person A in the company dials 0 to place a public call (to reach customer B). Customer B sees our "primary" telephone number.

Later the same person A dials 9 to place a public call (to reach customer C). The SPA9000 is configured to use Line 2 when someone dials 9 for outgoing calls instead of 0. Now customer C should see another number of our phone number range.

I've "enable" access to the router. So what should I configure?

Should I configure a translation-profile in the dial-peer?

I'm not sure tough what the telephone company expects ... but I'm willing to dig for this in their documentation library.

Correct Answer
Marcos Hernandez Mon, 06/08/2009 - 08:36

Very seldom do PSTN providers let you manipulate the CLID arbitrarily, but let's give it a shot. This is the config. Here "AAAA" is the original calling number, which is replaced by "BBBB" or "CCCC" depending on the dial pattern:

!

voice translation-rule 100

rule 1 /AAAA/ /BBBB/

!

voice translation-profile Dial0

translate calling 100

!

!

voice translation-rule 200

rule 1 /AAAA/ /CCCC/

!

voice translation-profile Dial9

translate calling 200

!

!

dial-peer voice 100 pots

destination-pattern 0.T

translation-profile outgoing Dial0

port 0/2/0

!

dial-peer voice 200 pots

destination-pattern 9.T

translation-profile outgoing Dial9

port 0/2/0

!

Marcos

mironetgmbh Mon, 06/08/2009 - 09:35

Many thanks for your sample config :)

I think this should work perfectly, if the telco accepts the caller id. I'm going to check this out and report back here for sharing.

mironetgmbh Mon, 06/08/2009 - 11:23

Ok. It works!

The telco accepts caller ids from within the range. In Switzerland we have a 10-digit dial plan (e.g. 0xx xxx xx xx) for national calls.

I've set the calling translation rules to something like this:

rule 1 /1694/ /0xxxxxxx99/

"1694" is how the SPA9000 announces itself to the 2800. I could change that, but it's not necessary as long as it's unique.

"... 99" is the last number in our DDI range. So it is not "spoofed" and therefore accepted by the telco (Swisscom).

Note that the SPA9000 always announces itself as 1694 (or whatever is configured). It doesn't matter which extension is making the call nor does it matter which line the SPA9000/IP Phone selected for the outgoing call.

The calls are routed according to their called number, which is mangled on the SPA9000 depending on what line they are on. Line 1 prepends 790, Line 2 795 etc. so the dial-peers could match (destination-pattern). These number prefixes get stripped away by the translation rule to make the number recognisable for the PSTN.

translation-profiles/rules are really cool! Thank you Cisco for such a great product like the ISR 2800 :)