Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Openscape 4000 Imlicit/Exlicit numbers, KNDEF, KNFOR, KNMAT, KNPRE and LINO

Status
Not open for further replies.

GZgidnick

Technical User
Jan 8, 2015
156
0
0
AU
Hi all,

Hoping that we can collaborate on this topic as things are clear as mud.

I have certain scenario where I need to use combination of tools just to achieve correct Calling Party number when traversing the PABX.
Hoping that can start from scratch and build the config with your assistance instead of explaining the shortcomings of my testing here.

The scenario and default NPI/TONs are (forced via SIP Profile):
SIP/CO Trunk---IC(Calling=National\ISDN Called=International\ISDN)---4K---SIP/SBC/MSTeams Trunk(Calling=International\Called=Unknown/ISDN)

This is how the CO call call looks:
[tt] IE: 6 (12) : (6C) Calling party number
21 80 30 34 30 37 30 31 34 34 37 34
National, ISDN, Present. allowed, User provided
0407014470
IE: 7 (12) : (70) Called party number
91 36 31 33 38 36 39 32 30 33 33 37
International, ISDN
61386920337[/tt]

And this is how the call looks when it b/o to MSTeams I end up with this number
[tt] IE: 15 (14) : (6C) Calling party number
11 80 36 31 33 34 30 37 30 31 34 34 37 34
International, ISDN, Present. allowed, User provided
613407014470
IE: 16 ( 6) : (70) Called party number
81 32 30 33 33 37
Unknown, ISDN
20337[/tt]

As seen above the calling number is broken 613407014470, whereas it should appear as 61407014470
At this stage, there is no KNMAT and KNFOR programmed.

From what the PABX does, I can only assume that 0407014470 when transiting considered SUBSCRIBER.
The leading "0" is removed due to KNPRE
[tt]H500: AMO KNPRE STARTED
DPLN | NPI | TON | EXIT | PREFIX |
=====|==========|==========|========|========|
0 | ISDN | INTERNAT | 0 | 0011 |
0 | ISDN | NATIONAL | 0 | 0 |
0 | ISDN | SUBSCR | 0 | |
[/tt]

Then when it hits the LDAT going to MSTeams, it tries to modify the number to the highest level possible International/ISDN as I do note have LINO and in COT and therefore this is not implicit number.
COT: 77 INFO:
DEVICE: INDEP SOURCE: DB
PARAMETER:
TRUNK SIGNALING ANSWER ANS
CALL EXTEND FOR BUSY, RING OR CALL STATE CEBC
DON'T RELEASE CALL TO BUSY HUNT GROUP BSHT
END-OF-DIAL FOR BLOCK IS SET BLOC
SEND NO NODE NUMBER TO PARTNER LWNC
INCOMING CIRCUIT FROM SYSTEM WITHOUT LCR NLCR
TSC-SIGNALING FOR NETWORKWIDE FEATURES (MANDATORY) TSCS
NO FLAG TRACE NOFT
NO TONE NTON

Also understand that relies on the default KNDEF when modifying the Calling number to International\ISDN and therefore prepending CC 61 & AC 3
+------------+--------+--------------+--------------+----------+-----+----+----+
| VIRTUAL | TYPE | ISDN (E.164) | PRIVATE(PNP) | UNKNOWN |POPU-|CAC |DFLT|
| NODE | | CC | L2 | | LA- |PRE-| |
| NUMBER | | AC | L1 | |TION |FIX | |
| | | LC SK | L0 SK | NODECD SK| | | |
| | | PD | PD | NODETRK | | | |
| | | UL | UL | VNRGRP | | | |
+============+========+==============+==============+==========+=====+====+====+
| 1 |OWN | 61 | | | 91| | Y |
| | | 3 | | | | | |
| | | 8679 4| | | | | |
| | | | | NO | | | |
| | | EXT | EXT | | | | |
+ +========+==============+==============+==========+=====+====+====+
| | DPLN | ADPLN | |
+ +========+==============+==============+==========+=====+====+====+
+ | | |
+ +========+==============+==============+==========+=====+====+====+
| |NODEINFO| |
+------------+--------+--------------+--------------+----------+-----+----+----+
+


I can also see this in HISTA
F4066 M8 N0281 NO ACT BPA CP ADVISORY 23-08-31 15:46:20
ALARM CLASS:CENTRAL:023
FORMAT:49
TEST: OUT TRANSH SETUP.CALLING_N.NUMBER
ORIGIN: - - 22 DESTIN: - - 77 BITS:0123456789012345678
0407014474 ISDN unknown - - 22 U-0-------DI-------
613407014474 ISDN inter -N-----------------


