02-24-2021 04:48 AM - edited 02-24-2021 04:51 AM
Hi All
We have a requirement to display our caller ID when dialling outbound, at the moment we have multiple ranges going over 3 ISDN 30 lines, BT have just enabled type 5 option for us which allows us to show the original DDI even though the range may not be part of that ISDN when dialling out.
I have checked on our gateways and done a debug, I can see the original number going out, but this does not show up on my mobile, it seems to still hide behind the main number of the line.
The settings we have are below,
Any ideas guys?
interface Serial0/0/0:15
description IMTT209593
no ip address
encapsulation hdlc
isdn switch-type primary-net5
isdn incoming-voice voice
isdn outgoing display-ie
isdn outgoing ie redirecting-number
no cdp enable
!
interface Serial0/0/1:15
description IMTT209592
no ip address
encapsulation hdlc
isdn switch-type primary-net5
isdn incoming-voice voice
isdn outgoing display-ie
isdn outgoing ie redirecting-number
no cdp enable
voice-port 0/0/0:15
translation-profile incoming PSTN-IN-1-0
translation-profile outgoing PSTN-OUT-1-0
echo-cancel coverage 48
no vad
cptone GB
bearer-cap Speech
!
voice-port 0/0/1:15
translation-profile incoming PSTN-IN-1-0
translation-profile outgoing PSTN-OUT-1-0
echo-cancel coverage 48
no vad
cptone GB
bearer-cap Speech
dial-peer voice 9 pots
tone ringback alert-no-PI
description *** ALL OUT PEER ***
destination-pattern 9T
progress_ind alert enable 8
port 0/0/0:15
dial-peer voice 29 pots
tone ringback alert-no-PI
description *** ALL OUT PEER ***
preference 2
destination-pattern 9T
progress_ind alert enable 8
clid restrict
port 0/0/1:15
Debug from Gateway attached
Solved! Go to Solution.
02-24-2021 07:29 AM
@carl_townshend wrote:
I have a feeling we are only sending them 6 digits and they may expect the area code minus the 0 first
so for example 1988567888, they prob need 10 digits
That would be correct. On a BT line with “Presentation Number Type 3,4,5” you need to present the number in National format. As you say, without the leading zero but they probably want TON set as well. We normally send the full number in our installs, so to meet this requirement would need a rule similar to something like this, typically applied to the profile on the voice port if you have multiple dial peers.
voice translation-rule 10
rule 5 /^0/ // type any national
If all your calls need the same area code "1988" then you could create a different rule to add the prefix onto anything with exactly six digits, for example ...
rule 10 /\(^......$\)/ /1988\1/ type any national
03-02-2021 04:01 AM
Add a final rule for anything that wasn't matched by your specific rules, and replace the whole digit string with your preferred default number. For example here rule 10 matches any number of any length and any type. By the way I prefer to use that "type any" match rather than "type unknown"
voice translation-rule 101 rule 1 /^4\(...\)$/ /1871594\1/ type unknown national rule 2 /^3\(...\)$/ /1871593\1/ type unknown national rule 3 /^6\(...\)$/ /1871506\1/ type unknown national rule 10 /.*/ /1988123456/ type any national
03-05-2021 07:59 AM
@carl_townshend wrote:
Basically I put the catch all rule in as you suggested rule 10 /.*/ /18815012345/ type unknown national
We have had a call transferred from our switchboard to a mobile, and it has defaulted to the main number, the "calling number was 049363310847120 (some digits changed for security), would our gateway be able to handle this in the catch all? it appears it didnt work
Looking at the length of the number, could that be an international caller? If so, and the number type was "international" then it won't have matched your rule 10 which matches absolutely any length of contents of the number, but only if the type is "unknown".
That's why I recommended ..
rule 10 /.*/ /1988123456/ type any national
02-24-2021 05:54 AM
If your debug shows the desired calling party number being outpulsed, I would say generically:
- You're sending it malformed which results in the billing telephone number being displayed instead, as the switch has no idea what you're sending.
- The carrier didn't actually remove CPN screening or whatever the feature is on their side.
In my limited ISDN experience, there's not much else do be done as far as calling party number, other than to send what you want in the format the carrier expects. It's up to them to mangle it from there on out.
I'm not familiar with your dial plan, but is a six digit subscriber station number appropriate? Is your mobile then showing some six digit main number? If not then perhaps you need to send a more complete number including a country code, an E164 number, or send the short number and specify a numbering plan? I'm just throwing ideas.
02-24-2021 06:29 AM
Hi Adam
I have a feeling we are only sending them 6 digits and they may expect the area code minus the 0 first
so for example 1988567888, they prob need 10 digits
02-24-2021 07:29 AM
@carl_townshend wrote:
I have a feeling we are only sending them 6 digits and they may expect the area code minus the 0 first
so for example 1988567888, they prob need 10 digits
That would be correct. On a BT line with “Presentation Number Type 3,4,5” you need to present the number in National format. As you say, without the leading zero but they probably want TON set as well. We normally send the full number in our installs, so to meet this requirement would need a rule similar to something like this, typically applied to the profile on the voice port if you have multiple dial peers.
voice translation-rule 10
rule 5 /^0/ // type any national
If all your calls need the same area code "1988" then you could create a different rule to add the prefix onto anything with exactly six digits, for example ...
rule 10 /\(^......$\)/ /1988\1/ type any national
02-24-2021 09:22 AM
Hi Tony
It looks like it did want the area code appended and no leading 0, its all working now
2 things if you can help,
what does the ^ mean in the below rule?
voice translation-rule 101
rule 1 /^4\(...\)$/ /594\1/
also we have 2 isdn lines that dial out, the second one has the command preference 2 on it, what does this mean?
does it only work if the other fails? or does the system pump the 1st call through dial peer 1 and then when another comes in it goes to the second dial peer?
Many thanks
02-24-2021 10:57 AM
^ in the translation rule means start of match string and $ means end of string. Preference 2 means that it's lower preference than dial peer 1 that you write have preference 1. All calls will go via the port assigned to dial peer 1 as long as there are free channels or that the port is in the up state. If neither of these are true the call will go out via dial peer 2.
For in-dept information on how dial peer matching works in IOS have look at this fantastic document. In Depth Explanation of Cisco IOS and IOS-XE Call Routing - Cisco
03-01-2021 09:54 AM
Hi All
We finally got this working with our provider.
One more question, is it possible on our Gateway if an unknown number range from the inside tries to dial out, we can withhold the number or change the source number to hide behind a certain clid?
Many thanks
Carl
03-01-2021 10:33 AM
Yes that’s possible. Normally you would have specific translations for the number ranges that you would have at a given site and then a catch all other numbers as the last rule in the profile.
03-01-2021 11:31 AM
On a BT ISDN if an invalid CLI is presented, the network will replace that with the pilot/billing number. As you mentioned in your original post. However some installation the billing number isn't their normal or preferred default number, in which case you would want to create a "catch all" rule to replace anything unrecognised with your preferred number. If you post up the rules you have in place at the moment we can suggest something.
03-02-2021 02:39 AM
Hi Tony, thanks for responding.
So the current translation patterns for outbound numbers are the below
voice translation-rule 101
rule 1 /^4\(...\)$/ /1871594\1/ type unknown national
rule 2 /^3\(...\)$/ /1871593\1/ type unknown national
rule 3 /^6\(...\)$/ /1871506\1/ type unknown national
!
voice translation-profile PSTN-OUT-1-0
translate calling 101
!
voice-port 0/0/0:15
translation-profile incoming PSTN-IN-1-0
translation-profile outgoing PSTN-OUT-1-0
echo-cancel coverage 48
no vad
cptone GB
bearer-cap Speech
!
voice-port 0/0/1:15
translation-profile incoming PSTN-IN-1-0
translation-profile outgoing PSTN-OUT-1-0
echo-cancel coverage 48
no vad
cptone GB
bearer-cap Speech
03-02-2021 04:01 AM
Add a final rule for anything that wasn't matched by your specific rules, and replace the whole digit string with your preferred default number. For example here rule 10 matches any number of any length and any type. By the way I prefer to use that "type any" match rather than "type unknown"
voice translation-rule 101 rule 1 /^4\(...\)$/ /1871594\1/ type unknown national rule 2 /^3\(...\)$/ /1871593\1/ type unknown national rule 3 /^6\(...\)$/ /1871506\1/ type unknown national rule 10 /.*/ /1988123456/ type any national
03-02-2021 05:16 AM
Tony, you are a star
One last thing, could you quickly explain what the translations in this are actually doing ?
Many thanks
03-02-2021 08:46 AM
voice translation-rule 101
rule 1 /^4\(...\)$/ /1871594\1/ type unknown national
On the match side (left) it matches numbers that starts with 4 and is four digits in length and copy the three digits after the 4 into memory. On the replace side (right) it prefixes 1871594 in front of the 3 digits that was copied into memory by the \1.
It also matches the type, on the match side it has to be unknown and it is changed on the replace side with national.
^ means start of string and $ means end of sting.
rule 2 /^3\(...\)$/ /1871593\1/ type unknown national
On the match side (left) it matches numbers that starts with 3 and is four digits in length and copy the three digits after the 4 into memory. On the replace side (right) it prefixes 1871593 in front of the 3 digits that was copied into memory by the \1.
It also matches the type, on the match side it has to be unknown and it is changed on the replace side with national.
rule 3 /^6\(...\)$/ /1871506\1/ type unknown national
On the match side (left) it matches numbers that starts with 6 and is four digits in length and copy the three digits after the 4 into memory. On the replace side (right) it prefixes 1871506 in front of the 3 digits that was copied into memory by the \1.
It also matches the type, on the match side it has to be unknown and it is changed on the replace side with national.
rule 10 /.*/ /1988123456/ type any national
On the match side it matches anything, including null and replaces that with 1988123456.
It also matches the type, on the match side it can be any type and it is set on the replace side to national.
On a side note you could if you want combine rule 1 and 2 into this.
rule 1 /^\([34]...\)$/ /187159\1/ type unknown national
The part in square brackets means that the number can be 3 or 4 and it will copy the entire four digits into memory and prefix 187159 infront.
03-02-2021 11:23 AM
Great explanation Roger. Appreciate all the help and advice.
Big thumbs up
03-02-2021 08:48 AM
For additional information on how voice translation rules and profiles works have a look at this document. Voice Translation Rules - Cisco
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide