Commit c0671740 authored by schmitting's avatar schmitting
Browse files

New PRACK templates and PRACK steps for sdp transport

parent a6c91289
Loading
Loading
Loading
Loading
+22 −0
Original line number Diff line number Diff line
@@ -427,6 +427,28 @@ module LibIms_Steps
	group awaitingMessage {
	}
	group sendMessage {
	/**
	* 
	* @desc  send PRACK message
	* @param p_request template of the message to be sent
	*/
	function f_SendPRACK_sdp(template MessageBody p_mb) runs on SipComponent
	{
		f_setHeadersGeneral(vc_cSeq, "PRACK"); // cseq, contact, branch, via	
		vc_rAck := valueof(m_RAck(vc_response.msgHeader.rSeq.responseNum, vc_cSeq.seqNumber, vc_cSeq.method));
		
		SIPP.send(m_PRACK_Request_sdp(
            vc_requestUri, 
            vc_callId, 
            vc_cSeq, 
            vc_from, 
            vc_to, 
            vc_via,
            vc_rAck,
            p_mb
    	)) to vc_sent_label;	  
	}

	}
	group globalSteps {
		
+51 −17
Original line number Diff line number Diff line
@@ -358,6 +358,12 @@ group HeaderFieldTemplates{
			optionsTags := {"timer"}
	}
	
	template Supported m_supported_histinfo:=
	{
			fieldName := SUPPORTED_E,
			optionsTags := {"histinfo"}
	}
	
	
	template Supported m_supported_fromChange:=
	{
@@ -1820,6 +1826,27 @@ group request_send {
	}
	
	
		template PRACK_Request m_PRACK_Request_sdp (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq,
		  From p_from, To p_to, Via p_via, RAck p_RAck, template MessageBody p_mb) 
		  modifies m_PRACK_Request_Base :=
		{
			requestLine	:=
			{
				requestUri := p_requestUri
			},
			msgHeader :=
			{
				callId := p_callId,
				contentLength	:= {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))},
				cSeq := {fieldName:=CSEQ_E, seqNumber:= p_cSeq.seqNumber, method:= "PRACK"},
				fromField := p_from,
				rAck := p_RAck,
				toField := p_to,
				via := p_via
			},
			messageBody := p_mb
		}
		
	template PUBLISH_Request m_PUBLISH_Request_UE (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq,
			From p_from, To p_to, Via p_via, template Event p_event, template RAck p_RAck, template MessageBody p_mb,template Route p_route) 
			modifies m_PUBLISH_Request_Base :=
@@ -2332,6 +2359,29 @@ group request_receive {
					   }
	    }

	template NOTIFY_Request mw_NOTIFY_Request(
		template CallId p_callId, 
		template charstring p_state,
		template charstring p_contentType,
		template Event p_event,
		template MessageBody p_mb
	) modifies mw_NOTIFY_Request_Base := {
		msgHeader :=
		{
			subscriptionState := mw_subscriptionState(p_state),
			contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  p_contentType},
			event := p_event
		},
		messageBody := p_mb
	}
		template PRACK_Request mw_PRACK_Request_sdp(template CallId p_callId, template MessageBody p_mb) modifies mw_PRACK_Request_Base :=
		{
			msgHeader :=
			{
				callId := p_callId
			},
            messageBody := p_mb
		}
	template MESSAGE_Request mw_MESSAGE_Request_PchargingVector	(template charstring p_id, template charstring p_paramValue)
		modifies mw_MESSAGE_Request_Base
		:=
@@ -2434,22 +2484,6 @@ group request_receive {
		}
	}
	
	template NOTIFY_Request mw_NOTIFY_Request(
		template CallId p_callId, 
		template charstring p_state,
		template charstring p_contentType,
		template Event p_event,
		template MessageBody p_mb
	) modifies mw_NOTIFY_Request_Base := {
		msgHeader :=
		{
			subscriptionState := mw_subscriptionState(p_state),
			contentType := {fieldName := CONTENT_TYPE_E, mediaType :=  p_contentType},
			event := p_event
		},
		messageBody := p_mb
	}

}//end group request_receive
group response_send
{