The goal is to send the calls to MSTeams with International/ISDN TON but correct format.

Any suggestions welcome.
 
I hesitate to answer here because these things can be a real can of worms.

Number modification goes wrong when somewhere a number becomes incorrectly specified.

Is that incoming calling ID diallable? By that I mean if you went off hook on a normal domestic phone line and dialled 0407014470 - it works? Because I would expect a number specified as national to not be diallable - it would need at least the prefix (from KNPPRE) to be a diallable number. So if that number is diallable, you mention you have forced it to national using the SIP profile. Instead I would force it to ISDN/UNK and set TDCSU ISDNNP and IP for national and international prefix (example 0 and 00), so that 4K can recognise it and format it to national.
 
Understand.

0407014470 is a mobile number, dialable from a landline.

I will try your suggestion tomorrow.

 
What do you get if you dial from a 4K extension into Teams?
 
From 4K to Teams e164 as a consequence of normalisation rules applied to international ranges
 
Hi Morlendi,

Followed your advise, on SIP level overrode the NTP/Ton to ISDN/UNK and tested with CHANGE-TDCSU:pEN=1-17-10-0,ISDNNP=0; & CHANGE-TDCSU:pEN=1-17-10-0,ISDNNP=*;

In both scenarios the outcome is:

IE: 5 ( 2) : (1E) Progress indicator
81 83
Originator is not ISDN
IE: 6 (12) : (6C) Calling party number
11 80 30 34 30 37 30 31 34 34 37 34
International, ISDN, Present. allowed, User provided
0407014470
IE: 7 (12) : (70) Called party number
91 36 31 33 38 36 39 32 30 33 33 37
International, ISDN
61386920337



Resulting in incorrect format when outpulsed to Teams:

IE: 15 (14) : (6C) Calling party number
11 80 36 31 33 34 30 37 30 31 34 34 37 34
International, ISDN, Present. allowed, User provided
613407014470
IE: 16 ( 6) : (70) Called party number
81 32 30 33 33 37
Unknown, ISDN
20337



Referring to the documentation and considering I don't have KNFOR this is likely why ISDN/International is selected:


[sup]Rules for format-dependent modification[/sup]

[sub]RULE:
The format-dependent modification is set up using AMO KNDEF. The
entry of codes to trunks is no longer required.
RULE:
In each node that can be addressed with numbering plan NPI=ISDN
or NPI=PRIVATE, all prefixes and exit code should be set up for the
possible numbering plans using AMO KNPRE!
RULE:
The node format table (AMO KNFOR) should always be set up when
external nodes require a certain format of the numbers or if the
subscribers require a certain display format on their own node. If
KNFOR is not set up, the calling number is brought to the highest
format (e.g. TON=INTERNAT) when incoming and the lowest format
(TON=UNKNOWN) when outgoing by default!

RULE:
For lines through which numbers with prefixes but without an exit are
transferred (e.g. 089 722 4711), the ISDNIP and ISDNNP parameters
must continue to be configured in AMO TDSCU. No prefixes may be
set at tie lines through which OpenScape 4000 specific numbers are
transferred as well. Prefixes for the conversion of normal, implicit
numbers (e.g. 0 089 722 47110) into normal, explicit numbers are to
be set in AMO KNPRE.[/sub]
 
It’s normal for it to be formatted to international, that’s ok and yes you can use knfor and lodr to change that where needed.

The task is really to stop it becoming wrongly marked in the first place, because after that nothing will flow correctly.

I thought we needed to lose the 3 from your area code kndef prefix, it should not be applied here, is that not right ?

On your change tdcsu you wrote both 0 and *, the * will undo. Are you saying you changed it and then put it back after test?

Can you post a
Reg-kndef
Reg-knpre
Reg-knfor
Reg-tdcsu for both trunks
Reg-cot for both trunks

And I’ll try it.

What software version are you? Not that that should make a difference here.
 
Correct the "3" is a problem.
In TDCSU I tried with the ISDN codes and without. Result was same.
v10.1.42.0

