diff --git a/channels/chan_misdn.c b/channels/chan_misdn.c
index b2f80d6bb021064431925d88c3665a442ddbac5d..bfbf907f2c92f08a3b63b3a42de8b8f35122e8ce 100644
--- a/channels/chan_misdn.c
+++ b/channels/chan_misdn.c
@@ -2946,6 +2946,10 @@ void import_ies(struct ast_channel *chan, struct misdn_bchannel *bc)
 
 	tmp=pbx_builtin_getvar_helper(chan,"PRI_USER1");
 	if (tmp) bc->user1=atoi(tmp);
+	
+	tmp=pbx_builtin_getvar_helper(chan,"RDNIS");
+	if (tmp) ast_copy_string(bc->rad,tmp,sizeof(bc->rad));
+	
 }
 
 void export_ies(struct ast_channel *chan, struct misdn_bchannel *bc)
@@ -2963,6 +2967,8 @@ void export_ies(struct ast_channel *chan, struct misdn_bchannel *bc)
 	
 	sprintf(tmp,"%d",bc->user1);
 	pbx_builtin_setvar_helper(chan,"PRI_USER1",tmp);
+	
+	pbx_builtin_setvar_helper(chan,"RDNIS",bc->rad);
 }
 
 
diff --git a/channels/misdn/isdn_msg_parser.c b/channels/misdn/isdn_msg_parser.c
index 4935deefac50213d0abd9bb2953adeea6929b155..5eb7e1f68337c4b3d1fea13376ce4eebb71cd934 100644
--- a/channels/misdn/isdn_msg_parser.c
+++ b/channels/misdn/isdn_msg_parser.c
@@ -277,6 +277,13 @@ msg_t *build_setup (struct isdn_msg msgs[], struct misdn_bchannel *bc, int nt)
 		if (bc->dad[0])
 			enc_ie_called_pn(&setup->CALLED_PN, msg, bc->dnumplan, 1, bc->dad, nt,bc);
 	}
+
+	{
+		if (bc->rad[0])
+			enc_ie_redir_nr(&setup->REDIR_NR, msg, 1, 1,  bc->pres, bc->screen, 0, bc->rad, nt,bc);
+	}
+
+	
   
 	if (*bc->display) {
 		enc_ie_display(&setup->DISPLAY, msg, bc->display, nt,bc);