cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
3413
Views
20
Helpful
12
Replies

"Incoming Called-Number . " what the "DOT " stands for? single digit or variable-length dial string?

Meddane
VIP
VIP

In many deployment in the inbound dial peer people use the incoming Called-Number command to match a called number but: Knowing that the (.) matches any entered digit while the (T) matches variable-length dial string.

 

So "Incoming Called-Number . " in popular deployments what the "DOT " stands for? single digit or variable-length dial string?

incoming called-number.PNG

 

12 Replies 12

A dot equals one single digit or a plus, + or 0-9. That said it matches also on strings that are longer than one digit. It’s just that it matches the first digit in the string.



Response Signature


Does it mean that (.) matches variable-length dial string like (T) ?

Not really. A dot match one single digit, but if the incoming called number is 123456789 it will match the 1 and route the called number in its entirety, aka 123456789.

The reason for why this is common on inbound dial peers is that your want it to match all called numbers, so you do not have a need to be so specific with the match, a single digit is all that is needed for the inbound dial peer to match.



Response Signature


Scott Leport
Level 7
Level 7

The dot is a single digit, but when used in conjunction with the T, it can be used in variable-length dial-plans. In the real world, I've typically seen ".T" destination-pattern used for the outgoing dial-peer to the PSTN / ITSP provider.

Also, please review the section in this link under the Special Note on Variable-Length Dial Plans section:

https://www.cisco.com/c/en/us/support/docs/voice/call-routing-dial-plans/14074-in-dial-peer-match.html#topic10

 

Special Note on POTS Calls with Empty Calling Number Field

Assume this configuration:

dial-peer voice 1 pots
   destination-pattern 9T
   port 1/0:1

Now, assume that an incoming call arrives with no calling number information and is matched with the POTS dial peer based on the destination-pattern 9Tcommand. In this case, the Cisco IOS router or gateway uses the "9" digit as the calling number and forwards the call to the corresponding device, such as CallManager or the IOS Gateway. In order to not replace the empty calling number field, create a dummy POTS dial peer with just the incoming called-numbercommand configured. Because the incoming called-number statement has higher priority than destination pattern for inbound POTS matching, dial-peer voice 2 becomes the POTS dial peer used.

dial-peer voice 1 pots 
    destination-pattern 9T
    port 1/0:1
!
dial-peer voice 2 pots
    incoming called-number .

Special Note on Empty Called Number

The Warning message shown here, which displays when dial-peer is configured with incoming called-number T, might raise questions in regards to the dial-peer selection with an empty called number from an actual router.

RTR(config)#dial-peer voice 1 pots
RTR(config-dial-peer)#incoming called-number T 

Warning: Pattern T defines a match with zero or more digits and hence could 
match with an empty number.  If this is not the desired behaviour please 
configure pattern .T instead to match on one or more digits
RTR(config-dial-peer)#

Incoming dial-peer match with an empty called number:

  • A "null" called-number is considered "less" qualified compared to a port number and/or in some cases answer-address. Therefore, a match based on a "null" called number will occur ONLY if there is no match based on either answer-address or port-number.

  • In case of overlap dialing, a "null" called number will not match "incoming called-number T" because timeout has not occurred.

  • A "null" called-number will match "incoming called-number T" only in case of ENBLOCK and there is no match either because of answer-address and port-number. The warning you see when you configure "incoming called-number T" refers to this specific case.

https://www.cisco.com/c/en/us/support/docs/voice/call-routing-dial-plans/14074-in-dial-peer-match.html

 

 



Response Signature


As I said previously and simply. Does it mean that (.) matches variable length dial string like (T)

(.)  it mach single digit, below example make it clear for you.

 

Assume the incoming called number (DNIS) is "81690".  Dial peer 2 is matched.

 

dial-peer voice 2 pots

incoming called-number 816..

direct-inward-dial

 

 

 

Regarding incoming called-number T,

 

if you need to match one or more digits, use .T . If you need to  match zero or more digits use T



