Commit 528e5b78 authored by filatov's avatar filatov
Browse files

v1.7.0 and v1.8.0 of LibSip and LibIms

parents 6a162efc a4887731
Loading
Loading
Loading
Loading
+0 −4
Original line number Original line Diff line number Diff line
@@ -115,10 +115,6 @@ group SUT_UE2 {
	/** @desc	charstring for home(SUT) REGISTRAR domain of UE2
	/** @desc	charstring for home(SUT) REGISTRAR domain of UE2
	*/
	*/
	  modulepar charstring  PX_IMS_SUT_UE2_REGISTRAR := "registrar.sut.net";
	  modulepar charstring  PX_IMS_SUT_UE2_REGISTRAR := "registrar.sut.net";
	  
	/** @desc	charstring for UE2 display name
	*/
	  modulepar charstring  PX_IMS_SUT_UE2_DISPLAY := "UE2@SUT";
} // end group SUT_UE2
} // end group SUT_UE2


group SUT_UE3 {
group SUT_UE3 {
+0 −4
Original line number Original line Diff line number Diff line
@@ -16,10 +16,6 @@ group Constants


const integer c_ISUP_HOP_COUNT:=31; //TODO replace this value with appropriate PIXIT parameter
const integer c_ISUP_HOP_COUNT:=31; //TODO replace this value with appropriate PIXIT parameter


// URN scheme (RFC 5031)
// TODO NOTE: this definition is for temporary use
const charstring c_urnScheme := "urn";

group UserProfileConstants
group UserProfileConstants
	{
	{
	  // number of user profile (RESERVED: from 1-10 for SIP profile)
	  // number of user profile (RESERVED: from 1-10 for SIP profile)
+2 −6
Original line number Original line Diff line number Diff line
@@ -807,14 +807,10 @@ module LibIms_Steps
						p_sipUrl.hostPort := {host := PX_IMS_TS_ISUP_HOME_DOMAIN, portField :=omit}
						p_sipUrl.hostPort := {host := PX_IMS_TS_ISUP_HOME_DOMAIN, portField :=omit}
				}
				}
				case (c_serviceProfile_EMERGENCY) {
				case (c_serviceProfile_EMERGENCY) {
						// TODO NOTE: this definition is for temporary use
				        p_sipUrl.scheme := c_urnScheme;
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_EMERGENCY_SERVICE, password:=omit};
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_EMERGENCY_SERVICE, password:=omit};
						p_sipUrl.hostPort := {host := PX_IMS_SUT_EMERGENCY_HOME_DOMAIN, portField :=omit}
						p_sipUrl.hostPort := {host := PX_IMS_SUT_EMERGENCY_HOME_DOMAIN, portField :=omit}
						}
						}
				case (c_serviceProfile_EMERGENCY_INVALID) {
				case (c_serviceProfile_EMERGENCY_INVALID) {
						// TODO NOTE: this definition is for temporary use
				        p_sipUrl.scheme := c_urnScheme;
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_EMERGENCY_SERVICE_INVALID, password:=omit};
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_EMERGENCY_SERVICE_INVALID, password:=omit};
						p_sipUrl.hostPort := {host := PX_IMS_SUT_EMERGENCY_HOME_DOMAIN, portField :=omit}
						p_sipUrl.hostPort := {host := PX_IMS_SUT_EMERGENCY_HOME_DOMAIN, portField :=omit}
						}
						}
