diff --git a/bsc/MSC_ConnectionHandler.ttcn b/bsc/MSC_ConnectionHandler.ttcn
index dd044e0..13fe723 100644
--- a/bsc/MSC_ConnectionHandler.ttcn
+++ b/bsc/MSC_ConnectionHandler.ttcn
@@ -730,7 +730,8 @@
 type record TestHdlrParams {
 	OCT1		ra,
 	GsmFrameNumber	fn,
-	hexstring	imsi,
+	hexstring	imsi optional,
+	hexstring	imei optional,
 	RslLinkId	link_id,
 	integer		media_nr, /* determins MGCP EP, port numbers */
 	BSSMAP_IE_SpeechCodecList ass_codec_list optional,
@@ -764,7 +765,8 @@
 template (value) TestHdlrParams t_def_TestHdlrPars := {
 	ra := '23'O,
 	fn := 23,
-	imsi := '001019876543210'H,
+	imsi := omit, /* set to random in f_gen_test_hdlr_pars() */
+	imei := omit, /* set to random in f_gen_test_hdlr_pars() */
 	link_id := valueof(ts_RslLinkID_DCCH(0)),
 	media_nr := 1,
 	ass_codec_list := omit,
@@ -804,12 +806,23 @@
 
 function f_create_chan_and_exp(template (present) PDU_BSSAP exp_l3_compl := ?)
 runs on MSC_ConnHdlr {
-	var MobileIdentityLV mi := valueof(ts_MI_IMSI_LV(g_pars.imsi));
-	var PDU_ML3_MS_NW l3_info := valueof(ts_CM_SERV_REQ(CM_TYPE_MO_CALL, mi));
-	var octetstring l3_enc := enc_PDU_ML3_MS_NW(l3_info);
+	var MobileIdentityLV mi;
+	var PDU_ML3_MS_NW l3_info;
+	var octetstring l3_enc;
 	var template uint3_t tsc := ?;
 	timer T;
 
+	if (ispresent(g_pars.imsi)) {
+		mi := valueof(ts_MI_IMSI_LV(g_pars.imsi));
+	} else if (ispresent(g_pars.imei)) {
+		mi := valueof(ts_MI_IMEI_LV(g_pars.imei));
+	} else {
+		Misc_Helpers.f_shutdown(__BFILE__, __LINE__, fail,
+					"Either imsi or imei must be set!");
+	}
+	l3_info := valueof(ts_CM_SERV_REQ(CM_TYPE_MO_CALL, mi));
+	l3_enc := enc_PDU_ML3_MS_NW(l3_info);
+
 	if (not istemplatekind(g_pars.expect_tsc, "omit")) {
 		tsc := g_pars.expect_tsc;
 	}
