[asterisk-dev] ISDN Calling/Caller/Redirecting Subaddress support work.

Richard Mudgett rmudgett at digium.com
Thu Sep 24 19:28:31 CDT 2009


I forgot about the called subaddress.  We'll also need to add to CALLERID the following for the called/dialed subaddress:
CALLERID(dnid-subaddr)
CALLERID(dnid-subaddr-type)
CALLERID(dnid-subaddr-valid)
CALLERID(dnid-subaddr-odd)

Put simply CALLERID is information going to the called party describing the caller.  CONNECTEDLINE is information going back to the caller about the party that the caller actually got connected.  CONNECTEDLINE is also useful in call transfers using intercept macros.  REDIRECTING(to-xxx) is information sent back to the caller indicating to which party the call has been redirected.  REDIRECTING(from-xxx) is information sent to the next recipient of the call indicating from which party the call was redirected.

The reason I do not think the REDIRECTING function will really need subaddress support is because the network only cares about indicating the directory number a call was redirected to/from.  The called number and subaddress are updated to address the next party in a redirect.  The connected line indicates the number and subaddress ultimately connected.

Dialing with a number and subaddress could be done something like:
Dial(DAHDI/g1/5551212:1234)
Where the ':' separates the number from the subaddress.  Some other separator may need to be chosen if ':' is not available.  Although, it does seem more natural to use a colon in a similar manner as an IP address with port (123.123.123.123:5060).

A project subset idea to consider.  To get similar functionality as your original patch, you could do the CALLERID(subaddr) and CALLERID(dnid-subaddr) value series along with the Dial() extension in chan_dahdi.

Do check out the asterisk/team/rmudgett/subaddr and libpri/team/rmudgett/subaddr branches.  I created them specifically for this purpose.

I'll comment on the issue patches in mantis tomorrow.

Richard


----- Original Message -----
From: "Alec Davis" <sivad.a at paradise.net.nz>
To: "Asterisk Developers Mailing List" <asterisk-dev at lists.digium.com>
Sent: Thursday, September 24, 2009 4:28:52 PM GMT -06:00 US/Canada Central
Subject: Re: [asterisk-dev] ISDN Calling/Caller/Redirecting Subaddress support work.

So to confirm;
	CALLERID interacts with the 'calling subaddress' which is the
caller's subaddress, I get that.
	CONNECTEDLINE, should deal with the 'called subaddress', to be
honest I haven't used CONNECTEDLINE line yet.

Going from memory, ISDN supports 'redirect number', and 'redirect
subaddress', are these not related to asterisk's REDIRECTING function, need
to do more study. Asterisk doesn't support ISDN REDIRECT yet does it?

I'll upload what I have so far, to check I'm on the right path.

Alec



-----Original Message-----
From: asterisk-dev-bounces at lists.digium.com
[mailto:asterisk-dev-bounces at lists.digium.com] On Behalf Of Richard Mudgett
Sent: Friday, 25 September 2009 6:10 a.m.
To: Asterisk Developers Mailing List
Subject: Re: [asterisk-dev] ISDN Calling/Caller/Redirecting Subaddress
support work.

I have been planning to get minimal support for subaddressing in asterisk
core before 1.6.3 is branched to minimize the impact of binary
incompatibility from changes to the ast_channel structure.  The channel
drivers could later be enhanced to use the subaddressing information.  I
just have not had time to work on it yet.

I have been thinking that:
CALLERID(subaddr) - Set/read caller id subaddress (Will be interpreted as
ASCII hex if the subaddress type is user_specified because it is likely BCD
encoded.)
CALLERID(subaddr-valid) - Set/read  Setting any other field will make this
true.  Setting to false will invalidate the other subaddress fields and
probably should reinitialize them.
CALLERID(subaddr-type) - Set/read caller id subaddress type
(nsap/user_specified)
CALLERID(subaddr-odd) - Set/read caller id subaddress odd/even indicator
(true/false for odd/even)

CONNECTEDLINE would be extended the same as CALLERID.

