Configuring Mediation Rule for PT

Add the following rules to the mediation rules.

Note:

In the following rules, replace PCF_loadBalancerIP_and_Port and IWF_loadBalancerIP_and_Port with appropriate values.
rule "pt_d2h_AAR_rule_N5_To_Rx"
salience 20
when
m : IWFHttpRequest(header("pt_dest_uri") != null)
then
m.setUri(m.header("pt_dest_uri").replace("pcf.com","10.178.246.13:1000/simulation"))   //"PCF_loadBalancerIP_and_Port"
m.header(m.DEL,"pt_dest_uri")
end
 
rule "pt1_h2d_RAR_rule_N5_To_Rx"
salience 20
when
  m : IWFHttpRequest(getUri() matches ".*(npcf-policyauthorization)*(v1)*(notification)*(notify).*")
then
 m.forwardPath = IWFConsts.FORWARD_TO_H2D
 m.header(m.ADD,"diameterApplicationId","16777236")
 m.header(m.ADD,"diameterCommandCode","258")
 m.header(m.ADD,"original-req-uri",m.getUri())
end
 
rule "pt1-d2h_ASR_rule_N5_To_Rx"
salience 20
when
m : IWFHttpRequest(getUri() matches ".*(npcf-policyauthorization)*(v1)*(notification)*(terminate).*")
then
m.forwardPath=IWFConsts.FORWARD_TO_H2D
m.header(m.ADD,"diameterApplicationId","16777236")
m.header(m.ADD,"diameterCommandCode","274")
m.header(m.ADD,"original-req-uri",m.getUri())
end
 
rule "pt_d2h_AAR_Update_Rx_To_N5"
salience 21
when
m : IWFHttpRequest(m.body("ascReqData:notifUri") != null)
then
m.body(m.UPDATE,"ascReqData:notifUri",update(m.body("ascReqData:notifUri")).replace("iwf.com","10.178.254.158:30079"))  //IWF_loadBalancerIP_and_Port
m.body(m.UPDATE,"ascReqData:evSubsc:notifUri",update(m.body("ascReqData:evSubsc:notifUri")).replace("iwf.com","10.178.254.158:30079"))  //IWF_loadBalancerIP_and_Port
end
 
rule "pt_h2d_ccri_rule_N7_To_Gx"
salience 20
when
m : IWFHttpRequest(getUri() matches ".*(npcf-smpolicycontrol/v1/sm-policies)(/$|$)")
then
m.forwardPath=IWFConsts.FORWARD_TO_H2D
m.header(m.ADD,"diameterApplicationId","16777238")
m.header(m.ADD,"diameterCommandCode","272")
m.header(m.ADD,"requestType","CREATE")
end
 
rule "pt_h2d_ccru_rule_N7_To_Gx"
salience 21
when
m : IWFHttpRequest(getUri() matches ".(npcf-smpolicycontrol/v1/sm-policies/)(.)(/update)(/$|$)")
then
m.forwardPath=IWFConsts.FORWARD_TO_H2D
m.header(m.ADD,"diameterApplicationId","16777238")
m.header(m.ADD,"diameterCommandCode","272")
m.header(m.ADD,"requestType","UPDATE")
m.header(m.ADD,"original-req-uri",m.getUri())
end
 
rule "pt_h2d_ccrt_rule_N7_To_Gx"
salience 21
when
m : IWFHttpRequest(getUri() matches ".(npcf-smpolicycontrol/v1/sm-policies/)(.)(/delete)(/$|$)")
then
m.forwardPath=IWFConsts.FORWARD_TO_H2D
m.header(m.ADD,"diameterApplicationId","16777238")
m.header(m.ADD,"diameterCommandCode","272")
m.header(m.ADD,"requestType","DELETE")
m.header(m.ADD,"original-req-uri",m.getUri())
end