diff --git a/bsc-nat/MSC_ConnectionHandler.ttcn b/bsc-nat/MSC_ConnectionHandler.ttcn
index 6a9a57f..3fc11e9 100644
--- a/bsc-nat/MSC_ConnectionHandler.ttcn
+++ b/bsc-nat/MSC_ConnectionHandler.ttcn
@@ -86,9 +86,9 @@
 		[g_state == MSC_STATE_NONE] BSSAP.receive(tr_BSSMAP_ComplL3) -> value bssap {
 			/* respond with ASSIGNMENT CMD  */
 			g_state := MSC_STATE_WAIT_ASS_COMPL;
-			BSSAP.send(ts_BSSMAP_AssignmentReq(0, e1_timeslot));
+			BSSAP.send(ts_BSSMAP_AssignmentReq(ts_BSSMAP_IE_CIC(0, e1_timeslot)));
 			}
-		[g_state == MSC_STATE_WAIT_ASS_COMPL] BSSAP.receive(tr_BSSMAP_AssignmentComplete) {
+		[g_state == MSC_STATE_WAIT_ASS_COMPL] BSSAP.receive(tr_BSSMAP_AssignmentComplete(?,*)) {
 			/* FIXME: Send MGCP CRCX */
 			g_state := MSC_STATE_WAIT_CRCX_ACK;
 			var MgcpTransId trans_id := f_mgcp_alloc_tid();
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index faf1a6e..090ed0c 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -392,7 +392,7 @@
 
 	dt := f_est_dchan('23'O, 23, '00000000'O);
 	/* send assignment without AoIP IEs */
-	BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ts_BSSMAP_AssignmentReq(0, 1)));
+	BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ts_BSSMAP_AssignmentReq(ts_BSSMAP_IE_CIC(0, 1))));
 	alt {
 	[] BSSAP.receive(tr_BSSAP_DATA_ind(dt.sccp_conn_id, tr_BSSMAP_AssignmentComplete)) {
 		setverdict(fail, "AoIP BSC cannot accept ASSIGNMENT without AoIP Transport IE");
diff --git a/bsc/MSC_ConnectionHandler.ttcn b/bsc/MSC_ConnectionHandler.ttcn
index 6a9a57f..8fa71fb 100644
--- a/bsc/MSC_ConnectionHandler.ttcn
+++ b/bsc/MSC_ConnectionHandler.ttcn
@@ -86,9 +86,11 @@
 		[g_state == MSC_STATE_NONE] BSSAP.receive(tr_BSSMAP_ComplL3) -> value bssap {
 			/* respond with ASSIGNMENT CMD  */
 			g_state := MSC_STATE_WAIT_ASS_COMPL;
-			BSSAP.send(ts_BSSMAP_AssignmentReq(0, e1_timeslot));
+			var BSSMAP_IE_AoIP_TransportLayerAddress tla;
+			tla := valueof(ts_BSSMAP_IE_AoIP_TLA({ipv4:='01020304'O}, 12345));
+			BSSAP.send(ts_BSSMAP_AssignmentReq(omit, tla));
 			}
-		[g_state == MSC_STATE_WAIT_ASS_COMPL] BSSAP.receive(tr_BSSMAP_AssignmentComplete) {
+		[g_state == MSC_STATE_WAIT_ASS_COMPL] BSSAP.receive(tr_BSSMAP_AssignmentComplete(*,?)) {
 			/* FIXME: Send MGCP CRCX */
 			g_state := MSC_STATE_WAIT_CRCX_ACK;
 			var MgcpTransId trans_id := f_mgcp_alloc_tid();
diff --git a/library/BSSMAP_Templates.ttcn b/library/BSSMAP_Templates.ttcn
index 6e7813f..0d2db3d 100644
--- a/library/BSSMAP_Templates.ttcn
+++ b/library/BSSMAP_Templates.ttcn
@@ -256,7 +256,17 @@
 	cicLow := bit2oct((substr(int2bit(span, 11), 8, 3) << 5) & int2bit(ts, 5))
 }
 
-template (value) PDU_BSSAP ts_BSSMAP_AssignmentReq(uint11_t span, uint5_t ts)
+template (value) BSSMAP_IE_AoIP_TransportLayerAddress ts_BSSMAP_IE_AoIP_TLA(BSSMAP_FIELD_IPAddress addr,
+									    uint16_t udp_port) := {
+	elementIdentifier := '7C'O,
+	lengthIndicator := 0, /* overwritten */
+	ipAddress := addr,
+	uDPPortValue := udp_port
+}
+
+template PDU_BSSAP
+ts_BSSMAP_AssignmentReq(template BSSMAP_IE_CircuitIdentityCode cic := omit,
+			template BSSMAP_IE_AoIP_TransportLayerAddress aoip := omit)
 modifies ts_BSSAP_BSSMAP := {
 	pdu := {
 		bssmap := {
@@ -265,7 +275,7 @@
 				channelType := ts_BSSMAP_IE_ChannelType,
 				layer3HeaderInfo := omit,
 				priority := omit,
-				circuitIdentityCode := ts_BSSMAP_IE_CIC(span, ts),
+				circuitIdentityCode := cic,
 				downLinkDTX_Flag := omit,
 				interferenceBandToBeUsed := omit,
 				classmarkInformationType2 := omit,
@@ -276,7 +286,7 @@
 				serviceHandover := omit,
 				encryptionInformation := omit,
 				talkerPriority := omit,
-				aoIPTransportLayer := omit,
+				aoIPTransportLayer := aoip,
 				codecList := omit,
 				callIdentifier := omit,
 				kC128 := omit,
@@ -321,7 +331,9 @@
 	}
 }
 
-template (value) PDU_BSSAP ts_BSSMAP_AssignmentComplete(BSSMAP_IE_CircuitIdentityCode cic)
+template PDU_BSSAP
+ts_BSSMAP_AssignmentComplete(template BSSMAP_IE_CircuitIdentityCode cic := omit,
+			     template BSSMAP_IE_AoIP_TransportLayerAddress aoip := omit)
 modifies ts_BSSAP_BSSMAP := {
 	pdu := {
 		bssmap := {
@@ -336,7 +348,7 @@
 				speechVersion := omit,
 				lSAIdentifier := omit,
 				talkerPriority := omit,
-				aoIPTransportLayer := omit,
+				aoIPTransportLayer := aoip,
 				speechCodec := omit,
 				codecList := omit,
 				lCLS_BSS_Status := omit
@@ -345,13 +357,15 @@
 	}
 }
 
-template PDU_BSSAP tr_BSSMAP_AssignmentComplete modifies tr_BSSAP_BSSMAP := {
+template PDU_BSSAP tr_BSSMAP_AssignmentComplete(template BSSMAP_IE_CircuitIdentityCode cic := *,
+						template BSSMAP_IE_AoIP_TransportLayerAddress aoip := *)
+modifies tr_BSSAP_BSSMAP := {
 	pdu := {
 		bssmap := {
 			assignmentComplete := {
 				messageType := '02'O,	/* overwritten */
 				rR_Cause := *,
-				circuitIdentityCode := ?,
+				circuitIdentityCode := cic,
 				cellIdentifier := *,
 				chosenChannel := *,
 				chosenEncryptionAlgorithm := *,
@@ -359,7 +373,7 @@
 				speechVersion := *,
 				lSAIdentifier := *,
 				talkerPriority := *,
-				aoIPTransportLayer := *,
+				aoIPTransportLayer := aoip,
 				speechCodec := *,
 				codecList := *,
 				lCLS_BSS_Status := *
