In this section:

Overview

The SBC Core supports Inter-IMS Network to Network Interface (II-NNI) standard, which uses a proprietary SIP header parameter ttc-charging-params in the P-Charging-Vector (PCV) header for billing. In some II-NNI scenarios, the SBC receives the PCV header without the ttc-charging-params parameter. For example, a SIP INVITE call received from a fixed network to mobile network does not contain ttc-charging-params parameter in the PCV header. However, without this parameter, the SBC cannot generate CDR records. In such scenarios, the SBC acting as IBCF manipulates the ttc-charging-params parameter in the PCV header.

The following call flow is supported when the call is originated from a fixed network to mobile network:

I-SBC → (II-NNI SIP) → I-SBC → IMS Network (Mobile Network)

The table Call Scenarios from Fixed Network to Mobile Network explains the PCV headers without ttc-charging-params parameter in the INVITE as well as 18x responses. The SBC supports adding the default values of the ttc-charging-params parameter to the originating/destination carrier types. The SMM rules are used to manipulate the PCV header for the following conditions.

Call Scenarios from Fixed Network to Mobile Network

ScenariosConditionsResults
1The SBC receives a PCV header with ttc-charging-params parameter with orig-ioi valueThe SBC ignores the received ttc-charging-params parameter value and transparently passes the PCV header with orig-ioi value.
2The SBC receives a PCV header in the 18x response with only term-ioi valueThe SBC inserts ttc-charging-params parameter with fixed value in the outgoing 18x response towards the ingress side.
3The SBC receives a PCV header without ttc-charging-params parameter in the INVITE requestThe SBC inserts the fixed value of ttc-charging-params parameter value in the outgoing INVITE request.
4The SBC receives a PCV header with ttc-charging-params parameter in the 18x responseThe SBC ignores the received ttc-charging-parameter value and sends the PCV header with only term-ioi value towards the ingress side.
5The SBC receives a PCV header with ttc-charging-params parameter in the INVITE requestThe SBC ignores the received PCV header and sends the INVITE request without the PCV header.
6The SBC receives the 18x response without the PCV headerThe SBC inserts the PCV header with the fixed value of ttc-charging-params parameter and sends it towards the ingress side.

Examples

The table Examples from Fixed Network to Mobile Network provides the examples of the scenarios explained in the table Call Scenarios from Fixed Network to Mobile Network.

Examples from Fixed Network to Mobile Network

ScenariosIncoming CallsOutgoing Call with ttc-charging-params in PCV Header
1
P-charging-vector: icid-value=a9fbd640-30e4-1032-00-00-00-10-6b-03-18-00;
orig-ioi=ims.mnc020.mcc440.3gppnetwork.org;ttc-charging-params=“cari=iecind-3,
cat-olec,code-2001,cat-iec,poi_hi-0-0,poi_cai-32000,code-0901;cai=32000 auc=fixed_1-2”
P-charging-vector: icid-value=a9fbd640-30e4-1032-00-00-00-10-6b-03-18-00;
orig-ioi=ims.mnc020.mcc440.3gppnetwork.or
2
P-charging-vector: icid-value=a9fbd640-30e4-1032-00-00-00-10-6b-03-18-00;
term-ioi=ims.mnc010.mcc440.3gppnetwork.org
P-charging-vector: icid-value=a9fbd640-30e4-1032-00-00-00-10-6b-03-18-00;term-ioi=ims.mnc010.mcc440.3gppnetwork.org;
ttc-charging-params=“cari=iecind-0,cat-tlec,code-9999;cai=98800;auc=mobile_1-1;auc=mobile_2-8;cit=charge_rate;
ci=utp-ten,cric-ordinary,iu-01,dcr-120,ecr-100,ncr-080,scr-080,utp-ten,cric-payphone,iu-01,dcr-140,ecr-120,ncr-100,scr-100”
3
P-charging-vector: icid-value=a9fbd640-30e4-1032-00-00-00-10-6b-03-18-00;
orig-ioi=ims.mnc020.mcc440.3gppnetwork.org
P-charging-vector: icid-value=a9fbd640-30e4-1032-00-00-00-10-6b-03-18-00;orig-ioi=ims.mnc020.mcc440.3gppnetwork.org;
ttc-charging-params=“cari=iecind-3,cat-olec,code-2001,cat-iec,poi_hi-0-0,poi_cai-32000,code-0901;cai=32000;auc=fixed_1-2”
4
P-charging-vector: icid-value=a9fbd640-30e4-1032-00-00-00-10-6b-03-18-00;
term-ioi=ims.mnc010.mcc440.3gppnetwork.org;ttc-charging-params=“cari=iecind-0,cat-tlec,code-9999;cai=98800;
auc=mobile_1-1;auc=mobile_2-8;cit=charge_rate;ci=utp-ten,cric-ordinary,iu-01,dcr-120,ecr-100,ncr-080,
scr-080,utp-ten,cric-payphone,iu-01,dcr-140,ecr-120,ncr-100,scr-100”
P-charging-vector: icid-value=a9fbd640-30e4-1032-00-00-00-10-6b-03-18-00;
term-ioi=ims.mnc010.mcc440.3gppnetwork.org
5
P-charging-vector: icid-value=a9fbd640-30e4-1032-00-00-00-10-6b-03-18-00;orig-ioi=ims.mnc020.mcc440.3gppnetwork.org;
ttc-charging-params=“cari=iecind-3,cat-olec,code-2001,cat-iec,poi_hi-0-0,poi_cai-32000,code-0901;cai=32000;auc=fixed_1-2”
SBC must not add any P-Charging-Vector header towards egress side.
6
Incoming 18x does not have any P-Charging-Vector header.
P-charging-vector : term-ioi = ims.mnc051.mcc440.3gppnetwork.org : ttc-charging-params= “cari=iecind-3, 
cat-olec, code-5555, cat-iec, poi_hi-0-0, poi_cai-32000, code-0901; ;auc=mobile_1-1;auc=mobile_2-8; cit=charge_rate;
ci=utp-ten, cric-ordinary,iu-01,dcr-120,ecr-100,ncr-080,scr-080, utp-ten, cric-payphone,iu-01,dcr-140,ecr-120,ncr-100,scr-100”

