I am having difficulties when trying to set up a voice gateway router on one of our sites in Luxembourg. We have a BRI circuit connected to Cisco 2911 router, telco assigned a number +352-YYYYYY-XX where YYYYYY is the main office number and XX are two digit DID extensions.
I am trying to route the calls with XX extensions to 8100XX and the calls to the main number +352-YYYYYY to 810000
Here is the problem, the telco only seems to be passing the extension number as Called Number as per tests below:
When I called 00352 YYYYYY 02, in show call active voice I can see:
OriginalCalledNumber=02 GwReceivedCalledNumber=02 In debugs we have: Called Party Number i = 0x81, '02'
When I called 00352 YYYYYY 35 :
OriginalCalledNumber=35 GwReceivedCalledNumber=35 In debugs: Called Party Number i = 0x81, '35'
And finally, when I called 00352 YYYYYY
OriginalCalledNumber= OriginalRedirectCalledNumber= No Called Party Number in q931 debugs
And here is the current related pots config:
interface BRI0/0/0 no ip address isdn switch-type basic-net3 isdn point-to-point-setup isdn incoming-voice voice isdn supp-service name calling isdn sending-complete isdn static-tei 0 voice-port 0/0/0 compand-type a-law voice translation-rule 401 rule 1 /^\(.*\)/ /8100\1/ voice translation-profile 4digits translate called 401 dial-peer voice 1 pots translation-profile incoming 4digits incoming called-number . direct-inward-dial ! dial-peer voice 2 pots preference 1 destination-pattern 9T port 0/0/0 !
As expected the YYYYYY-XX calles are being routed correctly to the users but I can't figure out how to set up calls coming to +352-YYYYYY. I can see them hitting the router but getting following message:
Aug 13 09:01:15.125: ISDN BR0/0/0 Q931: TX -> DISCONNECT pd = 8 callref = 0x81 Cause i = 0x809C - Invalid number format (incomplete number)
Any ideas how I can configure them calls to be going to 810000?
I appologise if this is a trivial problem but I am new to VoIP and would really appreciate any help.
You can use ^$ in a translation rule to match the null digit string. I suggest perhaps changing translation-rule 401 to the following:
voice translation-rule 401 rule 1 /^\(.*\)/ /8100\1/ rule 2 /^$/ /810000/
I would warn though that you're probably going to match dial-peer 2, not dial-peer 1. The dot will not match null digits, and dial-peer 2 would likely be picked because it's the most specific choice (with the port 0/0/0 rule). You may need to change dial-peer 1 to the following:
dial-peer voice 1 pots translation-profile incoming 4digits incoming called-number T direct-inward-dial port 0/0/0
Alternatively, you could potentially apply the translation-profile to the voice-port instead... though you would have to make the translation rule more specific to the 2-digit extensions:
rule 1 /^\(..\)$/ /8100\1/