Commit 747b5a7a authored by Bostjan Pintar's avatar Bostjan Pintar
Browse files

Merge branch 'TTF016' of https://forge.etsi.org/rep/int/vxlte/sccas-con into TTF016

parents 1e6fc7df b1898e4a
Loading
Loading
Loading
Loading
+31 −39
Original line number Original line Diff line number Diff line
@@ -349,7 +349,7 @@ Package TP_SCCAS_Chapter_9_3 {
       	 	
       	 	
       	 	Initial conditions with {
       	 	Initial conditions with {
       	 		the UE entity isRegisteredTo the IMS
       	 		the UE entity isRegisteredTo the IMS
       	 		// TODO: SCC AS supports the MSC Server assisted mid-call feature according to operator policy 
       	 		// SCC AS supports the MSC Server assisted mid-call feature according to operator policy 
       	 	}
       	 	}
       	 	
       	 	
       	 	Expected behaviour
       	 	Expected behaviour
@@ -416,7 +416,7 @@ Package TP_SCCAS_Chapter_9_3 {
	       	 	
	       	 	
	       	 	Initial conditions with {
	       	 	Initial conditions with {
	       	 		the UE entity isRegisteredTo the IMS
	       	 		the UE entity isRegisteredTo the IMS
	       	 		// TODO: SCC AS supports the MSC Server g.3gpp.drvcc-alerting feature 
	       	 		// SCC AS supports the MSC Server g.3gpp.drvcc-alerting feature 
	       	 	}
	       	 	}
	       	 	
	       	 	
	       	 	Expected behaviour
	       	 	Expected behaviour
@@ -501,7 +501,6 @@ Package TP_SCCAS_Chapter_9_3 {
	        
	        
	        	Initial conditions with {
	        	Initial conditions with {
	            	the UE entity isRegisteredTo the IMS 
	            	the UE entity isRegisteredTo the IMS 
					// TODO: 
					// here are one or more dialogs in an early dialog phase supporting a session with active speech media component such that:
					// here are one or more dialogs in an early dialog phase supporting a session with active speech media component such that:
					//		1) all dialogs are early dialogs created by the same SIP INVITE request;
					//		1) all dialogs are early dialogs created by the same SIP INVITE request;
					//		2) a SIP 180 (Ringing) response to SIP INVITE request was received in at least one of those early dialogs;
					//		2) a SIP 180 (Ringing) response to SIP INVITE request was received in at least one of those early dialogs;
@@ -574,7 +573,7 @@ Package TP_SCCAS_Chapter_9_3 {
	        
	        
	        	Config Id CFG_SCCAS_01
	        	Config Id CFG_SCCAS_01
	        
	        
	       	 	PICS Selection NONE  // TODO
	       	 	PICS Selection NONE  
	        
	        
	        	Initial conditions with {
	        	Initial conditions with {
	            	the UE entity isRegisteredTo the IMS 
	            	the UE entity isRegisteredTo the IMS 
@@ -727,11 +726,11 @@ Package TP_SCCAS_Chapter_9_3 {
        
        
        	Config Id CFG_SCCAS_01
        	Config Id CFG_SCCAS_01
        
        
       	 	PICS Selection NONE // TODO
       	 	PICS Selection NONE 
        
        
        	Initial conditions with {
        	Initial conditions with {
            	the UE entity isRegisteredTo the IMS 
            	the UE entity isRegisteredTo the IMS 
				// TODO: initial condition SIP INVITE request to PS to CS STN
				// initial condition SIP INVITE request to PS to CS STN
				// "In order to transfer an additional session on the originating side that can be in pre-alerting phase or in an alerting phase,
				// "In order to transfer an additional session on the originating side that can be in pre-alerting phase or in an alerting phase,
				// the SCC AS shall send a SIP REFER request in the
				// the SCC AS shall send a SIP REFER request in the
				// dialog created by the SIP INVITE request due to PS to CS STN"
				// dialog created by the SIP INVITE request due to PS to CS STN"
@@ -765,7 +764,6 @@ Package TP_SCCAS_Chapter_9_3 {
    		Expected behaviour
    		Expected behaviour
            	ensure that {
            	ensure that {
                	when {                    	      
                	when {                    	      
                	    // TODO: Trigger unclear for this refer    
                    	the IUT entity receives an ACK 
                    	the IUT entity receives an ACK 


                    from the IMS_S_CSCF entity
                    from the IMS_S_CSCF entity
@@ -780,14 +778,14 @@ Package TP_SCCAS_Chapter_9_3 {
                        ReferSub indicating value false,  			// 1. the Refer-Sub header field with value "false"
                        ReferSub indicating value false,  			// 1. the Refer-Sub header field with value "false"
                        Require indicating value "norefersub",	// 2. the Require header field with value "norefersub"
                        Require indicating value "norefersub",	// 2. the Require header field with value "norefersub"
                        ReferTo containing "a SIP URI with the Target-Dialog_URI_header_field"  // 3. the Refer-To header field containing the additional transferred session SCC AS URI for PS to CS dual radio, where the URI also includes the following header fields containing the information related to the additional transferred session:
                        ReferTo containing "a SIP URI with the Target-Dialog_URI_header_field"  // 3. the Refer-To header field containing the additional transferred session SCC AS URI for PS to CS dual radio, where the URI also includes the following header fields containing the information related to the additional transferred session:
                        	TargetDialog indicating value "TODO: dialog identifier of an dialog in the early phase supporting session of the SC UE", // A. the Target-Dialog header field populated, containing the dialog identifier of an dialog in the early phase supporting session of the SC UE;
                        	TargetDialog indicating value "dialog identifier of an dialog in the early phase supporting session of the SC UE", // A. the Target-Dialog header field populated, containing the dialog identifier of an dialog in the early phase supporting session of the SC UE;
                        	Require indicating value "tdialog", // B. the Require header field populated with the option tag value "tdialog"
                        	Require indicating value "tdialog", // B. the Require header field populated with the option tag value "tdialog"
                        	To indicating value "", // C. the To header field populated, containing the value of the P-Asserted-Identity provided by the remote UE during the session establishment;
                        	To indicating value "", // C. the To header field populated, containing the value of the P-Asserted-Identity provided by the remote UE during the session establishment;
                        	From indicating value "", // D. the From header field populated, containing the value of the P-Asserted-Identity provided by the SC UE during the session establishment;
                        	From indicating value "", // D. the From header field populated, containing the value of the P-Asserted-Identity provided by the SC UE during the session establishment;
                        	ContentType indicating value "application/sdp", // E. the Content-Type header field with "application/sdp";
                        	ContentType indicating value "application/sdp", // E. the Content-Type header field with "application/sdp";
                        	MessageBody containing  // F. the URI header field with the hname "body" populated with SDP describing the media streams as negotiated in the session with the remote UE
                        	MessageBody containing  // F. the URI header field with the hname "body" populated with SDP describing the media streams as negotiated in the session with the remote UE
                            	SDP containing
                            	SDP containing
                            		TODO indicating value "";
                            		Media indicating value "";
                        		;
                        		;
                        	;,
                        	;,
                        	PAssertedIdentity indicating value ""; // G. optionally the P-Asserted-Identity URI header field containing value of the P-Asserted-Identity header field of the received SIP INVITE request
                        	PAssertedIdentity indicating value ""; // G. optionally the P-Asserted-Identity URI header field containing value of the P-Asserted-Identity header field of the received SIP INVITE request
@@ -834,11 +832,11 @@ Package TP_SCCAS_Chapter_9_3 {
	        
	        
	        	Config Id CFG_SCCAS_01
	        	Config Id CFG_SCCAS_01
	        
	        
	       	 	PICS Selection NONE  // TODO
	       	 	PICS Selection NONE 
	        
	        
	        	Initial conditions with {
	        	Initial conditions with {
	            	the UE entity isRegisteredTo the IMS 
	            	the UE entity isRegisteredTo the IMS and
					// TODO: 
					the UE entity hasReceivedInitialRequestForDialog 
					// SIP INVITE was sent with:
					// SIP INVITE was sent with:
						//  creating the session in the terminating alerting phase without an SDP MIME body
						//  creating the session in the terminating alerting phase without an SDP MIME body
					// SCC AS supports PS to CS dual radio access
					// SCC AS supports PS to CS dual radio access
@@ -865,14 +863,14 @@ Package TP_SCCAS_Chapter_9_3 {
                        ReferSub indicating value false,  			// 1. the Refer-Sub header field with value "false"
                        ReferSub indicating value false,  			// 1. the Refer-Sub header field with value "false"
                        Require indicating value "norefersub",	// 2. the Require header field with value "norefersub"
                        Require indicating value "norefersub",	// 2. the Require header field with value "norefersub"
                        ReferTo containing "a SIP URI with the Target-Dialog_URI_header_field"  // 3. the Refer-To header field containing the additional transferred session SCC AS URI for PS to CS dual radio, where the URI also includes the following header fields containing the information related to the additional transferred session:
                        ReferTo containing "a SIP URI with the Target-Dialog_URI_header_field"  // 3. the Refer-To header field containing the additional transferred session SCC AS URI for PS to CS dual radio, where the URI also includes the following header fields containing the information related to the additional transferred session:
                        	TargetDialog indicating value "TODO: dialog identifier of an dialog in the early phase supporting session of the SC UE", // A. the Target-Dialog header field populated, containing the dialog identifier of an dialog in the early phase supporting session of the SC UE;
                        	TargetDialog indicating value "dialog identifier of an dialog in the early phase supporting session of the SC UE", // A. the Target-Dialog header field populated, containing the dialog identifier of an dialog in the early phase supporting session of the SC UE;
                        	Require indicating value "tdialog", // B. the Require header field populated with the option tag value "tdialog"
                        	Require indicating value "tdialog", // B. the Require header field populated with the option tag value "tdialog"
                        	To indicating value "", // C. the To header field populated, containing the value of the P-Asserted-Identity provided by the remote UE during the session establishment;
                        	To indicating value "", // C. the To header field populated, containing the value of the P-Asserted-Identity provided by the remote UE during the session establishment;
                        	From indicating value "", // D. the From header field populated, containing the value of the P-Asserted-Identity provided by the SC UE during the session establishment;
                        	From indicating value "", // D. the From header field populated, containing the value of the P-Asserted-Identity provided by the SC UE during the session establishment;
                        	ContentType indicating value "application/sdp", // E. the Content-Type header field with "application/sdp";
                        	ContentType indicating value "application/sdp", // E. the Content-Type header field with "application/sdp";
                        	MessageBody containing  // F. the URI header field with the hname "body" populated with SDP describing the media streams as negotiated in the session with the remote UE
                        	MessageBody containing  // F. the URI header field with the hname "body" populated with SDP describing the media streams as negotiated in the session with the remote UE
                            	SDP containing
                            	SDP containing
                            		TODO indicating value "";
                            		Media indicating value "";
                        		;
                        		;
                        	;,
                        	;,
                        	PAssertedIdentity indicating value ""; // G. optionally the P-Asserted-Identity URI header field containing value of the P-Asserted-Identity header field of the received SIP INVITE request
                        	PAssertedIdentity indicating value ""; // G. optionally the P-Asserted-Identity URI header field containing value of the P-Asserted-Identity header field of the received SIP INVITE request
@@ -905,11 +903,11 @@ Package TP_SCCAS_Chapter_9_3 {
	        
	        
	        	Config Id CFG_SCCAS_01
	        	Config Id CFG_SCCAS_01
	        
	        
	       	 	PICS Selection NONE  // TODO
	       	 	PICS Selection NONE  
	        
	        
	        	Initial conditions with {
	        	Initial conditions with {
	            	the UE entity isRegisteredTo the IMS 
	            	the UE entity isRegisteredTo the IMS and
					// TODO: 
	            	the UE entity hasReceivedInitialRequestForDialog 
					// SIP INVITE was sent with:
					// SIP INVITE was sent with:
						//  creating the session in the terminating alerting phase without an SDP MIME body
						//  creating the session in the terminating alerting phase without an SDP MIME body
					// SCC AS supports PS to CS dual radio access
					// SCC AS supports PS to CS dual radio access
@@ -981,12 +979,12 @@ Package TP_SCCAS_Chapter_9_3 {
        
        
        	Config Id CFG_SCCAS_01
        	Config Id CFG_SCCAS_01
        
        
       	 	PICS Selection NONE  // TODO
       	 	PICS Selection NONE 
        
        
        	Initial conditions with {
        	Initial conditions with {
            	the UE entity isRegisteredTo the IMS 
            	the UE entity isRegisteredTo the IMS 
            	// TODO
            	// source access leg is an ongoing session containing only an active or inactive media component
            	// source access leg is an ongoing session containing only an active or inactive media component
            	// transfer of a session is successfully completed
				
				
        	}
        	}
        	
        	
@@ -994,7 +992,6 @@ Package TP_SCCAS_Chapter_9_3 {
            	ensure that {
            	ensure that {
                	when {                 
                	when {                 
                    	the IUT entity receives an ACK 
                    	the IUT entity receives an ACK 
                    	// TODO: trigger for event unclear, transfer of a session is successfully completed
                    from the IMS_S_CSCF entity
                    from the IMS_S_CSCF entity
                }                    	             	
                }                    	             	
              	then {
              	then {
@@ -1034,16 +1031,14 @@ Package TP_SCCAS_Chapter_9_3 {
        
        
        	Initial conditions with {
        	Initial conditions with {
            	the UE entity isRegisteredTo the IMS 
            	the UE entity isRegisteredTo the IMS 
            	// TODO: session is dialog in an early dialog phase on the originating side
            	// session is dialog in an early dialog phase on the originating side
            	// transfer of a session is successfully completed
        	}
        	}
        	
        	
        	Expected behaviour
        	Expected behaviour
            	ensure that {
            	ensure that {
                	when {                 
                	when {                 
                    	the IUT entity receives an ACK                    	                  	
                    	the IUT entity receives an ACK                    	                  	
                    	
                    	// TODO: trigger for event unclear, transfer of a session is successfully completed
                    	
                    from the IMS_S_CSCF entity
                    from the IMS_S_CSCF entity
                }                    	             	
                }                    	             	
              	then {
              	then {
@@ -1078,11 +1073,10 @@ Package TP_SCCAS_Chapter_9_3 {
        
        
        	Config Id CFG_SCCAS_01
        	Config Id CFG_SCCAS_01
        
        
       	 	PICS Selection NONE  // TODO
       	 	PICS Selection NONE 
        
        
        	Initial conditions with {
        	Initial conditions with {
            	the UE entity isRegisteredTo the IMS 
            	the UE entity isRegisteredTo the IMS 
            	// TODO:
            	// transfer of a session is successfully completed
            	// transfer of a session is successfully completed
            	// and
            	// and
            	// the source access leg contains media components other than speech media component
            	// the source access leg contains media components other than speech media component
@@ -1092,9 +1086,6 @@ Package TP_SCCAS_Chapter_9_3 {
            	ensure that {
            	ensure that {
                	when {                 
                	when {                 
                    	the IUT entity receives an ACK               
                    	the IUT entity receives an ACK               
                    	
                        // TODO: trigger for event unclear, transfer of a session is successfully completed
                        
                    from the IMS_S_CSCF entity
                    from the IMS_S_CSCF entity
                }                    	             	
                }                    	             	
              	then {
              	then {
@@ -1108,7 +1099,7 @@ Package TP_SCCAS_Chapter_9_3 {
                        ContentLength,
                        ContentLength,
                        MessageBody containing
                        MessageBody containing
                            SDP containing
                            SDP containing
                                Media indicating value "TODO: the source access leg contains media components other than speech media component";;;
                                Media indicating value "the source access leg contains media components other than speech media component";;;
                    to the IMS_S_CSCF entity
                    to the IMS_S_CSCF entity
                    }
                    }
                }
                }
@@ -1190,7 +1181,7 @@ Package TP_SCCAS_Chapter_9_3 {
                    	ContentType indicating value "application/sdp", 
                    	ContentType indicating value "application/sdp", 
                        	MessageBody containing  // 3) a new SDP offer, including:
                        	MessageBody containing  // 3) a new SDP offer, including:
                            	SDP containing
                            	SDP containing
                            		Media indicating value PX_PSMedia; // TODO: PIX for media, media characteristics as received in the SIP INVITE request
                            		Media indicating value PX_PSMedia; 
                        		;
                        		;
                        	;
                        	;
                    to the IMS_S_CSCF entity
                    to the IMS_S_CSCF entity
@@ -1233,7 +1224,8 @@ Package TP_SCCAS_Chapter_9_3 {
	        
	        
	        	Initial conditions with {
	        	Initial conditions with {
	            	the UE entity isRegisteredTo the IMS and
	            	the UE entity isRegisteredTo the IMS and
	            	 the IUT entity hasAchievedInitialINVITE // TODO: INVITE contains: g3gppDrvccAlerting
	            	 the IUT entity hasAchievedInitialINVITE 
	            	 // INVITE contains: g3gppDrvccAlerting
	        		 // SCC AS supports CS to PS dual radio access transfer for calls in alerting phase
	        		 // SCC AS supports CS to PS dual radio access transfer for calls in alerting phase
	        	}
	        	}
	        	
	        	
@@ -1254,7 +1246,7 @@ Package TP_SCCAS_Chapter_9_3 {
	                    	ContentType indicating value "application/sdp", 
	                    	ContentType indicating value "application/sdp", 
	                        	MessageBody containing  // 3) a new SDP offer, including:
	                        	MessageBody containing  // 3) a new SDP offer, including:
	                            	SDP containing
	                            	SDP containing
	                            		Media indicating value PX_PSMedia; // TODO: PIX for media, media characteristics as received in the SIP INVITE request
	                            		Media indicating value PX_PSMedia; 
	                        		;
	                        		;
	                        	;
	                        	;
	                    to the IMS_S_CSCF entity
	                    to the IMS_S_CSCF entity
@@ -1356,7 +1348,7 @@ Package TP_SCCAS_Chapter_9_3 {
	                        	ContentType indicating value "application/sdp", // E. the Content-Type header field with "application/sdp";	                        	
	                        	ContentType indicating value "application/sdp", // E. the Content-Type header field with "application/sdp";	                        	
	                        	MessageBody containing  // F. the URI header field with the hname "body" populated with SDP describing the media streams as negotiated in the session with the remote UE
	                        	MessageBody containing  // F. the URI header field with the hname "body" populated with SDP describing the media streams as negotiated in the session with the remote UE
	                            	SDP containing
	                            	SDP containing
	                            		TODO indicating value "";;;
	                            		Media indicating value "";;;
	                        		,
	                        		,
	                        Accept containing  // if a SIP 180 (Ringing) response to the INVITE request has already been received on the source access leg, the state-info XML element containing "early" and the direction XML element containing "receiver"
	                        Accept containing  // if a SIP 180 (Ringing) response to the INVITE request has already been received on the source access leg, the state-info XML element containing "early" and the direction XML element containing "receiver"
                            	MIME indicating value "application/vnd.3gpp.state-and-event-info.xml";; //subclause D.2.3	
                            	MIME indicating value "application/vnd.3gpp.state-and-event-info.xml";; //subclause D.2.3	
+28 −0
Original line number Original line Diff line number Diff line
@@ -475,6 +475,29 @@ module AtsSccas_Steps {
            LibSip_Steps.f_setHeadersINVITE(p_cSeq_s);
            LibSip_Steps.f_setHeadersINVITE(p_cSeq_s);
        } // end f_setHeadersINVITE_AS
        } // end f_setHeadersINVITE_AS


		/**
		 * @desc Sets BYE header fields (IMS addresses) extension of general settings from LibSip basic function
		 * @param p_cSeq_s The current cSeq
		 * @param p_to_user The selected user's SIP URL
		 */
		function f_setHeaders_BYE_AS(
			inout CSeq p_cSeq_s,
			in SipUrl p_to_user,
			in SipUrl p_from_user
		) runs on ImsComponent  {
			vc_to := f_initToHeader(p_to_user); // init of vc_to using userProfile identifier
			vc_from := f_initFromHeader(p_from_user, f_getRndTag()); // init of vc_from using userProfile identifier
			vc_requestUri := p_to_user; // Request URI of Invite is identical with To header
			if (vc_boo_route) {
				vc_route := m_route_interface(vc_interfaceprofile);
			}
			if (vc_boo_recordRoute) {
				vc_recordRoute := m_recordRoute_currIpAddr(vc_userprofile);
			}

			LibSip_Steps.f_setHeadersBYE(p_cSeq_s);
		} // end f_setHeadersBYE_AS

			/**
			/**
			 * @desc setting of general and basic OPTIONS header fields in additon to the addresses (To, From, ReqUri)
			 * @desc setting of general and basic OPTIONS header fields in additon to the addresses (To, From, ReqUri)
			 * @param p_cSeq_s
			 * @param p_cSeq_s
@@ -640,6 +663,11 @@ module AtsSccas_Steps {
			var CSeq v_cSeq_s := p_cSeq_s;
			var CSeq v_cSeq_s := p_cSeq_s;
		} //end function f_ReleaseDialogAS
		} //end function f_ReleaseDialogAS


		function f_PS2CSTransfer(in CSeq p_cSeq_s)
		    runs on ImsComponent {
            var CSeq v_cSeq_s := p_cSeq_s;
        } //end function f_PS2CSTransfer
		


        /**
        /**
         * @desc function send OPTIONS message
         * @desc function send OPTIONS message
+155 −3
Original line number Original line Diff line number Diff line
@@ -3256,12 +3256,48 @@ module AtsSccas_TCFunctions {
                        f_EstablishDialogAS(v_cSeq_s);
                        f_EstablishDialogAS(v_cSeq_s);
                        
                        
                        //Send BYE with reason 503
                        //Send BYE with reason 503
				        f_IncCSeq(v_cSeq_s);
						f_setHeaders_BYE_AS(v_cSeq_s, f_initSipUrl(c_userProfile_PCSCFwithHomeUE), f_initSipUrl(c_userProfile_SCSCFwithHomeUE));
                        
				        f_SendBYE(
									 m_sccas_bye_reason(
													vc_requestUri,
													vc_callId, 
													p_cSeq_s, 
													vc_from, vc_to, vc_via_REG, 
													-, m_Reason(503)
													));
                  
						tc_ack.start;
						alt {
							[] SIPP.receive(mw_BYE_Request_Base(vc_callId)) {
								log("*** " & __SCOPE__ & ": FAIL: BYE message was received ***");
								f_selfOrClientSyncAndVerdict(c_tbDone, e_error); // sync
							}
							
							[] SIPP.receive(mw_INVITE_Request_AS(?, ?, ?, ?, *, *)) {
								tc_ack.stop;
								log("*** " & __SCOPE__ & ": PASS: INVITE message was received ***");


                        //?? send INVITE


                        //?? do not receive BYE
								f_sendResponse(
									 m_Response_2xx_Base(
													c_statusLine200,
													vc_callId, 
													p_cSeq_s, 
													vc_from, 
													vc_to, 
													vc_via_REG
													));
								f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // sync
							}
							[] tc_ack.timeout {
								f_selfOrClientSyncAndVerdict(c_tbDone, e_error); // sync 
							}
						}
                        
                        
                        
                        
				        f_ReleaseDialogAS(v_cSeq_s);
                        f_deregistrationAS(v_cSeq_s);
                        f_deregistrationAS(v_cSeq_s);
                        f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
                        f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
                
                
@@ -3274,6 +3310,64 @@ module AtsSccas_TCFunctions {
             */
             */
            function f_TC_ISC_SCCAS_SRA_BYE_02(in CSeq p_cSeq_s)
            function f_TC_ISC_SCCAS_SRA_BYE_02(in CSeq p_cSeq_s)
            runs on ImsComponent {
            runs on ImsComponent {
				// Local variables
				var CSeq v_cSeq_s := p_cSeq_s;
                
				f_registrationAS(v_cSeq_s);
				f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync

            
				f_EstablishDialogAS(v_cSeq_s);
                f_PS2CSTransfer(v_cSeq_s);        
				
				//Send BYE with reason 503
				f_IncCSeq(v_cSeq_s);
				f_setHeaders_BYE_AS(v_cSeq_s, f_initSipUrl(c_userProfile_PCSCFwithHomeUE), f_initSipUrl(c_userProfile_SCSCFwithHomeUE));
                        
				f_SendBYE(m_sccas_bye_targetDialog(
				                                vc_requestUri,
												vc_callId, 
												p_cSeq_s, 
												vc_from, vc_to, vc_via_REG,
												-,-,-,-,
												m_Reason(503)
												));
				tc_ack.start;
				alt	{
					[] SIPP.receive(mw_Response_2xx_Base(vc_callId, vc_cSeq)) {
						log("*** " & __SCOPE__ & ": PASS: 200 Ok message was received ***")
					}
					[] tc_ack.timeout {
					    f_selfOrClientSyncAndVerdict(c_tbDone, e_error); // sync 
				    }
				}		
				
				tc_ack.start;
				alt {
					[] SIPP.receive(mw_BYE_Request_Base(vc_callId)) {
						log("*** " & __SCOPE__ & ": PASS: BYE message was received ***");
						
						f_sendResponse(
									 m_Response_2xx_Base(
													c_statusLine200,
													vc_callId, 
													p_cSeq_s, 
													vc_from, 
													vc_to, 
													vc_via_REG
													));
													
						f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
					}
					[] tc_ack.timeout {
						f_selfOrClientSyncAndVerdict(c_tbDone, e_error); // sync 
					}
				}
                        
                        
				f_ReleaseDialogAS(v_cSeq_s);
				f_deregistrationAS(v_cSeq_s);
				f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
                
                
            } // End of function f_TC_ISC_SCCAS_SRA_BYE_02
            } // End of function f_TC_ISC_SCCAS_SRA_BYE_02
        
        
@@ -3283,6 +3377,64 @@ module AtsSccas_TCFunctions {
             */
             */
            function f_TC_ISC_SCCAS_SRA_BYE_03(in CSeq p_cSeq_s)
            function f_TC_ISC_SCCAS_SRA_BYE_03(in CSeq p_cSeq_s)
            runs on ImsComponent {
            runs on ImsComponent {
				// Local variables
				var CSeq v_cSeq_s := p_cSeq_s;
                
				f_registrationAS(v_cSeq_s);
				f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync

            
				f_EstablishDialogAS(v_cSeq_s);
				f_PS2CSTransfer(v_cSeq_s);        
                
				//Send BYE with reason 503
				f_IncCSeq(v_cSeq_s);
				f_setHeaders_BYE_AS(v_cSeq_s, f_initSipUrl(c_userProfile_PCSCFwithHomeUE), f_initSipUrl(c_userProfile_SCSCFwithHomeUE));
                        
				f_SendBYE(m_sccas_bye_targetDialog(
												vc_requestUri,
												vc_callId, 
												p_cSeq_s, 
												vc_from, vc_to, vc_via_REG,
												-,-,-,-,
												m_Reason(16)
												));
				tc_ack.start;
				alt {
					[] SIPP.receive(mw_Response_2xx_Base(vc_callId, vc_cSeq)) {
						log("*** " & __SCOPE__ & ": PASS: 200 Ok message was received ***")
					}
					[] tc_ack.timeout {
						f_selfOrClientSyncAndVerdict(c_tbDone, e_error); // sync 
					}
				}       
                
				tc_ack.start;
				alt {
					[] SIPP.receive(mw_BYE_Request_Base(vc_callId)) {
						log("*** " & __SCOPE__ & ": PASS: BYE message was received ***");
						
						f_sendResponse(
									 m_Response_2xx_Base(
													c_statusLine200,
													vc_callId, 
													p_cSeq_s, 
													vc_from, 
													vc_to, 
													vc_via_REG
													));
                                                    
						f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
					}
					[] tc_ack.timeout {
						f_selfOrClientSyncAndVerdict(c_tbDone, e_error); // sync 
					}
				}
                        
                        
				f_ReleaseDialogAS(v_cSeq_s);
				f_deregistrationAS(v_cSeq_s);
				f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
                
                
            } // End of function f_TC_ISC_SCCAS_SRA_BYE_03
            } // End of function f_TC_ISC_SCCAS_SRA_BYE_03
        
        
+36 −1
Original line number Original line Diff line number Diff line
@@ -539,6 +539,41 @@ module AtsSccas_Templates
							},
							},
							messageBody := p_mb
							messageBody := p_mb
						}
						}
						template (omit) BYE_Request m_sccas_bye_reason(
						                    template(value) SipUrl p_requestUri,
											template(value) CallId p_callId,
											template(value) CSeq p_cSeq,
											template(value) From p_from,
											template(value) To p_to,
											template(value) Via p_via,
											template(omit) Route p_route := omit,
											in template (value) Reason p_reason := m_Reason(503)
						) modifies m_BYE_Request_UE := {
							msgHeader := {
								reason := p_reason
							}
						}
						
					    template (omit) BYE_Request m_sccas_bye_targetDialog(
															  in template (value) SipUrl p_requestUri,
															  in template (value) CallId p_callId,
															  in template (value) CSeq p_cSeq,
															  in template (value) From p_from,
															  in template (value) To p_to,
															  in template (value) LibSip_SIPTypesAndValues.Via p_via,
															  in template (omit) Route p_route := omit,
					                                          in template (omit) Require p_require := m_require({"tdialog"}),
															  in template (value) TargetDialog p_targetDialog := m_targetDialog("CallidString"),
															  in template (omit) PAssertedID p_pAssertedID := omit,//m_PAssertedID(m_AddrUnion_NameAddr(m_NameAddr(,))),
					                                          in template (value) Reason p_reason := m_Reason(503)
						) modifies m_BYE_Request_UE := {
							msgHeader := {
								require := p_require,
								targetDialog := p_targetDialog,
								pAssertedID := p_pAssertedID,
								reason := p_reason
							}
						}
			                      
			                      
                        group response_sent{
                        group response_sent{
							template(value) Response m_Response_18XonINVITE_AS_Featurecaps(
							template(value) Response m_Response_18XonINVITE_AS_Featurecaps(