[asterisk-commits] mjordan: branch mjordan/AST_17288 r334566 - in /team/mjordan/AST_17288/1.8: a...

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Tue Sep 6 12:28:36 CDT 2011


Author: mjordan
Date: Tue Sep  6 12:28:32 2011
New Revision: 334566

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=334566
Log:
Added Incomplete asterisk frame; changed SIP handling of 484 to not use Incomplete dialplan logic by default

Modified:
    team/mjordan/AST_17288/1.8/apps/app_dial.c
    team/mjordan/AST_17288/1.8/channels/chan_alsa.c
    team/mjordan/AST_17288/1.8/channels/chan_console.c
    team/mjordan/AST_17288/1.8/channels/chan_dahdi.c
    team/mjordan/AST_17288/1.8/channels/chan_h323.c
    team/mjordan/AST_17288/1.8/channels/chan_mgcp.c
    team/mjordan/AST_17288/1.8/channels/chan_misdn.c
    team/mjordan/AST_17288/1.8/channels/chan_oss.c
    team/mjordan/AST_17288/1.8/channels/chan_sip.c
    team/mjordan/AST_17288/1.8/channels/chan_skinny.c
    team/mjordan/AST_17288/1.8/channels/chan_unistim.c
    team/mjordan/AST_17288/1.8/channels/chan_usbradio.c
    team/mjordan/AST_17288/1.8/channels/sig_pri.c
    team/mjordan/AST_17288/1.8/channels/sig_ss7.c
    team/mjordan/AST_17288/1.8/funcs/func_frame_trace.c
    team/mjordan/AST_17288/1.8/include/asterisk/frame.h
    team/mjordan/AST_17288/1.8/main/channel.c
    team/mjordan/AST_17288/1.8/main/dial.c
    team/mjordan/AST_17288/1.8/main/features.c
    team/mjordan/AST_17288/1.8/main/pbx.c

Modified: team/mjordan/AST_17288/1.8/apps/app_dial.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/apps/app_dial.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/apps/app_dial.c (original)
+++ team/mjordan/AST_17288/1.8/apps/app_dial.c Tue Sep  6 12:28:32 2011
@@ -2423,14 +2423,6 @@
 		} else { /* Nobody answered, next please? */
 			res = 0;
 		}
-
-		/* SIP, in particular, sends back this error code to indicate an
-		 * overlap dialled number needs more digits. */
-		if (chan->hangupcause == AST_CAUSE_INVALID_NUMBER_FORMAT) {
-			res = AST_PBX_INCOMPLETE;
-		}
-
-		/* almost done, although the 'else' block is 400 lines */
 	} else {
 		const char *number;
 

Modified: team/mjordan/AST_17288/1.8/channels/chan_alsa.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/channels/chan_alsa.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/channels/chan_alsa.c (original)
+++ team/mjordan/AST_17288/1.8/channels/chan_alsa.c Tue Sep  6 12:28:32 2011
@@ -537,6 +537,7 @@
 	case AST_CONTROL_BUSY:
 	case AST_CONTROL_CONGESTION:
 	case AST_CONTROL_RINGING:
+	case AST_CONTROL_INCOMPLETE:
 	case -1:
 		res = -1;  /* Ask for inband indications */
 		break;

Modified: team/mjordan/AST_17288/1.8/channels/chan_console.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/channels/chan_console.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/channels/chan_console.c (original)
+++ team/mjordan/AST_17288/1.8/channels/chan_console.c Tue Sep  6 12:28:32 2011
@@ -610,6 +610,7 @@
 	case AST_CONTROL_BUSY:
 	case AST_CONTROL_CONGESTION:
 	case AST_CONTROL_RINGING:
+	case AST_CONTROL_INCOMPLETE:
 	case -1:
 		res = -1;  /* Ask for inband indications */
 		break;

Modified: team/mjordan/AST_17288/1.8/channels/chan_dahdi.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/channels/chan_dahdi.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/channels/chan_dahdi.c (original)
+++ team/mjordan/AST_17288/1.8/channels/chan_dahdi.c Tue Sep  6 12:28:32 2011
@@ -9314,6 +9314,11 @@
 				 (p->sig != SIG_FXSGS)))
 				ast_setstate(chan, AST_STATE_RINGING);
 			}
