07-19-2021 05:44 AM
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?
07-19-2021 06:25 AM - edited 07-19-2021 06:27 AM
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.
07-19-2021 06:39 AM
Does it mean that (.) matches variable-length dial string like (T) ?
07-19-2021 10:43 PM - edited 07-19-2021 10:49 PM
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.
07-19-2021 06:32 AM
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:
07-19-2021 06:51 AM
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 .
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.
07-19-2021 07:00 AM
As I said previously and simply. Does it mean that (.) matches variable length dial string like (T)
07-19-2021 07:50 AM - edited 07-19-2021 08:01 AM
(.) 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
07-19-2021 09:23 AM
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?
07-19-2021 10:23 AM - edited 07-19-2021 10:47 AM
(.) 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:
07-19-2021 12:56 PM
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.
07-19-2021 10:19 PM
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.
07-19-2021 08:29 AM - edited 07-19-2021 08:34 AM
In simple word . Is like X which means match only one digit between [0-9] and T 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”.
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