Response Signature


In many deployment people use the pattern (.) in the incoming called-number command , but the DNIS is expected to be more than one digit, let's says the called number is 86662001, and only the incoming called-number . is configured, does it means that (.) matches 86662001 since many people say that the incoming called-number . matches one or more digit?

(.) match  first digit 8 in 86662001

 

I have 2 block PRI in my lab, 3XX and 2XX.

 

First case, i used incoming called-number 39. so when i called 399 gateway used dial-peer 20 as incoming dial-peer. For 299 call, gateway used default dial-peer as incoming dial-peer because 299 doesn't match  with incoming called 39..

 

=================================================================================================

incoming called-number 39.

 

dial-peer voice 100 voip
destination-pattern [23]..
session target ipv4:10.60.51.10
dtmf-relay h245-alphanumeric
no vad
dial-peer voice 20 pots
incoming called-number 39.
direct-inward-dial
jlrvg#debug voice dialpeer
voip dialpeer default debugging is on
jlrvg#
Jul 19 17:00:24.842: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Calling Number=99028165, Called Number=399, Voice-Interface=0x7FB0C43B6A68,
Timeout=TRUE, Peer Encap Type=ENCAP_VOICE, Peer Search Type=PEER_TYPE_VOICE,
Peer Info Type=DIALPEER_INFO_SPEECH
Jul 19 17:00:24.842: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Result=Success(0) after DP_MATCH_INCOMING_DNIS; Incoming Dial-peer=20

 

dial-peer voice 100 voip
destination-pattern [23]..
session target ipv4:10.60.51.10
dtmf-relay h245-alphanumeric
no vad
dial-peer voice 20 pots
incoming called-number 39.
direct-inward-dial
jlrvg#
Jul 19 17:05:59.747: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Calling Number=99028165, Called Number=299, Voice-Interface=0x7FB0C43B6A68,
Timeout=TRUE, Peer Encap Type=ENCAP_VOICE, Peer Search Type=PEER_TYPE_VOICE,
Peer Info Type=DIALPEER_INFO_SPEECH
Jul 19 17:05:59.747: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Result=NO_MATCH(-1) After All Match Rules Attempt
Jul 19 17:05:59.747: //-1/xxxxxxxxxxxx/DPM/dpMatchSafModulePlugin:
dialstring=NULL, saf_enabled=0, saf_dndb_lookup=0, dp_result=-1
Jul 19 17:05:59.747: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:

 

=================================================================================================

in this case, i used incoming called-number 3.... incoming call need to match 4 digit. so when i called 399 it didn't match dial-peer 20. and used default dial-peer. The dial-peer 20 will get matched if i call 3999.

 

 

jlrvg#sh run | sec dial
dial-peer voice 100 voip
destination-pattern [23]..
session target ipv4:10.60.51.10
dtmf-relay h245-alphanumeric
no vad
dial-peer voice 20 pots
incoming called-number 3...
direct-inward-dial
jlrvg#
Jul 19 17:17:10.177: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Calling Number=99028165, Called Number=399, Voice-Interface=0x7FB0C43B6A68,
Timeout=TRUE, Peer Encap Type=ENCAP_VOICE, Peer Search Type=PEER_TYPE_VOICE,
Peer Info Type=DIALPEER_INFO_SPEECH
Jul 19 17:17:10.177: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Result=NO_MATCH(-1) After All Match Rules Attempt
Jul 19 17:17:10.177: //-1/xxxxxxxxxxxx/DPM/dpMatchSafModulePlugin:
dialstring=NULL, saf_enabled=0, saf_dndb_lookup=0, dp_result=-1
Jul 19 17:17:10.177: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Calling Number=99028165, Called Number=399, Voice-Interface=0x0,
Timeout=TRUE, Peer Encap Type=ENCAP_VOICE, Peer Search Type=PEER_TYPE_VOICE,

 

