[Asterisk-Users] ISDN/CAPI outgoing calls - weirdness with ringing

Armin Schindler armin at melware.de
Sun Jan 8 07:02:10 MST 2006


Hi Michael,

sorry for the late answer.

On Wed, 28 Dec 2005, Michael J. Tubby G8TIC wrote:
> 1. Call to Orange GSM mobile phone (effectively ISDN all the way) - works as
> expected

Can you please try attached patch 'cc1.patch' and recreate the log.
Because the ringing tone you hear does not come from ISDN, it seems to be 
generated locally (maybe by your phone).
 
> 2. Call to BT analogue phone (we still have a lot of analogue in the UK) - no
> ringing problem (stuck in Session Progress)

Still the same ringing problem. ISDN does not give you ringing, it seems to 
be created locally as well.
Also, I don't see why it is 'stuck in progress', because the call is 
answered and Asterisk knows that: "CAPI/avm1/0190527509-2 answered 
SIP/2006-2ae0"

> 3. Call to C&W analogue phone (local loop unbundling operator) - double
> ringing problem

ISDN connection with early-b3 is correct, so you get the ringing from ISDN. 
If you hear a double ringing tone, then there is another ringing tone 
generated locally in addition. Just like 1. and 2., but this time with 
original tone from ISDN too.
So if there is sound from ISDN coming, it looks like an error that 
Asterisk/your-phone is providing own ringing tone too.
 
> 4. Call to SIPgate/Magrethea number (complex call routing) - works as expected
> (I am slightly suprised :o)

Same like 1. and 2., the ISDN early-B3 is not working, so you get your 
ringing tone from something else.

The error is that early-b3 does not work in every case and since you get 
ringing-tone from something else in each case (which is just wrong), you 
think it is correct in the faulty case and double tone in the working case.

Can you please try also attached 'c2.patch' instead of 'c1.patch' with the 
cases above (with logs)?

Thanks,
Armin
 
> Set up is:
> 
> - Fedora Core 4, on P4 3.2GHz, 1Gb RAM
> 
> - AVM C4 with:
> - 2 x ISDN2e in P2P mode on 01905756700/01905755777/0190475289x
> - 1 x ISDN2e in P2MP for other bits
> the main number is 01905756700
> 
> - Asterisk 1.2.1
> 
> - Chan-capi-cm-0.6.1
> 
> all cleanly compiled and re-installed for testing.
> 
> 
> I use a macro for placing the outgoing calls (copy at the start of the log)
> which aides with debugging and ensures the correct '6700' number (main
> PBX number) is used.
> 
> All tests dialled with the macro provided and using just the 'b' flag.
> 
> Look forward to your comments with interest.
> 
> 
> Regards
> 
> 
> Mike
> 
> 
> 
> ----- Original Message ----- From: "Armin Schindler" <armin at melware.de>
> To: "Michael J. Tubby G8TIC" <mike.tubby at thorcom.co.uk>
> Cc: "Asterisk Users Mailing List - Non-Commercial Discussion"
> <asterisk-users at lists.digium.com>
> Sent: Tuesday, December 27, 2005 6:37 PM
> Subject: Re: [Asterisk-Users] ISDN/CAPI outgoing calls - weirdness with
> ringing
> 
> 
> > On Sun, 25 Dec 2005, Michael J. Tubby G8TIC wrote:
> > > > On Sat, 24 Dec 2005, Michael J. Tubby G8TIC wrote:
> > > > > I changed the dial-string to include flags 'ob' as you
> > > > > mentioned
> > > > > (below)
> > > > > and now I get the following when I dial a BT phone number
> > > > > 
> > > > > - dial number, get:
> > > > > 
> > > > > Proceeding (in 100) briefly
> > > > > 
> > > > > - after a second or so:
> > > > > 
> > > > > Ringng Destination (in 180)
> > > > > 
> > > > > - double ringing tone:
> > > > > 
> > > > > BT style ringing generated by the exhange
> > > > > Cisco phone US-style ringing (generated by the phone)
> > > > > 
> > > > > these are overlaid on each other (mixed together)
> > > > > 
> > > > > 
> > > > > My hunch is that there's something not right with the call
> > > > > set up
> > > > > sequence
> > > > > and CAPI handling.
> > > > 
> > > > This is not a problem of CAPI. When you specify 'b' for
> > > > early-b3, you
> > > > will
> > > > get the tones from the switch. If your phone adds its own tone,
> > > > even when
> > > > it
> > > > receives progress tones, then it is incorrect (maybe wrong
> > > > setup).
> > > > 
> > > > Armin
> > > > 
> > > 
> > > 
> > > However the difference that I see looking at the Cisco 7960 phone
> > > which
> > > shows a version of the SIP messages on its status line is:
> > > 
> > > 100 Proceeding
> > > 183 Session Progress
> > > 180 Ringng Destination
> > > 
> > > the order of which varies and depends on the dialled number.
> > > 
> > > Some dialled numbers go: 100->183->180 and these produce one set
> > > of alerting/ringing correctly.
> > > 
> > > Some dialled numbers go: 100->183 and stay in state 183 until the
> > > called
> > > party answers - these are the ones that produce no ringing.
> > 
> > Can you provide a verbose log level 5 with 'capi debug' ?
> > I would like to compare the capi messages. Maybe the switch just send an
> > alerting message.
> > 
> > > If I add the 'o' to the existing 'b' flag then dial it appears to
> > > change the
> > > behaviour so that the phone goes 100-180 for all calls but some give
> > > me a single (phone generated US style ring) while others give the
> > > 'double
> > > ringing'.  The ones that produce double ringing are the ones that
> > > would
> > > have rung before, while the ones that now produce ringing (from the
> > > exchange) are the ones that used to be silent.
> > 
> > When using 'o', chan_capi is doing early-b3 from the beginning before
> > sending any digits and you will get b3-data in each case.
> > Please send me a debug log of a connection with double ring-tone (no 183)
> > as well.
> > 
> > 
> > Armin
> > 
> 
-------------- next part --------------
diff -u -r1.175 chan_capi.c
--- chan_capi.c	6 Jan 2006 14:35:51 -0000	1.175
+++ chan_capi.c	8 Jan 2006 14:00:45 -0000
@@ -2447,6 +2447,7 @@
 	case 0x8001:	/* ALERTING */
 		cc_verbose(3, 1, VERBOSE_PREFIX_3 "%s: info element ALERTING\n",
 			i->name);
+		send_progress(i);
 		fr.frametype = AST_FRAME_CONTROL;
 		fr.subclass = AST_CONTROL_RINGING;
 		pipe_frame(i, &fr);
-------------- next part --------------
diff -u -r1.175 chan_capi.c
--- chan_capi.c	6 Jan 2006 14:35:51 -0000	1.175
+++ chan_capi.c	8 Jan 2006 13:42:25 -0000
@@ -2447,6 +2447,7 @@
 	case 0x8001:	/* ALERTING */
 		cc_verbose(3, 1, VERBOSE_PREFIX_3 "%s: info element ALERTING\n",
 			i->name);
+		start_early_b3(i);
 		fr.frametype = AST_FRAME_CONTROL;
 		fr.subclass = AST_CONTROL_RINGING;
 		pipe_frame(i, &fr);


More information about the asterisk-users mailing list