diff --git a/library/MNCC_Types.ttcn b/library/MNCC_Types.ttcn
index 39f9dce..19af236 100644
--- a/library/MNCC_Types.ttcn
+++ b/library/MNCC_Types.ttcn
@@ -512,6 +512,39 @@
 		}
 	}
 };
+template MNCC_PDU tr_MNCC_SETUP_req(template uint32_t call_id := ?,
+				    template charstring called := ?,
+				    template charstring calling := *,
+				    template charstring imsi := ?) := {
+	msg_type := MNCC_SETUP_REQ,
+	u := {
+		signal := {	/* See 24.008 9.3.23.1 */
+			callref := call_id,
+			bearer_cap := *,				/* mandatory in CC */
+			called := tr_MNCC_number(called),		/* optional */
+			calling := tr_MNCC_number(calling),		/* optional */
+			redirecting := *,				/* optional */
+			connected := omit,
+			cause := omit,
+			progress := *,					/* optional */
+			useruser := *,					/* optional */
+			facility := *,					/* optional */
+			cccap := omit,
+			ssversion := omit,
+			clir_sup := 0,
+			clir_inv := 0,
+			signal := *,					/* optional */
+			keypad := omit,
+			more := 0,
+			notify := 0,
+			emergency := *,
+			imsi := imsi,
+			lchan_type := ?,
+			lchan_mode := ?
+		}
+	}
+};
+
 
 /* MO: MSC <- MNCC: Respons to SETUP.ind */
 template MNCC_PDU ts_MNCC_SETUP_rsp(uint32_t call_id, charstring imsi := "",
@@ -653,9 +686,9 @@
 			redirecting := omit,
 			connected := connected,
 			cause := omit,
-			progress := *,
-			useruser := *,
-			facility := *,
+			progress := omit,
+			useruser := omit,
+			facility := omit,
 			cccap := omit,
 			ssversion := omit,
 			clir_sup := 0,
@@ -664,10 +697,10 @@
 			keypad := omit,
 			more := 0,
 			notify := 0,
-			emergency := *,
+			emergency := omit,
 			imsi := "",
-			lchan_type := ?,
-			lchan_mode := ?
+			lchan_type := 0,
+			lchan_mode := 0
 		}
 	}
 }
@@ -807,6 +840,39 @@
 		}
 	}
 }
+template MNCC_PDU ts_MNCC_CALL_CONF_ind(uint32_t call_id,
+					template (omit) MNCC_bearer_cap bcap := omit,
+					template (omit) MNCC_cause cause := omit,
+					template (omit) MNCC_cccap cccap := omit) := {
+	msg_type := MNCC_CALL_CONF_IND,
+	u := {
+		signal := {	/* See 24.008 9.3.2 */
+			callref := call_id,
+			bearer_cap := bcap,
+			called := omit,
+			calling := omit,
+			redirecting := omit,
+			connected := omit,
+			cause := cause,
+			progress := omit,
+			useruser := omit,
+			facility := omit,
+			cccap := cccap,
+			ssversion := omit,
+			clir_sup := 0,
+			clir_inv := 0,
+			signal := omit,
+			keypad := omit,
+			more := 0,
+			notify := 0,
+			emergency := omit,
+			imsi := "",
+			lchan_type := 0,
+			lchan_mode := 0
+		}
+	}
+}
+
 
 /* MO: MSC <- MNCC: CALL_PROC.req; call establishment initiated in network */
 template MNCC_PDU ts_MNCC_CALL_PROC_req(uint32_t call_id, template MNCC_bearer_cap bcap := omit,
@@ -1007,6 +1073,39 @@
 		}
 	}
 }
+template (value) MNCC_PDU ts_MNCC_ALERT_ind(uint32_t call_id,
+				    template (omit) MNCC_progress prog := omit,
+				    template (omit) charstring fac := omit,
+				    template (omit) MNCC_useruser uu := omit) := {
+	msg_type := MNCC_ALERT_IND,
+	u := {
+		signal := {	/* See 24.008 9.3.1 */
+			callref := call_id,
+			bearer_cap := omit,
+			called := omit,
+			calling := omit,
+			redirecting := omit,
+			connected := omit,
+			cause := omit,
+			progress := prog,
+			useruser := uu,
+			facility := fac,
+			cccap := omit,
+			ssversion := omit,
+			clir_sup := 0,
+			clir_inv := 0,
+			signal := omit,
+			keypad := omit,
+			more := 0,
+			notify := 0,
+			emergency := omit,
+			imsi := "",
+			lchan_type := 0,
+			lchan_mode := 0
+		}
+	}
+}
+
 
 /*   : MSC <- MNCC: NOTIFY.req; request to send information pertaining to a call (such as user suspended) */
 template MNCC_PDU ts_MNCC_NOTIFY_req(uint32_t call_id, MNCC_notify notify) := {
@@ -1794,6 +1893,22 @@
 		}
 	}
 }
+template MNCC_PDU tr_MNCC_RTP_CONNECT(template uint32_t call_id,
+				      template uint32_t ip := ?,
+				      template uint32_t rtp_port := ?,
+				      template uint32_t pt := ?) := {
+	msg_type := MNCC_RTP_CONNECT,
+	u := {
+		rtp := {
+			callref := call_id,
+			ip := ip,
+			rtp_port := rtp_port,
+			payload_type := pt,
+			payload_msg_type := 0
+		}
+	}
+}
+
 
 /* MSC <- MNCC: RTP_FREE.req; request connect of RTP */
 template MNCC_PDU ts_MNCC_RTP_FREE(uint32_t call_id) := ts_MNCC_SIMPLE_RTP(MNCC_RTP_FREE, call_id);
