Generic address

Associated variants: ANSI 92, ANSI 95

Identifies the type of address, numbering plan, and actual address presented in a call setup.

typedef struct _genAddr   /* Generic Address              */
{
    ElmtHdr eh;           /* element header               */
    TknU8   typeOfAddr;   /* type of address              */
    TknU8   natAddr;      /* nature of address indicator  */
    TknU8   oddEven;      /* odd or even address signal   */
    TknU8   reserved;     /* reserved for national use    */
    TknU8   presRest;     /* presentation restriction     */
    TknU8   numPlan1;     /* numbering plan               */
    TknU8   spare;        /* spare bits                   */
    TknStr  addrSig;      /* addressing signal            */
} SiGenAddr;

The fields in the SiGenAddr structure are encoded as follows:

Field

Value

typeOfAddr

Type of address. Defined values:

0x00 = DIALNUM

0x01 = DESTNUM

0x02 = SUPADDR_FAIL

0x03 = SUPADDR_NOTSCREEN

0x04 = COMPLNUM

natAddr

Nature of address indicator. Defined values for all variants:

0x01 = SUBSNUM   Subscriber number

0x03 = NATNUM   Nationally significant number

0x04 = INTNATNUM   International number

Additional values for ANSI:

0x71 = SUBSNUMOPREQ   Subscriber number operator requested

0x72 = NATNUMOPREQ   National number operator requested

0x73 = INTNATNUMOPREQ   International number operator requested

0x74 = NONUMPRESOPREQ   No number present operator requested

0x75 = NONUMPRESCUTTHRU   No number present cut-through call to carrier

0x76 = NINEFIVEOH   950+ service

0x77 = TSTLINETSTCODE   Test line test code

oddEven

Specifies whether the number of digits in the addrSig field is even or odd. If even, the last octet contains two digits. If odd, the last octet contains only one digit and the most significant four bits not used. Defined values:

0 = NMB_EVEN

1 = NMB_ODD

Reserved

Reserved bits.

presRest

Presentation restriction. Defined values:

0x00 = PRESALLOW   Presentation allowed

0x01 = PRESREST   Presentation restricted

0x02 = ADDRNOAVAIL   Address not available

numPlan1

Numbering plan. Defined values for all supported variants except BICC:

0x00 = NP_UNK   Unknown

0x01 = NP_ISDN   ISDN/telephony according to  E.164/E.163

0x02 = NP_TEL   Telephony numbering according to E.163

0x03 = NP_DATA   Data numbering according to X.121

0x04 = NP_TELEX   Telex number according to F.69

0x08 = NP_NATIONAL   National standard numbering

0x09 = NP_PRIVATE   Private numbering plan

0x0f = NP_EXT   Reserved for extension

Spare

Spare bits.

addrSig

Actual address digits, encoded as shown in the following tables.


For the addrSig field, the actual address digits are encoded as follows:

Octet 1

2nd address digit

1st (most significant) address digit

...

...

...

Octet n

m + 1th address digit or filler

mth address digit


where each digit is encoded with the following bit pattern:

Bit pattern

Digit/signal

0000

0

0001

1

0010

2

0011

3

0100

4

0101

5

0110

6

0111

7

1000

8

1001

9

1010

spare

1011

code 11

1100

code 12

1101

spare

1110

spare

1111

ST


Tokens

Token

ANSI 92

ANSI 95

typeOfAddr

*

*

natAddr

*

*

oddEven

*

*

reserved

3(1-2)

3(1-2)

presRest

*

*

numPlan1

*

*

spare

3(8)

3(8)

addrSig

*

*