diff --git a/channels/chan_dahdi.c b/channels/chan_dahdi.c
index 934e977af9d7bda0bc9df05524b13ea367abd243..371a4c74533e71e92d8f7ab66862f4a3209a77f8 100644
--- a/channels/chan_dahdi.c
+++ b/channels/chan_dahdi.c
@@ -7107,11 +7107,14 @@ static enum ast_bridge_result dahdi_bridge(struct ast_channel *c0, struct ast_ch
 			p1->subs[SUB_REAL].owner &&
 			p1->subs[SUB_REAL].inthreeway &&
 			(p1->subs[SUB_REAL].owner->_state == AST_STATE_RINGING)) {
-			ast_debug(1, "Playing ringback on %s since %s is in a ringing three-way\n", c0->name, c1->name);
+			ast_debug(1,
+				"Playing ringback on %d/%d(%s) since %d/%d(%s) is in a ringing three-way\n",
+				p0->channel, oi0, c0->name, p1->channel, oi1, c1->name);
 			tone_zone_play_tone(p0->subs[oi0].dfd, DAHDI_TONE_RINGTONE);
 			os1 = p1->subs[SUB_REAL].owner->_state;
 		} else {
-			ast_debug(1, "Stopping tones on %d/%d talking to %d/%d\n", p0->channel, oi0, p1->channel, oi1);
+			ast_debug(1, "Stopping tones on %d/%d(%s) talking to %d/%d(%s)\n",
+				p0->channel, oi0, c0->name, p1->channel, oi1, c1->name);
 			tone_zone_play_tone(p0->subs[oi0].dfd, -1);
 		}
 		if ((oi0 == SUB_THREEWAY) &&
@@ -7119,12 +7122,15 @@ static enum ast_bridge_result dahdi_bridge(struct ast_channel *c0, struct ast_ch
 			p0->subs[SUB_REAL].owner &&
 			p0->subs[SUB_REAL].inthreeway &&
 			(p0->subs[SUB_REAL].owner->_state == AST_STATE_RINGING)) {
-			ast_debug(1, "Playing ringback on %s since %s is in a ringing three-way\n", c1->name, c0->name);
+			ast_debug(1,
+				"Playing ringback on %d/%d(%s) since %d/%d(%s) is in a ringing three-way\n",
+				p1->channel, oi1, c1->name, p0->channel, oi0, c0->name);
 			tone_zone_play_tone(p1->subs[oi1].dfd, DAHDI_TONE_RINGTONE);
 			os0 = p0->subs[SUB_REAL].owner->_state;
 		} else {
-			ast_debug(1, "Stopping tones on %d/%d talking to %d/%d\n", p1->channel, oi1, p0->channel, oi0);
-			tone_zone_play_tone(p1->subs[oi0].dfd, -1);
+			ast_debug(1, "Stopping tones on %d/%d(%s) talking to %d/%d(%s)\n",
+				p1->channel, oi1, c1->name, p0->channel, oi0, c0->name);
+			tone_zone_play_tone(p1->subs[oi1].dfd, -1);
 		}
 		if ((oi0 == SUB_REAL) && (oi1 == SUB_REAL)) {
 			if (!p0->echocanbridged || !p1->echocanbridged) {
@@ -8240,7 +8246,9 @@ static struct ast_frame *dahdi_handle_event(struct ast_channel *ast)
 						(p->transfertobusy || (ast->_state != AST_STATE_BUSY))) {
 						int otherindex = SUB_THREEWAY;
 
-						ast_verb(3, "Building conference on call on %s and %s\n", p->subs[SUB_THREEWAY].owner->name, p->subs[SUB_REAL].owner->name);
+						ast_verb(3, "Building conference call with %s and %s\n",
+							p->subs[SUB_THREEWAY].owner->name,
+							p->subs[SUB_REAL].owner->name);
 						/* Put them in the threeway, and flip */
 						p->subs[SUB_THREEWAY].inthreeway = 1;
 						p->subs[SUB_REAL].inthreeway = 1;
@@ -8252,11 +8260,6 @@ static struct ast_frame *dahdi_handle_event(struct ast_channel *ast)
 							ast_queue_control(p->subs[otherindex].owner, AST_CONTROL_UNHOLD);
 						p->subs[otherindex].needunhold = 1;
 						p->owner = p->subs[SUB_REAL].owner;
-						if (ast->_state == AST_STATE_RINGING) {
-							ast_debug(1, "Enabling ringtone on real and threeway\n");
-							res = tone_zone_play_tone(p->subs[SUB_REAL].dfd, DAHDI_TONE_RINGTONE);
-							res = tone_zone_play_tone(p->subs[SUB_THREEWAY].dfd, DAHDI_TONE_RINGTONE);
-						}
 					} else {
 						ast_verb(3, "Dumping incomplete call on on %s\n", p->subs[SUB_THREEWAY].owner->name);
 						swap_subs(p, SUB_THREEWAY, SUB_REAL);
diff --git a/channels/sig_analog.c b/channels/sig_analog.c
index 18753270b3993bf71a386dfc476c78759ce62265..30a1de47df98195f519bc3ce43f7ec3383edbf46 100644
--- a/channels/sig_analog.c
+++ b/channels/sig_analog.c
@@ -3170,7 +3170,9 @@ static struct ast_frame *__analog_handle_event(struct analog_pvt *p, struct ast_
 					/* Lets see what we're up to */
 					if (((ast->pbx) || (ast->_state == AST_STATE_UP)) &&
 						(p->transfertobusy || (ast->_state != AST_STATE_BUSY))) {
-						ast_verb(3, "Building conference on call on %s and %s\n", p->subs[ANALOG_SUB_THREEWAY].owner->name, p->subs[ANALOG_SUB_REAL].owner->name);
+						ast_verb(3, "Building conference call with %s and %s\n",
+							p->subs[ANALOG_SUB_THREEWAY].owner->name,
+							p->subs[ANALOG_SUB_REAL].owner->name);
 						/* Put them in the threeway, and flip */
 						analog_set_inthreeway(p, ANALOG_SUB_THREEWAY, 1);
 						analog_set_inthreeway(p, ANALOG_SUB_REAL, 1);
@@ -3182,11 +3184,6 @@ static struct ast_frame *__analog_handle_event(struct analog_pvt *p, struct ast_
 							ast_queue_control(p->subs[orig_3way_sub].owner, AST_CONTROL_UNHOLD);
 						}
 						p->owner = p->subs[ANALOG_SUB_REAL].owner;
-						if (ast->_state == AST_STATE_RINGING) {
-							ast_debug(1, "Enabling ringtone on real and threeway\n");
-							analog_play_tone(p, ANALOG_SUB_REAL, ANALOG_TONE_RINGTONE);
-							analog_play_tone(p, ANALOG_SUB_THREEWAY, ANALOG_TONE_RINGTONE);
-						}
 					} else {
 						ast_verb(3, "Dumping incomplete call on %s\n", p->subs[ANALOG_SUB_THREEWAY].owner->name);
 						analog_swap_subs(p, ANALOG_SUB_THREEWAY, ANALOG_SUB_REAL);