@@ -1148,7 +1144,7 @@ module LibIms_Steps
		* @param p_cSeq_s		  	cseq parameter
		* @param p_cSeq_s		  	cseq parameter
		* @param p_register		register template
		* @param p_register		register template
		*/
		*/
		function f_IMS_preamble_withRegistration (in integer p_userprofile, inout CSeq p_cSeq_s, template REGISTER_Request p_register) runs on ImsComponent
		function f_IMS_preamble_withRegistration (in integer p_userprofile, inout CSeq p_cSeq_s, out template REGISTER_Request p_register) runs on ImsComponent
		{
		{
		
		
			//Variables & defaults initialization
			//Variables & defaults initialization
+62 −156
Original line number Original line Diff line number Diff line
@@ -443,10 +443,6 @@ group HeaderFieldTemplates{
                }
                }
        }
        }
		
		
        template SemicolonParam_List mw_challenge := superset(mw_ck,mw_ik);
     //   template SemicolonParam_List mw_challenge := {mw_ck,mw_ik};          
		template GenericParam mw_ck := {"ck",*};
		template GenericParam mw_ik := {"ik",*}
		
		
		
		
    /*
    /*
@@ -484,27 +480,22 @@ group HeaderFieldTemplates{
            nameAddrList := {{nameAddr:=p_nameAddr, genericParams:=omit}}
            nameAddrList := {{nameAddr:=p_nameAddr, genericParams:=omit}}
        }	  	
        }	  	
		
		
        template SecurityServer mw_securityServer (template SecurityMechanism_List p_securityMechanism_List):= {
		 fieldName := SECURITY_SERVER_E,
		 securityMech := p_securityMechanism_List
	    }	  	

	    template SecurityClient m_securityClient (template SecurityMechanism_List p_securityMechanism_List):= {
		 fieldName := SECURITY_CLIENT_E,
		 securityMech := p_securityMechanism_List
	    }	    
	    
	    template SecurityVerify m_securityVerify (template SecurityMechanism_List p_securityMechanism_List):= {
		 fieldName := SECURITY_VERIFY_E,
		 securityMech := p_securityMechanism_List
	    }
		
} // end group HeaderFieldTemplates
} // end group HeaderFieldTemplates


group MessageBodyTemplates {
group MessageBodyTemplates {
	
	
group XMLTemplates {
group XMLTemplates {
	
	
//  template XmlBody m_XmlBody_ACR_ICB(template Incoming_communication_barring p_icb) :=
//  {
//      icb := p_icb
//  };
	
//  template XmlBody m_XmlBody_ACR_OCB(template Outgoing_communication_barring p_ocb) :=
//  {
//      ocb := p_ocb
//  };
	
    template XmlBody m_XmlBody_ConfInfo(template Conference_type p_confInfo) :=
    template XmlBody m_XmlBody_ConfInfo(template Conference_type p_confInfo) :=
    {
    {
        conference := p_confInfo
        conference := p_confInfo
@@ -535,23 +526,25 @@ group XMLTemplates {
        simservs := p_simservs
        simservs := p_simservs
    };
    };
	
	
    template XmlBody m_XmlBody_ACR_ICB(template Incoming_communication_barring p_icb) := {
    template XmlBody
    m_XmlBody_ACR_ICB(template Incoming_communication_barring p_icb) := {
        simservs := {
        simservs := {
            attr := {},  
            {},
            absServiceGroup_list := {},
            {{incoming_communication_barring := p_icb}},
            extensions := {
            {{}}  
							elem_list := valueof(p_icb.attr)
        }
        }
    }
    }
    };
	   
	   
    template XmlBody m_XmlBody_ACR_OCB(template Outgoing_communication_barring p_ocb) := {
    template XmlBody m_XmlBody_ACR_OCB(template Outgoing_communication_barring p_ocb) :=
    {
        simservs := {
        simservs := {
            attr := {},  
            {},
            absServiceGroup_list := {},
            {
            extensions := {
                {
							elem_list := valueof(p_ocb.attr)
                    outgoing_communication_barring := p_ocb
                }   
                }   
            },
            {{}}  
        }
        }
    };
    };
	
	
@@ -575,7 +568,7 @@ group XMLTemplates {
      0,
      0,
      {m_registration(p_user)},
      {m_registration(p_user)},
      {}
      {}
    };
    }
    
    
    template Registration m_registration (template XSDAUX.anyURI p_user):= {
    template Registration m_registration (template XSDAUX.anyURI p_user):= {
      p_user, // XSDAUX.anyURI aor
      p_user, // XSDAUX.anyURI aor
@@ -583,7 +576,7 @@ group XMLTemplates {
      init, //enumerated {active,init,terminated} state,
      init, //enumerated {active,init,terminated} state,
      {}, // record of Contact contact_list optional,
      {}, // record of Contact contact_list optional,
      {} // record of anytype elem_list optional
      {} // record of anytype elem_list optional
    };
    }
		
		
    template XmlBody mw_XmlBody_ConfInfo(template Conference_type p_confInfo) :=
    template XmlBody mw_XmlBody_ConfInfo(template Conference_type p_confInfo) :=
    {
    {
@@ -632,7 +625,7 @@ group ACR_CBTemplates {
    template Incoming_communication_barring	m_ICB(template RuleType p_ruleType) :=
    template Incoming_communication_barring	m_ICB(template RuleType p_ruleType) :=
    {
    {
        active := omit,
        active := omit,
        attr := {},
//        anyAttributes := omit, 
        ruleset := {
        ruleset := {
            {p_ruleType}
            {p_ruleType}
        }
        }
@@ -641,7 +634,7 @@ group ACR_CBTemplates {
    template Outgoing_communication_barring	m_OCB(template(present) RuleType p_ruleType) :=
    template Outgoing_communication_barring	m_OCB(template(present) RuleType p_ruleType) :=
    {
    {
        active := omit,
        active := omit,
        attr := {},
//        anyAttributes := omit, 
        ruleset := {
        ruleset := {
            {p_ruleType}
            {p_ruleType}
        }
        }
@@ -672,7 +665,7 @@ group CUGTemplates {
        template TwoBitType p_cci
        template TwoBitType p_cci
    ):= {
    ):= {
        active := omit,
        active := omit,
        attr := {},
//      anyAttributes := omit,
        cugCallOperation := p_crt,
        cugCallOperation := p_crt,
        networkIndicator := p_nit,
        networkIndicator := p_nit,
        cugInterlockBinaryCode := p_cibc,
        cugInterlockBinaryCode := p_cibc,
@@ -686,7 +679,7 @@ group CUGTemplates {
        template TwoBitType p_cci
        template TwoBitType p_cci
    ):= {
    ):= {
        active := omit,
        active := omit,
        attr := ?,
//        anyAttributes := omit, 
        cugCallOperation := p_crt,
        cugCallOperation := p_crt,
        networkIndicator := p_nit,
        networkIndicator := p_nit,
        cugInterlockBinaryCode := p_cibc,
        cugInterlockBinaryCode := p_cibc,
@@ -709,13 +702,13 @@ group CUGTemplates {
group CWTemplates {
group CWTemplates {


    template Ims_cw m_CW(template TEmptyType p_cwi) := {
    template Ims_cw m_CW(template TEmptyType p_cwi) := {
        attr := {},
//        anyAttributes := omit,
        communication_waiting_indication := p_cwi,
        communication_waiting_indication := p_cwi,
        elem_list := {}	    
        elem_list := {}	    
    }
    }
	
	
    template Ims_cw mw_ims_cw(template TEmptyType p_cwi) := {
    template Ims_cw mw_ims_cw(template TEmptyType p_cwi) := {
        attr := ?,
//        anyAttributes := *,
        communication_waiting_indication := p_cwi,
        communication_waiting_indication := p_cwi,
        elem_list := ?
        elem_list := ?
    }
    }
@@ -727,7 +720,7 @@ group CWTemplates {
        template TwoBitType p_cci
        template TwoBitType p_cci
    ):= {
    ):= {
        active := omit,
        active := omit,
        attr := {},
//        anyAttributes := omit,
        cugCallOperation := p_crt,
        cugCallOperation := p_crt,
        networkIndicator := p_nit,
        networkIndicator := p_nit,
        cugInterlockBinaryCode := p_cibc,
        cugInterlockBinaryCode := p_cibc,
@@ -741,7 +734,7 @@ group CWTemplates {
        template TwoBitType p_cci
        template TwoBitType p_cci
    ):= {
    ):= {
        active := omit,
        active := omit,
        attr := ?,
//        anyAttributes := omit, 
        cugCallOperation := p_crt,
        cugCallOperation := p_crt,
        networkIndicator := p_nit,
        networkIndicator := p_nit,
        cugInterlockBinaryCode := p_cibc,
        cugInterlockBinaryCode := p_cibc,
@@ -1063,9 +1056,9 @@ group CDIVNTemplates {
    template Comm_div_info_type m_CDIVN_sub := {
    template Comm_div_info_type m_CDIVN_sub := {
        entity := "comm-div-info",
        entity := "comm-div-info",
        comm_div_subs_info := {
        comm_div_subs_info := {
            attr := {},
//          anyAttributes := omit,
            comm_div_selection_criteria := {
            comm_div_selection_criteria := {
                attr := {},
//              anyAttributes := omit,
                originating_user_selection_criteria := omit,
                originating_user_selection_criteria := omit,
                diverting_user_selection_criteria := omit,
                diverting_user_selection_criteria := omit,
                diverted_to_user_selection_criteria := omit,
                diverted_to_user_selection_criteria := omit,
@@ -1096,7 +1089,7 @@ group ResourceListsTemplates {
            {
            {
                list := {
                list := {
                    name := omit,
                    name := omit,
                    attr := {},
//                    anyAttributes := omit,
                    display_name := omit,
                    display_name := omit,
                    sequence_list := {
                    sequence_list := {
                        {
                        {
@@ -1121,7 +1114,7 @@ group ResourceListsTemplates {
        uri :=
        uri :=
            p_user.userInfo.userOrTelephoneSubscriber & "@" &
            p_user.userInfo.userOrTelephoneSubscriber & "@" &
            p_user.hostPort.host,
            p_user.hostPort.host,
        attr := {},
//      anyAttributes := omit,
        display_name := omit,
        display_name := omit,
        elem_list := {}
        elem_list := {}
    }
    }
@@ -1132,10 +1125,10 @@ group Ims3gppTemplates {
    //TODO:check commented and below templates when test will be validated
    //TODO:check commented and below templates when test will be validated
    template TIMS3GPP mw_Ims_3gpp_CW := {
    template TIMS3GPP mw_Ims_3gpp_CW := {
        version := 1.0,
        version := 1.0,
        attr := ?,
//        anyAttributes := ?,
        choice := {
        choice := {
            alternative_service := {
            alternative_service := {
                attr := ?,
//                anyAttributes := *, 
                type_ := ?, 
                type_ := ?, 
                reason := ?, 
                reason := ?, 
                elem_list := ?
                elem_list := ?
@@ -1172,7 +1165,7 @@ group CONFTemplates {
	
	
    template urn_ietf_params_xml_ns_conference_info.Media_type m_mediatype_status(template Media_status_type p_status):= {
    template urn_ietf_params_xml_ns_conference_info.Media_type m_mediatype_status(template Media_status_type p_status):= {
        id:="1",
        id:="1",
        attr := {},
//      anyAttributes:=omit,//m_emptyAnyAttributes,
        display_text :=omit,
        display_text :=omit,
        type_ :=omit,
        type_ :=omit,
        label_ :=omit,
        label_ :=omit,
@@ -1184,7 +1177,7 @@ group CONFTemplates {
    template Endpoint_type m_endpoint(template charstring p_Uri,template Endpoint_status_type p_epStatus,template Joining_type p_joinMethod, template Disconnection_type p_discMethod, template urn_ietf_params_xml_ns_conference_info.Media_type p_mediastatus):= {
    template Endpoint_type m_endpoint(template charstring p_Uri,template Endpoint_status_type p_epStatus,template Joining_type p_joinMethod, template Disconnection_type p_discMethod, template urn_ietf_params_xml_ns_conference_info.Media_type p_mediastatus):= {
        entity:=p_Uri,
        entity:=p_Uri,
        state:=full,
        state:=full,
        attr := {},
//      anyAttributes:=omit,//m_emptyAnyAttributes,
        display_text:=omit,
        display_text:=omit,
        referred:=omit,
        referred:=omit,
        status:=p_epStatus,
        status:=p_epStatus,
@@ -1200,7 +1193,7 @@ group CONFTemplates {
    template User_type m_1user (template charstring p_Uri,template Endpoint_type p_endpoint) := {
    template User_type m_1user (template charstring p_Uri,template Endpoint_type p_endpoint) := {
        entity:=p_Uri,
        entity:=p_Uri,
        state:=full,
        state:=full,
        attr := {},
//      anyAttributes:=omit,//m_emptyAnyAttributes,
        display_text:=omit,
        display_text:=omit,
        associated_aors:=omit,
        associated_aors:=omit,
        roles:=omit,
        roles:=omit,
@@ -1212,20 +1205,20 @@ group CONFTemplates {
	
	
    template Users_type m_users_1user_full(template User_type p_user):={
    template Users_type m_users_1user_full(template User_type p_user):={
            state:=full,
            state:=full,
        	attr := {},
//          anyAttributes := omit,//m_emptyAnyAttributes,
            user_list:={p_user},
            user_list:={p_user},
            elem_list:={}
            elem_list:={}
    }
    }
	
	
    template Users_type m_users_2user_full(template User_type p_user1,template User_type p_user2):={
    template Users_type m_users_2user_full(template User_type p_user1,template User_type p_user2):={
            state:=full,
            state:=full,
        	attr := {},
//          anyAttributes := omit,//m_emptyAnyAttributes,
            user_list:={p_user1,p_user2},
            user_list:={p_user1,p_user2},
            elem_list:={}
            elem_list:={}
    }
    }
	
	
    template Conference_state_type m_conference_state(template unsignedInt p_nUsers, boolean p_active, boolean p_locked) := {
    template Conference_state_type m_conference_state(template unsignedInt p_nUsers, boolean p_active, boolean p_locked) := {
        attr := {},
//      anyAttributes:=omit,//m_emptyAnyAttributes,
        user_count:=p_nUsers,
        user_count:=p_nUsers,
        active:=p_active,
        active:=p_active,
        locked:=p_locked,
        locked:=p_locked,
@@ -1236,7 +1229,7 @@ group CONFTemplates {
        entity := p_cUri,
        entity := p_cUri,
        state := full,
        state := full,
        version := 1,
        version := 1,
        attr := {},
//        anyAttributes := omit,//m_emptyAnyAttributes,//*,// {{name:="",val:=""}},
        conference_description := omit,
        conference_description := omit,
        host_info := omit,
        host_info := omit,
        conference_state := p_cState,
        conference_state := p_cState,
@@ -1250,18 +1243,18 @@ group CONFTemplates {
     entity := ?,
     entity := ?,
     state := *,
     state := *,
     version := *,
     version := *,
     attr := ?,
//   anyAttributes := ?,
     conference_description := *,
     conference_description := *,
     host_info := *,
     host_info := *,
     conference_state := ?,
     conference_state := ?,
     users := {
     users := {
         state := ?,
         state := ?,
         attr := ?,
//       anyAttributes := ?,
         user_list := {
         user_list := {
             {
             {
                 entity := *,
                 entity := *,
                 state := *,
                 state := *,
                 attr := ?,
//               anyAttributes := *,
                 display_text := *,
                 display_text := *,
                 associated_aors := *,
                 associated_aors := *,
                 roles := *,
                 roles := *,
@@ -1271,7 +1264,7 @@ group CONFTemplates {
                     {
                     {
                         entity := *,
                         entity := *,
                         state := *,
                         state := *,
                         attr := ?,
//                       anyAttributes := ?,
                         display_text := *,
                         display_text := *,
                         referred := *,
                         referred := *,
                         status := connected,
                         status := connected,
@@ -2338,12 +2331,6 @@ group request_receive {
                      via := p_via}
                      via := p_via}
      }
      }
		  
		  
    template BYE_Request mw_BYE_Request_via_UE(template CallId p_callId, template Via p_via) modifies  mw_BYE_Request_Base
      :=
      {
        msgHeader := { via := p_via }
      }
		  
    template INVITE_Request mw_INVITE_Request_noPChargingFunction modifies  mw_INVITE_Request_Base
    template INVITE_Request mw_INVITE_Request_noPChargingFunction modifies  mw_INVITE_Request_Base
      :=
      :=
      {
      {
@@ -2355,21 +2342,6 @@ group request_receive {
        msgHeader := {pChargingFunctionAddresses := ?}
        msgHeader := {pChargingFunctionAddresses := ?}
      }	 
      }	 
	   
	   
     template INVITE_Request mw_INVITE_Request_NoPCharging modifies  mw_INVITE_Request_Base
      :=
      {
        msgHeader := {pChargingFunctionAddresses := omit,
            		  pChargingVector := omit}
      }	 
    
     template INVITE_Request mw_INVITE_Request_NoPChargingPreferred modifies  mw_INVITE_Request_Base
      :=
      {
        msgHeader := {pChargingFunctionAddresses := omit,
            		  pChargingVector := omit,
                      pPreferredID := omit}
      }	 
	   
    template INVITE_Request mw_INVITE_Request_PAsserted_noPPreferred (template PAssertedID p_pAssertedID)modifies mw_INVITE_Request_Base
    template INVITE_Request mw_INVITE_Request_PAsserted_noPPreferred (template PAssertedID p_pAssertedID)modifies mw_INVITE_Request_Base
      :=
      :=
      {
      {
@@ -2518,12 +2490,6 @@ group request_receive {
                        pChargingVector := omit}
                        pChargingVector := omit}
      }
      }


    template INVITE_Request mw_INVITE_Request_TH_R10 modifies  mw_INVITE_Request_Base
      :=
      {
        msgHeader := {	pChargingFunctionAddresses := omit }
      }
      
    /*
    /*
     * 
     * 
     * @desc Await INVITE without PAsserted and Privacy
     * @desc Await INVITE without PAsserted and Privacy
@@ -2586,15 +2552,6 @@ group request_receive {
                          pChargingVector := omit}
                          pChargingVector := omit}
        }
        }
	  
	  
    template MESSAGE_Request mw_MESSAGE_Request_noPchargingFunctionPrefId_UE	
        modifies mw_MESSAGE_Request_Base
        :=
        {
          msgHeader := {  pChargingFunctionAddresses := omit,
                          pChargingVector := omit,
                          pPreferredID := omit}
        }
	  
    template MESSAGE_Request mw_MESSAGE_Request_noPchargingFunction_IMS	
    template MESSAGE_Request mw_MESSAGE_Request_noPchargingFunction_IMS	
        modifies mw_MESSAGE_Request_Base
        modifies mw_MESSAGE_Request_Base
        :=
        :=
@@ -2611,13 +2568,6 @@ group request_receive {
                       }
                       }
        }
        }


    template MESSAGE_Request mw_MESSAGE_Request_via (template CallId p_callId, template Via p_via )modifies mw_MESSAGE_Request_Base
        :=
        {
          msgHeader := {via := p_via
                       }
        }

    template NOTIFY_Request mw_NOTIFY_Request(
    template NOTIFY_Request mw_NOTIFY_Request(
        template CallId p_callId, 
        template CallId p_callId, 
        template charstring p_state,
        template charstring p_state,
@@ -2699,14 +2649,6 @@ group request_receive {
                          securityClient := omit
                          securityClient := omit
                          }
                          }
        }
        }
    template REGISTER_Request mw_REGISTER_auth_via_nosecclient_IMS	(template Authorization p_authorization, Via p_via )
        modifies mw_REGISTER_Request_Base := {
          msgHeader :=	{
              				authorization	:= p_authorization,
							via				:= p_via,
                  			securityClient	:= omit
                  		}
        }
    template REGISTER_Request mw_REGISTER_authorizedRequest_wo_securityheaders_IMS
    template REGISTER_Request mw_REGISTER_authorizedRequest_wo_securityheaders_IMS
        modifies mw_REGISTER_Request_Base
        modifies mw_REGISTER_Request_Base
        :=
        :=
@@ -3437,17 +3379,6 @@ group response_receive
      }
      }
    }
    }


    template Response mw_Response_SecServer_WWWAuth_UE (template StatusLine p_statusLine, template CallId p_callId,
      template CSeq p_cSeq, template SecurityServer p_securityServer, template WwwAuthenticate p_wwwAuthenticate) modifies mw_Response_Base:=
     {
     statusLine := {sipVersion := c_sipNameVersion, statusCode := p_statusLine.statusCode, reasonPhrase := ?},
     msgHeader :=
     {
     	securityServer := p_securityServer,
     	wwwAuthenticate := p_wwwAuthenticate
       }
     }

    template Response mw_Response_401onREGISTER_WWWauthenticate_IMS(template StatusLine p_statusLine, template CallId p_callId,
    template Response mw_Response_401onREGISTER_WWWauthenticate_IMS(template StatusLine p_statusLine, template CallId p_callId,
        template CSeq p_cSeq, template WwwAuthenticate p_wwwAuthenticate) modifies mw_Response_Base:=
        template CSeq p_cSeq, template WwwAuthenticate p_wwwAuthenticate) modifies mw_Response_Base:=
    {
    {
@@ -3496,17 +3427,6 @@ group response_receive
        }
        }
    }
    }


    template Response mw_Response_PAsserted_ContentType (template StatusLine p_statusLine, template CallId p_callId,
        template CSeq p_cSeq, template PAssertedID p_pAssertedID, template ContentType p_contentType) modifies mw_Response_Base:=
    {
        statusLine := {sipVersion := c_sipNameVersion, statusCode := p_statusLine.statusCode, reasonPhrase := ?},
        msgHeader :=
        {
            pAssertedID := p_pAssertedID,
            contentType := p_contentType
        }
    }

    template Response mw_Response_PchargingVector(template StatusLine p_statusLine, template CallId p_callId,
    template Response mw_Response_PchargingVector(template StatusLine p_statusLine, template CallId p_callId,
        template CSeq p_cSeq, template PChargingVector p_chargingVector) modifies mw_Response_Base:=
        template CSeq p_cSeq, template PChargingVector p_chargingVector) modifies mw_Response_Base:=
    {
    {
@@ -3517,20 +3437,6 @@ group response_receive
      }
      }
    }
    }


    
    template Response mw_Response_PchargingVecFctadrId(template StatusLine p_statusLine, template CallId p_callId,
        template CSeq p_cSeq, template PChargingVector p_chargingVector, 
        template PChargingFunctionAddresses p_chargingFunctionAddresses, template PPreferredID p_preferredID) modifies mw_Response_Base:=
    {
        statusLine := {sipVersion := c_sipNameVersion, statusCode := p_statusLine.statusCode, reasonPhrase := ?},
        msgHeader :=
        {
          pChargingVector := p_chargingVector, // mw_pChargingVector(p_id,p_paramValue)
          pChargingFunctionAddresses := p_chargingFunctionAddresses,
          pPreferredID := p_preferredID
      }
    }

} // end response_receive
} // end response_receive


}//end modified_templates
}//end modified_templates