Commit 590c0212 authored by rennoch's avatar rennoch
Browse files

functionality due to check of announcements and media stream stopp

parent 9daa5aff
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -53,7 +53,10 @@ module LibSip_Interface
		  		
	signature s_SIP_conversation (in charstring text, out boolean answer);
	signature s_SIP_ringing (in charstring text, out boolean answer);
	type port operatorPort procedure {inout s_SIP_conversation; inout s_SIP_ringing};
    signature s_SIP_announcementA (in charstring text, out boolean answer);
	signature s_SIP_announcementB (in charstring text, out boolean answer);
    signature s_SIP_mediastopped (in charstring text, out boolean answer);
 	type port operatorPort procedure {inout s_SIP_conversation; inout s_SIP_ringing; inout s_SIP_announcementA; inout s_SIP_announcementB; inout s_SIP_mediastopped};
		  		
	//	Solution for building error problem. (Important for validation)
	//type component ImsComponent extends SipComponent need to be located in LibIms_Interface and not in LibSip_Interface module
+4 −1
Original line number Diff line number Diff line
@@ -307,6 +307,9 @@ group SIPSyncPointNames {
		const charstring c_sync1 := "sync1";
		const charstring c_sync2 := "sync2";
		const charstring c_sync3 := "sync3";
 		const charstring c_uPlaneStop := "uPlaneStop";
		const charstring c_annoucA := "announcementA";
		const charstring c_annoucB := "announcementB";
 }

} //end group Constants
+72 −0
Original line number Diff line number Diff line
@@ -3221,6 +3221,78 @@ group SipChecks
	return			
	} // end of f_check_Ringing

	/* 
	*  @desc check the announcement at SIP side (UE A)
	*		 
	*/
	function f_check_AnnouncementUE_A() runs on SipComponent
	{
	var boolean v_result;
	var charstring v_question := "confirm if announcement at UE A";
		
	if (PX_SIP_CheckConversation) {				
		opPort.call(s_SIP_announcementA:{v_question, -})
		{[] opPort.getreply(s_SIP_announcementA:{-, true}) {}
		 [] opPort.getreply(s_SIP_announcementA:{-, false}) 
			{all timer.stop;
			 setverdict(fail);
			 syncPort.send(m_syncClientStop);
			 stop;}
		}
	}

	f_selfOrClientSyncAndVerdict(c_annoucA, f_getVerdict());
	return			
	} // end of f_check_AnnouncementUE_A

	/* 
	*  @desc check the announcement at SIP side (UE B)
	*		 
	*/
	function f_check_AnnouncementUE_B() runs on SipComponent
	{
	var boolean v_result;
	var charstring v_question := "confirm if announcement at UE B";
		
	if (PX_SIP_CheckConversation) {				
		opPort.call(s_SIP_announcementB:{v_question, -})
		{[] opPort.getreply(s_SIP_announcementB:{-, true}) {}
			[] opPort.getreply(s_SIP_announcementB:{-, false}) 
			{all timer.stop;
				setverdict(fail);
				syncPort.send(m_syncClientStop);
				stop;}
		}
	}

	f_selfOrClientSyncAndVerdict(c_annoucB, f_getVerdict());
	return			
	} // end of f_check_AnnouncementUE_B
	
	/* 
	*  @desc check the stop of media stream
	*		 
	*/
	function f_check_MediaStopped() runs on SipComponent
	{
	var boolean v_result;
	var charstring v_question := "confirm if media stream stopped";
		
	if (PX_SIP_CheckConversation) {				
		opPort.call(s_SIP_mediastopped:{v_question, -})
		{[] opPort.getreply(s_SIP_mediastopped:{-, true}) {}
		 [] opPort.getreply(s_SIP_mediastopped:{-, false}) 
			{all timer.stop;
			 setverdict(fail);
			 syncPort.send(m_syncClientStop);
			 stop;}
		}
	}

	f_selfOrClientSyncAndVerdict(c_uPlaneStop, f_getVerdict());
	return			
	} // end of f_check_MediaStopped

}

group DefaultsTestStep