diff --git a/rtp.c b/rtp.c
index 653355e08d4417cb9a7af9eed841d7404a29aa2d..0c475ed980bf178b513784e73e43ddab294866f0 100644
--- a/rtp.c
+++ b/rtp.c
@@ -299,7 +299,7 @@ static struct ast_frame *process_rfc2833(struct ast_rtp *rtp, unsigned char *dat
 		}
 		resp = 0;
 		duration = 0;
-	} else if(rtp->dtmfduration && (duration < rtp->dtmfduration)) {
+	} else if (rtp->resp && rtp->dtmfduration && (duration < rtp->dtmfduration)) {
 		f = send_dtmf(rtp);
 	}
 	if (!(event_end & 0x80))