+			break;
+		case AST_CONTROL_INCOMPLETE:
+			ast_debug(1,"Received AST_CONTROL_INCOMPLETE on %s\n",chan->name);
+			/* act as a progress or proceeding, allowing the caller to enter additional numbers */
+			res = 0;
 			break;
 		case AST_CONTROL_PROCEEDING:
 			ast_debug(1,"Received AST_CONTROL_PROCEEDING on %s\n",chan->name);

Modified: team/mjordan/AST_17288/1.8/channels/chan_h323.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/channels/chan_h323.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/channels/chan_h323.c (original)
+++ team/mjordan/AST_17288/1.8/channels/chan_h323.c Tue Sep  6 12:28:32 2011
@@ -893,6 +893,16 @@
 			res = 0;
 		}
 		break;
+	case AST_CONTROL_INCOMPLETE:
+		/* While h323 does support overlapped calling, that feature is not implemented in
+		 * Asterisk for h323 at this time.  If we receive an Incomplete result from whatever
+		 * we are dialing, inform the h323 gateway that we have been hung up on.
+		 */
+		if (c->_state != AST_STATE_UP) {
+			h323_answering_call(token, 1);
+			ast_softhangup_nolock(c, AST_SOFTHANGUP_DEV);
+			res = 0;
+		}
 	case AST_CONTROL_BUSY:
 		if (c->_state != AST_STATE_UP) {
 			h323_answering_call(token, 1);

Modified: team/mjordan/AST_17288/1.8/channels/chan_mgcp.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/channels/chan_mgcp.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/channels/chan_mgcp.c (original)
+++ team/mjordan/AST_17288/1.8/channels/chan_mgcp.c Tue Sep  6 12:28:32 2011
@@ -1457,6 +1457,10 @@
 	case AST_CONTROL_BUSY:
 		transmit_notify_request(sub, "L/bz");
 		break;
+	/* We do not currently support resetting of the Interdigit Timer, so treat
+	 * Incomplete control frames as a congestion response
+	 */
+	case AST_CONTROL_INCOMPLETE:
 	case AST_CONTROL_CONGESTION:
 		transmit_notify_request(sub, sub->parent->ncs ? "L/cg" : "G/cg");
 		break;

Modified: team/mjordan/AST_17288/1.8/channels/chan_misdn.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/channels/chan_misdn.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/channels/chan_misdn.c (original)
+++ team/mjordan/AST_17288/1.8/channels/chan_misdn.c Tue Sep  6 12:28:32 2011
@@ -6983,6 +6983,19 @@
 		chan_misdn_log(1, p->bc->port, " --> * IND :\tproceeding pid:%d\n", p->bc->pid);
 		misdn_lib_send_event(p->bc, EVENT_PROCEEDING);
 		break;
+	case AST_CONTROL_INCOMPLETE:
+		chan_misdn_log(1, p->bc->port, " --> *\tincomplete pid:%d\n", p->bc->pid);
+		if (!p->overlap_dial) {
+			/* Overlapped dialing not supported - send hangup */
+			p->bc->out_cause = AST_CAUSE_INVALID_NUMBER_FORMAT;
+			start_bc_tones(p);
+			misdn_lib_send_event(p->bc, EVENT_DISCONNECT);
+
+			if (p->bc->nt) {
+				hanguptone_indicate(p);
+			}
+		}
+		break;
 	case AST_CONTROL_CONGESTION:
 		chan_misdn_log(1, p->bc->port, " --> * IND :\tcongestion pid:%d\n", p->bc->pid);
 

Modified: team/mjordan/AST_17288/1.8/channels/chan_oss.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/channels/chan_oss.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/channels/chan_oss.c (original)
+++ team/mjordan/AST_17288/1.8/channels/chan_oss.c Tue Sep  6 12:28:32 2011
@@ -755,6 +755,7 @@
 	int res = 0;
 
 	switch (cond) {
+	case AST_CONTROL_INCOMPLETE:
 	case AST_CONTROL_BUSY:
 	case AST_CONTROL_CONGESTION:
 	case AST_CONTROL_RINGING:

Modified: team/mjordan/AST_17288/1.8/channels/chan_sip.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/channels/chan_sip.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/channels/chan_sip.c (original)
+++ team/mjordan/AST_17288/1.8/channels/chan_sip.c Tue Sep  6 12:28:32 2011
@@ -6677,6 +6677,16 @@
 		}
 		res = -1;
 		break;
+	case AST_CONTROL_INCOMPLETE:
+		if (ast->_state != AST_STATE_UP) {
+			transmit_response_reliable(p, "484 Address Incomplete", &p->initreq);
+			p->invitestate = INV_COMPLETED;
+			sip_alreadygone(p);
+			ast_softhangup_nolock(ast, AST_SOFTHANGUP_DEV);
+			break;
+		}
+		res = -1;
+		break;
 	case AST_CONTROL_PROCEEDING:
 		if ((ast->_state != AST_STATE_UP) &&
 		    !ast_test_flag(&p->flags[0], SIP_PROGRESS_SENT) &&

Modified: team/mjordan/AST_17288/1.8/channels/chan_skinny.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/channels/chan_skinny.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/channels/chan_skinny.c (original)
+++ team/mjordan/AST_17288/1.8/channels/chan_skinny.c Tue Sep  6 12:28:32 2011
@@ -4290,6 +4290,8 @@
 		return "Connected Line";
 	case AST_CONTROL_REDIRECTING:
 		return "Redirecting";
+	case AST_CONTROL_INCOMPLETE:
+		return "Incomplete";
 	case -1:
 		return "Stop tone";
 	default:
@@ -4436,6 +4438,20 @@
 			}
 		}
 		return -1; /* Tell asterisk to provide inband signalling */