For the above case, if i use incoming called-number .T, Both 399,299 3999 everything matches. Because, with .T it match one or more digit . Unfortunately, i cannot call 3999.

 

dial-peer voice 100 voip
destination-pattern [23]..
session target ipv4:10.60.51.10
dtmf-relay h245-alphanumeric
no vad
dial-peer voice 20 pots
incoming called-number .T
direct-inward-dial
jlrvg#
Jul 19 17:41:09.019: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Calling Number=99028165, Called Number=399, Voice-Interface=0x7FB0C43B6A68,
Timeout=TRUE, Peer Encap Type=ENCAP_VOICE, Peer Search Type=PEER_TYPE_VOICE,
Peer Info Type=DIALPEER_INFO_SPEECH
Jul 19 17:41:09.020: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Result=Success(0) after DP_MATCH_INCOMING_DNIS; Incoming Dial-peer=20

 

jlrvg#
Jul 19 17:44:58.182: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Calling Number=99028165, Called Number=299, Voice-Interface=0x7FB0C43B6A68,
Timeout=TRUE, Peer Encap Type=ENCAP_VOICE, Peer Search Type=PEER_TYPE_VOICE,
Peer Info Type=DIALPEER_INFO_SPEECH
Jul 19 17:44:58.182: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Result=Success(0) after DP_MATCH_INCOMING_DNIS; Incoming Dial-peer=20

=================================================================================================

 

=================================================================================================

 

When i used  incoming called-number .  Both 399 & 299 call matched dial-peer 20 and incoming dial-peer.  Because, this time it tried to match just one digit.

 

 

incoming called-number .

dial-peer voice 100 voip
destination-pattern [23]..
session target ipv4:10.60.51.10
dtmf-relay h245-alphanumeric
no vad
dial-peer voice 20 pots
incoming called-number .
direct-inward-dial
jlrvg#
Jul 19 17:12:24.742: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Calling Number=99028165, Called Number=299, Voice-Interface=0x7FB0C43B6A68,
Timeout=TRUE, Peer Encap Type=ENCAP_VOICE, Peer Search Type=PEER_TYPE_VOICE,
Peer Info Type=DIALPEER_INFO_SPEECH
Jul 19 17:12:24.743: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Result=Success(0) after DP_MATCH_INCOMING_DNIS; Incoming Dial-peer=20

 

 

jlrvg#
Jul 19 17:12:52.023: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Calling Number=99028165, Called Number=399, Voice-Interface=0x7FB0C43B6A68,
Timeout=TRUE, Peer Encap Type=ENCAP_VOICE, Peer Search Type=PEER_TYPE_VOICE,
Peer Info Type=DIALPEER_INFO_SPEECH
Jul 19 17:12:52.023: //-1/xxxxxxxxxxxx/DPM/dpAssociateIncomingPeerCore:
Result=Success(0) after DP_MATCH_INCOMING_DNIS; Incoming Dial-peer=20
Jul 19 17:12:52.023: //-1/xxxxxxxxxxxx/DPM/dpMatchSafModulePlugin:

 

 



Response Signature


Ok i agree with you. But I noticed in many deployment the use of incoming called-number . To match all DNIS number regardless the length but at the same we know that . Dot per definition matches only a single digit.

In my last reply i mentioned, what happens when you use incoming called-number(.). Its not matching the entire DNIS. its matching just one digit. if you need to match two digit you need to use .. if three ... if four .... etc..

 

If its variable length DNIS we need to use  incoming called-numer  .T  . if you need to match three digit use incoming called-number ...

If you need to match just single digit use,incoming called-numer  .

 

Since incoming called-number . works for inbound match  we keep following this.

 



Response Signature


In simple word Is like which means match only one digit between [0-9] and is like ! which means any digit between [0-9] (till 15 second inter digit timeout)

Same Wildcards like CUCM route pattern.

 

Pls rate all useful post!!

Pls rate if its “Helpful”. If this answered your question pls click “Accept as Solution”. 

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: