Loading ttcn/LibIms_Steps.ttcn +38 −1 Original line number Diff line number Diff line Loading @@ -197,6 +197,40 @@ module LibIms_Steps }// end f_setHeadersNOTIFY /* * * @desc sets Publish header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq * @param p_to_user user_profile id of the user to be invited * @verdict */ function f_setHeadersPUBLISH(inout CSeq p_cSeq_s, in integer p_to_user) runs on ImsComponent { LibSip_Steps.f_setHeadersPUBLISH(p_cSeq_s); vc_branch := c_branchCookie & f_getRndTag(); vc_via:={ fieldName := VIA_E, viaBody := {valueof(m_ViaBody_virtual_XCSCF(vc_branch, vc_userprofile))} }; vc_to := f_initToHeader(p_to_user); // init of vc_to using userProfile identifier vc_from := f_initFromHeader(vc_userprofile.id, f_getRndTag()); // init of vc_from using userProfile identifier vc_requestUri := f_initSipUrl(p_to_user); // Request URI of Invite is identical with To header if (vc_boo_route) { vc_route := valueof(m_route_interface(vc_interfaceprofile))}; if (vc_boo_recordRoute) { vc_recordRoute := valueof(m_recordRoute_currIpAddr(vc_userprofile))}; //contact header initialization for sending of PUBLISH from CSCF component vc_contact := valueof(m_Contact(m_SipUrl_currIpaddr_CSCF(vc_userprofile))); }// end f_setHeadersPUBLISH /** ** * @desc sets Subscribe header fields (IMS addresses) Loading Loading @@ -1046,6 +1080,9 @@ module LibIms_Steps //Preamble f_Registration(p_cSeq_s, p_register, PX_SIP_REGISTER_AUTHENTICATION_ENABLED); // deregistration in case of successful registration vc_DeregDone := false; f_setHeaders_SUBSCRIBE(p_cSeq_s); f_Subscription(p_cSeq_s, m_SUBSCRIBE_Request_UE(vc_requestUri, vc_callId, p_cSeq_s, vc_from, vc_to, vc_via, vc_contact, vc_route_REG)); Loading ttcn/LibIms_Templates.ttcn +64 −2 Original line number Diff line number Diff line Loading @@ -1057,6 +1057,16 @@ group modified_templates { group request_send { template ACK_Request m_ACK_Request_IMS (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to, Via p_via, template Route p_route) modifies m_ACK_Request_Base := { msgHeader := { route := p_route } } template BYE_Request m_BYE_Request_IMS ( SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to, Via p_via, template Route p_route) Loading Loading @@ -1671,6 +1681,58 @@ group request_send { 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 := { requestLine := { requestUri := p_requestUri }, msgHeader := { callId := p_callId, contentLength := {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))}, contentType := {fieldName := CONTENT_TYPE_E, mediaType := c_plainText/*c_sdpAplication*/}, cSeq := {fieldName:=CSEQ_E, seqNumber:= p_cSeq.seqNumber, method:= "PUBLISH"}, event := p_event, fromField := p_from, route := p_route, pAccessNetworkInfo := m_pAccessNetworkInfo_IEEE_11a, toField := p_to, via := p_via }, messageBody := p_mb } template PUBLISH_Request m_PUBLISH_Request_IMS (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,template RecordRoute p_recordRoute,template PChargingVector p_pChargingVector) modifies m_PUBLISH_Request_Base := { requestLine := { requestUri := p_requestUri }, msgHeader := { callId := p_callId, contentLength := {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))}, contentType := {fieldName := CONTENT_TYPE_E, mediaType := c_plainText/*c_sdpAplication*/}, cSeq := {fieldName:=CSEQ_E, seqNumber:= p_cSeq.seqNumber, method:= "PUBLISH"}, event := p_event, fromField := p_from, route := p_route, recordRoute:= p_recordRoute, pAccessNetworkInfo := m_pAccessNetworkInfo_IEEE_11a, pChargingVector := p_pChargingVector, toField := p_to, via := p_via }, messageBody := p_mb } /* * * @desc REFER message exchanged at Mw Loading Loading @@ -2726,7 +2788,7 @@ group response_send msgHeader := { pChargingFunctionAddresses := m_pChargingFunctionAddresses_fixedValue, pChargingVector := m_pChargingFunctionAddresses_fixedValue pChargingVector := p_pChargingVector } } Loading Loading @@ -2797,7 +2859,7 @@ group response_send } template Response m_Response_4XXonINVITE_UE (StatusLine p_statusLine, CallId p_callId, CSeq p_cSeq, From p_from, To p_to, Via p_via, Contact p_contact ) modifies m_Response_Base:= From p_from, To p_to, Via p_via, template Contact p_contact ) modifies m_Response_Base:= { msgHeader := { Loading Loading
ttcn/LibIms_Steps.ttcn +38 −1 Original line number Diff line number Diff line Loading @@ -197,6 +197,40 @@ module LibIms_Steps }// end f_setHeadersNOTIFY /* * * @desc sets Publish header fields (IMS addresses) * extension of general settings from LibSip basic function * @param p_cSeq_s current cSeq * @param p_to_user user_profile id of the user to be invited * @verdict */ function f_setHeadersPUBLISH(inout CSeq p_cSeq_s, in integer p_to_user) runs on ImsComponent { LibSip_Steps.f_setHeadersPUBLISH(p_cSeq_s); vc_branch := c_branchCookie & f_getRndTag(); vc_via:={ fieldName := VIA_E, viaBody := {valueof(m_ViaBody_virtual_XCSCF(vc_branch, vc_userprofile))} }; vc_to := f_initToHeader(p_to_user); // init of vc_to using userProfile identifier vc_from := f_initFromHeader(vc_userprofile.id, f_getRndTag()); // init of vc_from using userProfile identifier vc_requestUri := f_initSipUrl(p_to_user); // Request URI of Invite is identical with To header if (vc_boo_route) { vc_route := valueof(m_route_interface(vc_interfaceprofile))}; if (vc_boo_recordRoute) { vc_recordRoute := valueof(m_recordRoute_currIpAddr(vc_userprofile))}; //contact header initialization for sending of PUBLISH from CSCF component vc_contact := valueof(m_Contact(m_SipUrl_currIpaddr_CSCF(vc_userprofile))); }// end f_setHeadersPUBLISH /** ** * @desc sets Subscribe header fields (IMS addresses) Loading Loading @@ -1046,6 +1080,9 @@ module LibIms_Steps //Preamble f_Registration(p_cSeq_s, p_register, PX_SIP_REGISTER_AUTHENTICATION_ENABLED); // deregistration in case of successful registration vc_DeregDone := false; f_setHeaders_SUBSCRIBE(p_cSeq_s); f_Subscription(p_cSeq_s, m_SUBSCRIBE_Request_UE(vc_requestUri, vc_callId, p_cSeq_s, vc_from, vc_to, vc_via, vc_contact, vc_route_REG)); Loading
ttcn/LibIms_Templates.ttcn +64 −2 Original line number Diff line number Diff line Loading @@ -1057,6 +1057,16 @@ group modified_templates { group request_send { template ACK_Request m_ACK_Request_IMS (SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to, Via p_via, template Route p_route) modifies m_ACK_Request_Base := { msgHeader := { route := p_route } } template BYE_Request m_BYE_Request_IMS ( SipUrl p_requestUri, CallId p_callId, CSeq p_cSeq, From p_from, To p_to, Via p_via, template Route p_route) Loading Loading @@ -1671,6 +1681,58 @@ group request_send { 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 := { requestLine := { requestUri := p_requestUri }, msgHeader := { callId := p_callId, contentLength := {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))}, contentType := {fieldName := CONTENT_TYPE_E, mediaType := c_plainText/*c_sdpAplication*/}, cSeq := {fieldName:=CSEQ_E, seqNumber:= p_cSeq.seqNumber, method:= "PUBLISH"}, event := p_event, fromField := p_from, route := p_route, pAccessNetworkInfo := m_pAccessNetworkInfo_IEEE_11a, toField := p_to, via := p_via }, messageBody := p_mb } template PUBLISH_Request m_PUBLISH_Request_IMS (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,template RecordRoute p_recordRoute,template PChargingVector p_pChargingVector) modifies m_PUBLISH_Request_Base := { requestLine := { requestUri := p_requestUri }, msgHeader := { callId := p_callId, contentLength := {fieldName := CONTENT_LENGTH_E, len:= f_MessageBodyLength(valueof(p_mb))}, contentType := {fieldName := CONTENT_TYPE_E, mediaType := c_plainText/*c_sdpAplication*/}, cSeq := {fieldName:=CSEQ_E, seqNumber:= p_cSeq.seqNumber, method:= "PUBLISH"}, event := p_event, fromField := p_from, route := p_route, recordRoute:= p_recordRoute, pAccessNetworkInfo := m_pAccessNetworkInfo_IEEE_11a, pChargingVector := p_pChargingVector, toField := p_to, via := p_via }, messageBody := p_mb } /* * * @desc REFER message exchanged at Mw Loading Loading @@ -2726,7 +2788,7 @@ group response_send msgHeader := { pChargingFunctionAddresses := m_pChargingFunctionAddresses_fixedValue, pChargingVector := m_pChargingFunctionAddresses_fixedValue pChargingVector := p_pChargingVector } } Loading Loading @@ -2797,7 +2859,7 @@ group response_send } template Response m_Response_4XXonINVITE_UE (StatusLine p_statusLine, CallId p_callId, CSeq p_cSeq, From p_from, To p_to, Via p_via, Contact p_contact ) modifies m_Response_Base:= From p_from, To p_to, Via p_via, template Contact p_contact ) modifies m_Response_Base:= { msgHeader := { Loading