ADD-KNDEF:1,OWN,61,3,8679,4,EXT,
,,,,EXT,,,,,
,,,
N,"";
CHANGE-KNDEF: 1 ,,,,,,,,,,,,,,Y,,, ;
ADD-KNDEF:2,OWN,61,2,8208,4,EXT,
,,,,EXT,,,,,
,,,
N,"";
ADD-KNDEF:111,OWN,61,,,,SUB,
,,,,EXT,,,,,
,,,
N,"";
ADD-KNDEF:77,OWN,61,3,8692033,3,EXT,
,,,,EXT,,,,,
,,,
N,"";
ADD-KNDEF:11,OWN,,,,,EXT,
,,,,EXT,8208,4,,,
,,,
N,"";



ADD-KNPRE:0,ISDN,INTERNAT,0,0011;
ADD-KNPRE:0,ISDN,NATIONAL,0,0;
ADD-KNPRE:0,ISDN,SUBSCR,0,;


KNFOR is Empty


TDCSU for SIP CO
ADD-TDCSU:NEW,1-17-010-0,22,22,0,0,1,1,1,"SIMTEX ",0,ECMAV2,8,,NONE,,,,GDTR,N,CO,NONE,N,0,,00,0,,,,31,MANY,22,2,1,1,EMPTY,22,5,N,,,,,,16,8,1,10,,EC&G711&G729A&G729AOPT,"",23,DSC,Y,TRADITIO,0,60,60,HG3550CO,1&&30,N,1,,0,0,0,0,0,N,,NONE;
ADD-COT:22,ANS&CEBC&BSHT&BLOC&LWNC&NLCR&TSCS&LINC&NOFT&NTON;

TDCSU for Teams
ADD-TDCSU:NEW,1-17-011-0,77,22,0,0,1,1,1,"MSTEAMS ",0,ECMAV2,8,,NONE,,,,GDTR,N,TIE,NONE,N,0,,,,,,,31,MANY,77,2,1,1,EMPTY,77,5,N,,,,,,16,8,1,10,,EC&G711&G729A&G729AOPT,"",77,DSC,Y,TRADITIO,0,60,60,HG3550IP,1&&30,Y,1,,0,0,0,0,0,N,,NONE;
ADD-COT:77,ANS&CEBC&BSHT&BLOC&LWNC&NLCR&TSCS&NOFT&NTON;


Thank you


 
I’ll try it but when you tried my suggestion was LINC still in the incoming cot?
 
So with your config and using your calling line ID, I get this on the outgoing transit call.
InfoElem: Calling party number (H'6C)
HexData: 0E1180363133343037303134343730
Length: 14 (H'E)
NumberingPlanIdentification: ISDN / Telephony numbering plan
TypeOfNumber: International Number (H'1)
PresentationIndicator: Presentation allowed
ScreeningIndicator: User provided, not screened
NumberDigits: "613407014470"


But you've got LINC in the cot, you don't want that, you are forcing config to unknown/isdn and stopping further processing at this point.



If I remove LINC it looks like this (still on the outgoing side)
InfoElem: Calling party number (H'6C)
HexData: 0B1180343037303134343730
Length: 11 (H'B)
NumberingPlanIdentification: ISDN / Telephony numbering plan
TypeOfNumber: International Number (H'1)
PresentationIndicator: Presentation allowed
ScreeningIndicator: User provided, not screened
NumberDigits: "407014470"

Now it's lost the 3 which is good, but it's a national number marked as international, which is wrong.


If I configure the ISDNNP/ISDNIP and set it to ISDN/UNK in the SIP profile, leave LINC out, I get
InfoElem: Calling party number (H'6C)
HexData: 0D11803631343037303134343730
Length: 13 (H'D)
NumberingPlanIdentification: ISDN / Telephony numbering plan
TypeOfNumber: International Number (H'1)
PresentationIndicator: Presentation allowed
ScreeningIndicator: User provided, not screened
NumberDigits: "61407014470"

Which is correct, number is good, NPI/TON is correct, from here you can use KNFOR to change it outgoing if you like, but this is the problem you needed to overcome, stop if becoming wrongly marked because everything after is then rubbish.
 
Thank you, you're a gem.
That has worked.

LINC was messing things up.
 
OK, but don't stop at step 2 above, the number might look correct, but it's national marked as international. You need it correct to stop problems further down the line, so you need LINC out, ISDN/UNK in the profile, and 0/00 in the TDCSU.
 
All good sir


IE: 15 (13) : (6C) Calling party number
11 80 36 31 34 30 37 30 31 34 34 37 34
International, ISDN, Present. allowed, User provided
61407014470
IE: 16 ( 6) : (70) Called party number
81 32 30 33 33 37
Unknown, ISDN
20337
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top