[asterisk-ss7] Set NAI -> Subscriber for outgoing calls
Kaloyan Kovachev
kkovachev at varna.net
Mon Mar 29 05:27:28 CDT 2010
maybe it will be better to check in the code for non blank prefix? Or it
will break some other logic?
On Mon, 29 Mar 2010 13:22:30 +0300, Kaloyan Kovachev <kkovachev at varna.net>
wrote:
> static int ss7_parse_prefix(struct dahdi_pvt *p, const char *number,
char
> *nai)
> {
> int strip = 0;
>
> if (strncmp(number, p->ss7->internationalprefix,
> strlen(p->ss7->internationalprefix)) == 0) {
> strip = strlen(p->ss7->internationalprefix);
> *nai = SS7_NAI_INTERNATIONAL;
> } else if (strncmp(number, p->ss7->nationalprefix,
> strlen(p->ss7->nationalprefix)) == 0) {
> strip = strlen(p->ss7->nationalprefix);
> *nai = SS7_NAI_NATIONAL;
> } else if (strncmp(number, p->ss7->networkroutedprefix,
> strlen(p->ss7->networkroutedprefix)) == 0) {
> strip = strlen(p->ss7->networkroutedprefix);
> *nai = SS7_NAI_NETWORKROUTED;
> } else if (strncmp(number, p->ss7->unknownprefix,
> strlen(p->ss7->unknownprefix)) == 0) {
> strip = strlen(p->ss7->unknownprefix);
> *nai = SS7_NAI_UNKNOWN;
> } else if (strncmp(number, p->ss7->subscriberprefix,
> strlen(p->ss7->subscriberprefix)) == 0) {
> strip = strlen(p->ss7->subscriberprefix);
> *nai = SS7_NAI_SUBSCRIBER;
> } else
> *nai = SS7_NAI_SUBSCRIBER;
>
> return strip;
> }
>
> network routed is matched before subscriber - set
> "ss7_networkroutedprefix=NA", so it wont match on blank
You will need to change also unknown prefix, as it will match next
>
>
> On Sat, 27 Mar 2010 23:41:51 +0200, Peter Petrov <peterpet at mail.ru>
wrote:
>> Brrrrrrrr, why, why , why is networkrouted wneh i set
> subscriberprefix?????
>> Now my conf is this:
>>
>>
>> ss7-mtel-fix*CLI> ss7 show linkset 3
>> SS7 flags: 0x0LI>
>> SS7 linkset 3 status: Up
>> SS7 calling nai: 3
>> SS7 called nai: -1
>> SS7 nationalprefix: 0
>> SS7 internationalprefix: 00
>> SS7 unknownprefix:
>> SS7 networkroutedprefix:
>> SS7 subscriberprefix: 112
>> Switch type: ITU
>> Our point code: 5176
>> SLS shift: 0
>> numlinks: 1
>> numsps: 1
>> ---------------------------------
>> Adjecent SP PC: 121 STATE: UP
>> TRA: GOT SENT T19: not running T21: not running
>> Routes:
>> DPC State T6 T10
>> Link SLC: 0 NetMngSLS: 0
>> State: INSERVICE, UP
>> STD Test: passed
>> Got, sent :
>> Inhibit:
>> Changeover: NO
>> Tx buffer: 0
>> Tx queue: 0
>> Retrans pos 0
>> CO buffer: 0
>> CB buffer: 0
>> Last FSN: 4
>> MTP3timers:
>> ss7-mtel-fix*CLI>
>>
>>
>>
>> chan-dahdi.conf
>>
>> language=en
>> context=blablabla
>> switchtype=euroisdn
>> usecallerid=yes
>> callwaiting=yes
>> usecallingpres=yes
>> signalling=ss7
>> group=3
>> ss7type = itu
>> ss7_explicitacm=yes
>> ss7_autoacm=yes
>> ss7_called_nai=dynamic
>> ss7_calling_nai=national
>> ss7_internationalprefix=00
>> ss7_nationalprefix=0
>> ss7_subscriberprefix=112
>> linkset = 3
>> pointcode = 5176
>> adjpointcode = 121
>> defaultdpc = 118
>> networkindicator=national
>> cicbeginswith = 1
>> channel = 63-77
>> cicbeginswith = 17
>> channel = 79-93
>> sigchan = 78
>> isup_timer.digittimeout = 500
>>
>>
>> and now dialing:......
>>
>>
>>
>>
>>
>>
>> -- Goto (emergency,112,3)
>> -- Executing [112 at emergency:3] Dial("SIP/52461234-00000001",
>> "DAHDI/g3/112,30") in new stack
>> -- Called g3/112
>> Len = 32 [ 87 89 1d 85 76 00 0e 15 01 00 01 00 60 01 0a 00 02 06 04 08
> 10
>> 11 f2 0a 06 03 10 25 64 21 43 00 ]
>> FSN: 9 FIB 1
>> BSN: 7 BIB 1
>>>[0] MSU
>> [ 87 89 1d ]
>> Network Indicator: 2 Priority: 0 User Part: ISUP (5)
>> [ 85 ]
>> OPC 5176 DPC 118 SLS 1
>> [ 76 00 0e 15 ]
>> CIC: 1
>> [ 01 00 ]
>> Message Type: IAM
>> [ 01 ]
>> --FIXED LENGTH PARMS[4]--
>> Nature of Connection Indicator:
>> Satellites in connection: 0
>> Continuity Check: Check not required (0)
>> Outgoing half echo control device: not included
> (0)
>> [ 00 ]
>> Forward Call Indicators:
>> Nat/Intl Call Ind: call to be treated as a
>> national call (0)
>> End to End Method Ind: no end-to-end method(s)
>> available (0)
>> Interworking Ind: no interworking encountered
> (0)
>> End to End Info Ind: no end-to-end information
>> available (0)
>> ISDN User Part Ind: ISDN user part used all the
>> way (1)
>> ISDN User Part Pref Ind: ISDN user part not
>> preferred all the way (1)
>> ISDN Access Ind: originating access ISDN (1)
>> SCCP Method Ind: no indication (0)
>> P-M bits(0) P: 0 O: 0 N: 0 M: 0
>> [ 60 01 ]
>> Calling Party's Category:
>> Category: Ordinary calling subscriber (10)
>> [ 0a ]
>> Transmission Medium Requirements:
>> Speech (0)
>> [ 00 ]
>> --VARIABLE LENGTH PARMS[1]--
>> Called Party Number:
>> Nature of address: 8
>> NI: 0
>> Numbering plan: 1
>> Address signals: 112#
>> [ 04 08 10 11 f2 ]
>> --OPTIONAL PARMS--
>> Calling Party Number:
>> Nature of address: 3
>> NI: 0
>> Numbering plan: 1
>> Presentation: 0
>> Screening: 0
>> ss7-mtel-fix*CLI> Address signals: 52461234
>> [ 0a 06 03 10 25 64 21 43 ]
>>
>> Len = 16 [ 89 88 0d 85 38 94 1d 10 01 00 0c 02 00 02 82 95 ]
>> FSN: 8 FIB 1
>> BSN: 9 BIB 1
>> <[0] MSU
>> [ 89 88 0d ]
>> Network Indicator: 2 Priority: 0 User Part: ISUP (5)
>> [ 85 ]
>> OPC 118 DPC 5176 SLS 1
>> [ 38 94 1d 10 ]
>> CIC: 1
>> [ 01 00 ]
>> Message Type: REL
>> [ 0c ]
>> --VARIABLE LENGTH PARMS[1]--
>> Cause Indicator:
>> Coding Standard: 0
>> Location: 2
>> Cause Class: 1
>> Cause Subclass: 5
>> Cause: Call rejected (21)
>> [ 02 82 95 ]
>>
>> -- Hungup 'DAHDI/63-1'
>> == Everyone is busy/congested at this time (1:0/0/1)
>> -- Executing [112 at emergency:4] Hangup("SIP/52461234-00000001", "")
> in
>> new stack
>> == Spawn extension (emergency, 112, 4) exited non-zero on
>> 'SIP/52461234-00000001'
>> Len = 12 [ 88 8a 09 85 76 00 0e 15 01 00 10 00 ]
>> FSN: 10 FIB 1
>> BSN: 8 BIB 1
>>>[0] MSU
>> [ 88 8a 09 ]
>> Network Indicator: 2 Priority: 0 User Part: ISUP (5)
>> [ 85 ]
>> OPC 5176 DPC 118 SLS 1
>> [ 76 00 0e 15 ]
>> CIC: 1
>> [ 01 00 ]
>> Message Type: RLC
>> [ 10 ]
>>
>>
>> Why now NAI is "8"?????
>>
>>
>>
>> Sat, 27 Mar 2010 22:21:42 +0100 письмо от Domjan Attila
>> <adomjan at tvnet.hu>:
>>
>>> /* Nature of Address Indicator */
>>> #define SS7_NAI_SUBSCRIBER 0x01
>>> #define SS7_NAI_UNKNOWN 0x02
>>> #define SS7_NAI_NATIONAL 0x03
>>> #define SS7_NAI_INTERNATIONAL 0x04
>>> #define SS7_NAI_NETWORKROUTED 0x08
>>>
>>> On Sat, 2010-03-27 at 23:01 +0200, Peter Petrov wrote:
>>> > In this case call is going with NAI ->(8), but
>>> > he dialing with prefix (7), i dont know why.....:(
>>> >
>>> >
>>> >
>>> > Sat, 27 Mar 2010 21:31:53 +0100 письмо от Domjan Attila
>>> > <adomjan at tvnet.hu>:
>>> >
>>> > > in ael for example:
>>> > >
>>> > > 112 => {
>>> > > Dial(g3/07${EXTEN});
>>> > > };
>>> > >
>>> > > _X. => {
>>> > > Dial(g3/${EXTEN});
>>> > > };
>>> > >
>>> > > I manipulate the ${EXTEN} more complex way in my dialplan
>>> > >
>>> > > On Sat, 2010-03-27 at 22:08 +0200, Peter Petrov wrote:
>>> > > > hi,
>>> > > > when i need dial emergency number "112" from my asterisk to
> Telco,
>>> > > > need send call
>>> > > > with NAI - Subscriber, but i dont know how need to do...
>>> > > >
>>> > > > May be i need set variable ss7_subsrcriberprefix=07 <- for
> example
>>> > > > and in dialplan i need set this:
>>> > > >
>>> > > > Dial(DAHDI/g3/07${EXTEN})
>>> > > >
>>> > > > May this is wrong..... I need set subscriber only for this
>>> > > > call.... Please, i need help
>>> > > >
>>> > > >
>>> > > >
>>> > >
>>> > >
>>> > > ATTACHMENT: application/pgp-signature (signature.asc)
>>> > >
>>>
>>>
>>> ATTACHMENT: application/pgp-signature (signature.asc)
>>>
>>
>> --
>> _____________________________________________________________________
>> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>>
>> asterisk-ss7 mailing list
>> To UNSUBSCRIBE or update options visit:
>> http://lists.digium.com/mailman/listinfo/asterisk-ss7
>
> --
> _____________________________________________________________________
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>
> asterisk-ss7 mailing list
> To UNSUBSCRIBE or update options visit:
> http://lists.digium.com/mailman/listinfo/asterisk-ss7
More information about the asterisk-ss7
mailing list