REDIRECTING would be extended in a similar manner but with the to/from party
indicator prefixed:
to-subaddr, to-subaddr-valid, to-subaddr-type, to-subaddr-odd from-subaddr,
from-subaddr-valid, from-subaddr-type, from-subaddr-odd

The actual use of subaddr with REDIRECTING is somewhat problematical since
ISDN does not define any specific subaddressing ie's for redirection.  ISDN
exchanges the subaddresses for redirection separately.  I have been thinking
that the REDIRECTING function may not actually need support for
subaddressing because of when ISDN sends the subaddressing updates.  The
updates would turn into CONNECTEDLINE updates instead.

The asterisk core updates should follow how the ast_party_id_xxx() functions
in channel.c behave with similar ast_party_subaddress_xxx() functions as
needed.

I'll create an asterisk/team/rmudgett/subaddr branch from trunk with the
appropriate changes to the ast_channel structure so you would have something
to start with.  I'll also create a libpri/team/rmudgett/subaddr branch from
libpri/branches/1.4.  You can use
https://issues.asterisk.org/view.php?id=15604 to post patches since that is
still its purpose and I'll merge them into those branches.

Looking forward to further developments.

Richard

----- Original Message -----
From: "Alec Davis" <sivad.a at paradise.net.nz>
To: "Asterisk Developers Mailing List" <asterisk-dev at lists.digium.com>
Sent: Wednesday, September 23, 2009 5:13:41 PM GMT -06:00 US/Canada Central
Subject: Re: [asterisk-dev] ISDN Calling/Caller/Redirecting Subaddress
support work.



No response. Presume no further work, if so please speak up. 

I've now started work on libpri, to use the appropriate infrastucture thats
been put in place, all bound by an '#if
defined(POSSIBLE_FUTURE_SUBADDRESS_SUPPORT)'. 

But next is, how is it anticipated that CALLERID, CONNECTEDLINE and
REDIRECTING will interact with the subaddr. 

I'm proposing the following;
CALLERID(subaddr) = set/read the CallingSubAddr
CONNECTEDLINE(subaddr) = set/read the CalledSubAddr
REDIRECTING(subaddr) = set/read the RedirectingSubAddr 

Maybe I'm wrong, any further comments, which may help to get this done
correctly first time. 

Alec Davis 



From: asterisk-dev-bounces at lists.digium.com
[mailto:asterisk-dev-bounces at lists.digium.com] On Behalf Of Alec Davis
Sent: Wednesday, 23 September 2009 8:02 a.m. 
To: asterisk-dev at lists.digium.com
Subject: [asterisk-dev] ISDN Calling/Caller/Redirecting Subaddress support
work. 



Before I reinvent the wheel, is there any preliminary work to support
sending the Caller/Calling/Redirecting Subaddr for ISDN, receiving
CallingSubAddr has already been supported for a few years. 

Referring to https://issues.asterisk.org/view.php?id=15604 I'd already done
the basic work, but it's immediately deprecated , it's based on channel
variables ${CALLEDSUBADDR} and ${CALLEDSUBADDR}, I didn't get to
${REDIRECTINGSUBADDR} 

Previosuly when I've asked, wheter coincidental or not, Richard Mudgett
uploaded code, must have been sitting ready to go, it had some of the
structure there. 

Has any further work been done to finish this off, or how far off is it? 

Alec Davis 

_______________________________________________
--Bandwidth and Colocation Provided by http://www.api-digital.com--

AstriCon 2009 - October 13 - 15 Phoenix, Arizona Register Now:
http://www.astricon.net

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

_______________________________________________
--Bandwidth and Colocation Provided by http://www.api-digital.com--

AstriCon 2009 - October 13 - 15 Phoenix, Arizona Register Now:
http://www.astricon.net

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev


_______________________________________________
--Bandwidth and Colocation Provided by http://www.api-digital.com--

AstriCon 2009 - October 13 - 15 Phoenix, Arizona
Register Now: http://www.astricon.net

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev



More information about the asterisk-dev mailing list