diff --git a/channels/chan_misdn.c b/channels/chan_misdn.c
index ef7302be6d166806651fb6b8a3fb2a88304c8389..c0264bc9269cf0893d8e080db53e931820f6a386 100644
--- a/channels/chan_misdn.c
+++ b/channels/chan_misdn.c
@@ -4442,6 +4442,17 @@ cb_events(enum event_e event, struct misdn_bchannel *bc, void *user_data)
 			break;
 		}
 
+
+		/*
+		 * When we are NT and overlapdial is set and if 
+		 * the number is empty, we wait for the ISDN timeout
+		 * instead of our own timer.
+		 */
+		if (ch->overlap_dial && bc->nt && !bc->dad[0] ) {
+			wait_for_digits(ch, bc, chan);
+			break;
+		}
+
 		/* 
 		 * If overlapdial we will definitely send a SETUP_ACKNOWLEDGE and wait for more 
 		 * Infos with a Interdigit Timeout.
diff --git a/configs/misdn.conf.sample b/configs/misdn.conf.sample
index fb2925b2394856fbdb6b6134bb2e4de85d5a7abd..65bdda3ea94c8f7839a16abb0a19f3029cdf8539 100644
--- a/configs/misdn.conf.sample
+++ b/configs/misdn.conf.sample
@@ -269,6 +269,13 @@ nttimeout=no
 ;
 method=standard
 
+
+; specify if chan_misdn should collect digits before going into the 
+; dialplan, you can choose yes=4 Seconds, no, or specify the amount
+; of seconds you need;
+; 
+overlapdial=yes
+
 ;
 ; dialplan means Type Of Number in ISDN Terms (for outgoing calls)
 ;