+	case AST_CONTROL_INCOMPLETE:
+		/* Support for incomplete not supported for chan_skinny; treat as congestion */
+		if (ast->_state != AST_STATE_UP) {
+			if (!d->earlyrtp) {
+				transmit_start_tone(d, SKINNY_REORDER, l->instance, sub->callid);
+			}
+			transmit_callstate(d, sub->parent->instance, sub->callid, SKINNY_CONGESTION);
+			sub->alreadygone = 1;
+			ast_softhangup_nolock(ast, AST_SOFTHANGUP_DEV);
+			if (!d->earlyrtp) {
+				break;
+			}
+		}
+		return -1;
 	case AST_CONTROL_PROGRESS:
 		if ((ast->_state != AST_STATE_UP) && !sub->progress && !sub->outgoing) {
 			if (!d->earlyrtp) {

Modified: team/mjordan/AST_17288/1.8/channels/chan_unistim.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/channels/chan_unistim.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/channels/chan_unistim.c (original)
+++ team/mjordan/AST_17288/1.8/channels/chan_unistim.c Tue Sep  6 12:28:32 2011
@@ -4178,6 +4178,18 @@
 			sub->alreadygone = 1;
 			send_text(TEXT_LINE2, TEXT_NORMAL, s, "Busy");
 			in_band_indication(ast, l->parent->tz, "busy");
+			s->device->missed_call = -1;
+			break;
+		}
+		return -1;
+	case AST_CONTROL_INCOMPLETE:
+		/* Overlapped dialing is not currently supported for UNIStim.  Treat an indication
+		 * of incomplete as congestion
+		 */
+		if (ast->_state != AST_STATE_UP) {
+			sub->alreadygone = 1;
+			send_text(TEXT_LINE2, TEXT_NORMAL, s, "Congestion");
+			in_band_indication(ast, l->parent->tz, "congestion");
 			s->device->missed_call = -1;
 			break;
 		}

Modified: team/mjordan/AST_17288/1.8/channels/chan_usbradio.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/channels/chan_usbradio.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/channels/chan_usbradio.c (original)
+++ team/mjordan/AST_17288/1.8/channels/chan_usbradio.c Tue Sep  6 12:28:32 2011
@@ -2117,6 +2117,7 @@
 		case AST_CONTROL_BUSY:
 		case AST_CONTROL_CONGESTION:
 		case AST_CONTROL_RINGING:
+		case AST_CONTROL_INCOMPLETE:
 			res = cond;
 			break;
 

Modified: team/mjordan/AST_17288/1.8/channels/sig_pri.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/channels/sig_pri.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/channels/sig_pri.c (original)
+++ team/mjordan/AST_17288/1.8/channels/sig_pri.c Tue Sep  6 12:28:32 2011
@@ -6922,6 +6922,37 @@
 		/* don't continue in ast_indicate */
 		res = 0;
 		break;
+	case AST_CONTROL_INCOMPLETE:
+		/*
+		 * If we do not support overlap dialing and are past the point where we could receive
+		 * additional digits, treat as a hangup
+		 */
+		if (!((p->pri->overlapdial & DAHDI_OVERLAPDIAL_INCOMING) && (p->call_level < SIG_PRI_CALL_LEVEL_OVERLAP))) {
+			if (p->priindication_oob || p->no_b_channel) {
+				chan->hangupcause = AST_CAUSE_INVALID_NUMBER_FORMAT;
+				chan->_softhangup |= AST_SOFTHANGUP_DEV;
+				res = 0;
+				break;
+			}
+			res = sig_pri_play_tone(p, SIG_PRI_TONE_CONGESTION);
+			if (p->call_level < SIG_PRI_CALL_LEVEL_ALERTING && !p->outgoing) {
+				chan->hangupcause = AST_CAUSE_INVALID_NUMBER_FORMAT;
+				p->progress = 1; /* No need to send plain PROGRESS after this. */
+				if (p->pri && p->pri->pri) {
+					if (!pri_grab(p, p->pri)) {
+#ifdef HAVE_PRI_PROG_W_CAUSE
+						pri_progress_with_cause(p->pri->pri, p->call, PVT_TO_CHANNEL(p), 1, chan->hangupcause);
+#else
+						pri_progress(p->pri->pri,p->call, PVT_TO_CHANNEL(p), 1);
+#endif
+						pri_rel(p->pri);
+					} else {
+						ast_log(LOG_WARNING, "Unable to grab PRI on span %d\n", p->pri->span);
+					}
+				}
+			}
+			break;
+		}
 	case AST_CONTROL_CONGESTION:
 		if (p->priindication_oob || p->no_b_channel) {
 			/* There are many cause codes that generate an AST_CONTROL_CONGESTION. */

Modified: team/mjordan/AST_17288/1.8/channels/sig_ss7.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/channels/sig_ss7.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/channels/sig_ss7.c (original)
+++ team/mjordan/AST_17288/1.8/channels/sig_ss7.c Tue Sep  6 12:28:32 2011
@@ -1559,6 +1559,9 @@
 		/* don't continue in ast_indicate */
 		res = 0;
 		break;
+	case AST_CONTROL_INCOMPLETE:
+		chan->hangupcause = AST_CAUSE_INVALID_NUMBER_FORMAT;
+		break;
 	case AST_CONTROL_CONGESTION:
 		chan->hangupcause = AST_CAUSE_CONGESTION;
 		break;

Modified: team/mjordan/AST_17288/1.8/funcs/func_frame_trace.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/funcs/func_frame_trace.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/funcs/func_frame_trace.c (original)
+++ team/mjordan/AST_17288/1.8/funcs/func_frame_trace.c Tue Sep  6 12:28:32 2011
@@ -312,6 +312,9 @@
 		case AST_CONTROL_AOC:
 			ast_verbose("SubClass: AOC\n");
 			break;
+		case AST_CONTROL_INCOMPLETE:
+			ast_verbose("SubClass: INCOMPLETE\n");
+			break;
 		}
 		if (frame->subclass.integer == -1) {
 			ast_verbose("SubClass: %d\n", frame->subclass.integer);

Modified: team/mjordan/AST_17288/1.8/include/asterisk/frame.h
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/include/asterisk/frame.h?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/include/asterisk/frame.h (original)
+++ team/mjordan/AST_17288/1.8/include/asterisk/frame.h Tue Sep  6 12:28:32 2011
@@ -334,6 +334,7 @@
 	AST_CONTROL_READ_ACTION = 27,	/*!< Tell ast_read to take a specific action */
 	AST_CONTROL_AOC = 28,			/*!< Advice of Charge with encoded generic AOC payload */
 	AST_CONTROL_END_OF_Q = 29,		/*!< Indicate that this position was the end of the channel queue for a softhangup. */
+	AST_CONTROL_INCOMPLETE = 30,	/*!< Indication that the extension dialed is incomplete */
 };
 
 enum ast_frame_read_action {

Modified: team/mjordan/AST_17288/1.8/main/channel.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/main/channel.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/main/channel.c (original)
+++ team/mjordan/AST_17288/1.8/main/channel.c Tue Sep  6 12:28:32 2011
@@ -4291,6 +4291,7 @@
 	case AST_CONTROL_READ_ACTION:
 	case AST_CONTROL_AOC:
 	case AST_CONTROL_END_OF_Q:
+	case AST_CONTROL_INCOMPLETE:
 		break;
 
 	case AST_CONTROL_CONGESTION:
@@ -4476,6 +4477,7 @@
 	case AST_CONTROL_READ_ACTION:
 	case AST_CONTROL_AOC:
 	case AST_CONTROL_END_OF_Q:
+	case AST_CONTROL_INCOMPLETE:
 		/* Nothing left to do for these. */
 		res = 0;
 		break;
@@ -5369,6 +5371,7 @@
 				case AST_CONTROL_CONNECTED_LINE:
 				case AST_CONTROL_REDIRECTING:
 				case AST_CONTROL_CC:
+				case AST_CONTROL_INCOMPLETE:
 				case -1:			/* Ignore -- just stopping indications */
 					break;
 

Modified: team/mjordan/AST_17288/1.8/main/dial.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/main/dial.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/main/dial.c (original)
+++ team/mjordan/AST_17288/1.8/main/dial.c Tue Sep  6 12:28:32 2011
@@ -397,6 +397,10 @@
 			ast_verb(3, "%s is circuit-busy\n", channel->owner->name);
 			ast_hangup(channel->owner);
 			channel->owner = NULL;
+			break;
+		case AST_CONTROL_INCOMPLETE:
+			ast_verb(3, "%s dialed Incomplete extension %s\n", channel->owner->name, channel->owner->exten);
+			ast_indicate(chan, AST_CONTROL_INCOMPLETE);
 			break;
 		case AST_CONTROL_RINGING:
 			ast_verb(3, "%s is ringing\n", channel->owner->name);

Modified: team/mjordan/AST_17288/1.8/main/features.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/main/features.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/main/features.c (original)
+++ team/mjordan/AST_17288/1.8/main/features.c Tue Sep  6 12:28:32 2011
@@ -2391,6 +2391,7 @@
 			case AST_CONTROL_UNHOLD:/* Caller requested cancel or party C answer timeout. */
 			case AST_CONTROL_BUSY:
 			case AST_CONTROL_CONGESTION:
+			case AST_CONTROL_INCOMPLETE:
 				if (ast_stream_and_wait(transferer, xfersound, "")) {
 					ast_log(LOG_WARNING, "Failed to play transfer sound!\n");
 				}
@@ -3214,7 +3215,7 @@
  *
  * \note
  * outstate can be:
- * 0, AST_CONTROL_BUSY, AST_CONTROL_CONGESTION,
+ * 0, AST_CONTROL_BUSY, AST_CONTROL_CONGESTION, AST_CONTROL_INCOMPLETE,
  * AST_CONTROL_ANSWER, or AST_CONTROL_UNHOLD.  If
  * AST_CONTROL_UNHOLD then the caller channel cancelled the
  * transfer or the dialed channel did not answer before the
@@ -3403,6 +3404,12 @@
 					state = f->subclass.integer;
 					ast_verb(3, "%s is busy\n", chan->name);
 					ast_indicate(caller, AST_CONTROL_BUSY);
+					ast_frfree(f);
+					break;
+				} else if (f->subclass.integer == AST_CONTROL_INCOMPLETE) {
+					state = f->subclass.integer;
+					ast_verb(3, "%s dialed incomplete extension %s\n", chan->name, chan->exten);
+					ast_indicate(caller, AST_CONTROL_INCOMPLETE);
 					ast_frfree(f);
 					break;
 				} else if (f->subclass.integer == AST_CONTROL_CONGESTION) {

Modified: team/mjordan/AST_17288/1.8/main/pbx.c
URL: http://svnview.digium.com/svn/asterisk/team/mjordan/AST_17288/1.8/main/pbx.c?view=diff&rev=334566&r1=334565&r2=334566
==============================================================================
--- team/mjordan/AST_17288/1.8/main/pbx.c (original)
+++ team/mjordan/AST_17288/1.8/main/pbx.c Tue Sep  6 12:28:32 2011
@@ -9217,6 +9217,8 @@
 		__ast_answer(chan, 0, 1);
 	}
 
+	ast_indicate(chan, AST_CONTROL_INCOMPLETE);
+
 	return AST_PBX_INCOMPLETE;
 }
 




More information about the asterisk-commits mailing list