Call Flows

Sample 1 call from fixed network to Mobile network in II-NNI

Sample 2 call from fixed network to Mobile network in II-NNI

Sample Call Flow Depicting Insertion of ttc Parameter in PCV Received in INVITE/18x

Defining SMM Rules

Sample SMM Rule to Insert PCV Header in 18x Response
set profiles signaling sipAdaptorProfile PCV_ADD_18X state enabled
set profiles signaling sipAdaptorProfile PCV_ADD_18X advancedSMM disabled
set profiles signaling sipAdaptorProfile PCV_ADD_18X profileType messageManipulation
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 applyMatchHeader one
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 1 type message
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 1 message
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 1 message messageTypes response
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 1 message methodTypes invite
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 1 message statusCode 180
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 1 message statusRange 183
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 2 type header
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 2 header
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 2 header name P-Charging-Vector
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 2 header condition exist
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 2 header hdrInstance all
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 3 type parameter
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 3 parameter
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 3 parameter condition exist
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 3 parameter paramType generic
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 criterion 3 parameter name term-ioi
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 1 type variable
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 1 operation store
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 1 from
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 1 from type value
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 1 from value "icid-value=a9fbd640-30e4-1032-00-00-00-10-6b-03-18-00;term-ioi=ims.mnc010.mcc440.3gppnetwork.org;"
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 1 to
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 1 to type variable
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 1 to variableValue var1
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 1 to variableScopeValue local
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 2 type variable
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 2 operation append
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 2 from
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 2 from type value
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 2 from value "ttc-charging-params=\"cari=iecind-0,cat-tlec,code-9999;cai=98800;auc=mobile_1-1;auc=mobile_2-8;cit=charge_rate;ci=utp-ten,\"
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 2 to
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 2 to type variable
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 2 to variableValue var1
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 2 to variableScopeValue local
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 3 type variable
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 3 operation append
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 3 from
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 3 from type value
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 3 from value cric-ordinary,iu-01,dcr-120,ecr-100,ncr-080,scr-080,utp-ten,cric-payphone,iu-01,dcr-140,ecr-120,ncr-100,scr-100"
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 3 to
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 3 to type variable
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 3 to variableValue var1
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 3 to variableScopeValue local
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 4 type header
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 4 operation add
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 4 headerPosition last
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 4 from
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 4 from type variable
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 4 from variableValue var1
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 4 to
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 4 to type header
set profiles signaling sipAdaptorProfile PCV_ADD_18X rule 1 action 4 to value P-Charging-Vector
Sample SMM Rule to Insert PCV Header in Outgoing INVITE
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE state enabled
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE advancedSMM disabled
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 applyMatchHeader one
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 criterion 1 type message
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 criterion 1 message
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 criterion 1 message messageTypes request
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 criterion 1 message methodTypes invite
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 criterion 2 type header
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 criterion 2 header
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 criterion 2 header name P-Charging-Vector
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 criterion 2 header condition exist
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 criterion 2 header hdrInstance all
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 criterion 3 type parameter
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 criterion 3 parameter
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 criterion 3 parameter condition exist
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 criterion 3 parameter paramType generic
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 criterion 3 parameter name orig-ioi
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 1 type variable
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 1 operation store
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 1 from
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 1 from type value
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 1 from value "icid value=KYBVSBG02f.ims.mnc020.mcc440.3gppnetwork.org-1439-951788-153312;icid-generated at=KYBVSBG02f.ims.mnc020.mcc440.3gppne"
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 1 to
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 1 to type variable
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 1 to variableValue var1
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 1 to variableScopeValue local
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 2 type variable
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 2 operation append
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 2 from
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 2 from type value
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 2 from value
"twork.org;orig-ioi=ims.softbank.ne.jp;ttc-charging-params=\"auc=mobile_1-1;auc=fixed_1-2;fci=nii-nat,oa-isdn;cari=iecind-3,cat-"
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 2 to
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 2 to type variable
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 2 to variableValue var1
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 2 to variableScopeValue local
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 3 type variable
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 3 operation append
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 3 from
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 3 from type value
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 3 from value "olec,code-0901\""
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 3 to
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 3 to type variable
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 3 to variableValue var1
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 3 to variableScopeValue local
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 4 type header
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 4 operation add
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 4 headerPosition last
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 4 from
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 4 from type variable
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 4 from variableValue var1
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 4 to
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 4 to type header
set profiles signaling sipAdaptorProfile PCV_ADD_INVITE rule 1 action 4 to value P-Charging-Vector

Assigning SMM Profiles to Trunk Group

To assign the SMM profiles to Sip Trunk Group, enter the command:

set addressContext default zone ZONE1 sipTrunkGroup TG_SIPART signaling messageManipulation inputAdapterProfile PCV_ADD_18X outputAdapterProfile PCV_ADD_INVITE
commit