4 Functional operation in MS
22.0243GPPDescription of Charge Advice Information (CAI)Release 17TS
Simple operation in the MS is described by the equation:‑
AoC = e3 * { e4 + e1*INT(CDUR/(e7,e2)) + e5*INT(SEG/e6) }
= scaling * { constant + time related + data related }
where:
AoC is the Advice of Charge in home units.
CDUR is the Chargeable DURation as measured by the MS.
SEG is the SEGment count as counted by the MS.
INT(v) is the function to take the INTeger value of v.
* indicates multiply operator.
e7,e2 indicate first e7 then e2 selected as described below.
4.1 Handling of the CAI elements
For the detailed mechanisms, the conditions given under subclause 4.3 (Special Processing) must be observed. The following therefore describes the process for a simple single call scenario, for either an incoming or outgoing call for the MS in any PLMN, including HPLMN:‑
On receipt of the CAI message, charging computation commences.
INITIAL/FIXED CHARGE:
Element e4*e3 defines the number of HPLMN units to be incremented in the Current Call Meter (CCM, see below) on receipt of the CAI message.
INITIAL TIME RELATED CHARGE:
On first receipt of the CAI message, timing commences immediately and MS timer CDUR is incremented, from zero, with a precision of at least 0.1 seconds. When CDUR reaches e7 (see special processing for the case where e7 is equal to zero) i.e. a full interval has been timed, then e1*e3 HPLMN units are added to the CCM. CDUR is then reset to zero to allow timing of the next interval to commence based on CAI element e2. Element e7 is not used further, unless it is updated via a new CAI message.
TIME RELATED CHARGE:
On expiry of the interval defined by e7; e2 is applied and timing re‑commences immediately. MS timer CDUR is incremented, from zero, with a precision of at least 0.1 seconds. When CDUR reaches e2 i.e. a full interval has been timed, then e1*e3 HPLMN units are added to the CCM. CDUR is then reset to zero to allow timing of the next interval to commence, based on e2.
DATA RELATED CHARGE:
On first receipt of non‑zero element e6, data segment counting commences immediately and MS counter SEG is incremented, from zero, by unity for each segment transferred. When SEG reaches e6 i.e. a full data interval has been counted, then e5*e3 HPLMN units are added to the CCM. SEG is then reset to zero to allow counting of the next data interval to commence.
NOTE 1: Elements e1, e7 and e2 have no effect on the initial charge or fixed charges applied i.e. are independent of e4.
NOTE 2: It should be noted that e1 in conjunction with e2 increases charging range compared to a regime based on e2 only. (i.e. e1 fixed at unity). This benefit is secondary to the support of call charging for roamers, which is the main function of e1.
NOTE 3: e1 improves the precision for high cost calls, where the interval, as defined by e2, may need to be excessively small, e.g. long haul international calls or INMARSAT. i.e. e1 can be increased instead of reducing e2, with some loss of accuracy of correlation with the actual bill.
NOTE 4: Element e5, for data usage charging, is equivalent to e1 (time related charging) and provides similar benefits for the support of data usage charges for roamers and high cost data calls.
NOTE 5: Rules for handling of CAI elements in the case of multiple calls are given in subclause 4.3 l.
4.2 Handling of call meters
Two meters are defined.
4.2.1 The Current Call Meter (CCM)
This is required to accumulate the charging units generated by the current call and is capable of advising:
a) The current charge due for the call(s) in progress.
b) At the end of the call(s), the charge equivalent to the current call record in an itemized bill.
The CCM shall hold the value of the last call AOC, until the initiation of an outgoing call or acceptance of an incoming call, at which point it shall be reset to zero, regardless of the success of the initiation/acceptance attempt. This information is deleted when the MS is switched off or the SIM/USIM is removed.
The CCM is essential for the correct functioning of AOC, see subclauses 4.1 and 4.3, and is a component of the Mobile Equipment. The charging computation shall cease immediately on termination of a call, as indicated by the user or the network, or on failure of the call.
For multiple calls, CCM will advise the total charge of all the calls made and/or received during occupation of a traffic channel.
4.2.2 The Accumulated Call Meter (ACM)
The Accumulated Call Meter accumulates the total units for both the current call and all preceding calls. The ACM is a function contained within the SIM/USIM. It is optional, but is essential for certain applications.
For security reasons, the SIM/USIM only allows the value of the ACM to be incremented, not decremented. Resetting of the ACM shall only be possible after presentation of PIN2.
If the ACMmax (see subclause 4.2.3) is valid, and the ACM becomes equal to or exceeds the value of the ACMmax, then all calls in progress, chargeable to the user (i.e. those calls that have a non‑zero AoC associated with them), shall be terminated by the ME once the chargeable interval determined by the CAI has elapsed. The ACM will be updated with the new value, which may be greater than the ACMmax value. The reason why the call has terminated shall be given to the user by means of an appropriate indication given to the user.
If the ACMmax is valid and the ACM is equal to or greater than the value of ACMmax, then no outgoing calls can be placed, except Emergency calls.
If the ACMmax is valid and the ACM is equal to or greater than the value of ACMmax, and an incoming call is received and subsequently a non‑zero CAI is received for that call, then the call shall be terminated by the ME with an appropriate indication given to the user.
4.2.3 The ACM Maximum Value (ACMmax)
This is the value that the subscriber can set, to limit the units which may be consumed by a user. The MS may provide for the means to set or update the ACMmax, using PIN2. The ACMmax is not valid if set to zero.
NOTE: The network operator should make clear to the subscriber that the ACMmax must not be set to a value close to the maximum value possible in the encoding of ACMmax . The network operators should provide guidance as to what the maximum value for the ACMmax may be.
4.2.4 The Price per Unit and Currency Table (PUCT)
This is intended to enable the MS to calculate the cost of a call in a currency chosen by the subscriber. The subscriber may set the value of the home unit in the PUCT differently to the value of the unit published by the HPLMN in order to cover extra cost. An indication of the currency in use is part of the PUCT .
4.3 Special processing
a) If e7 is zero or not sent in the CAI message, e2 applies and e7 is not used.
b) If e2 or e6 are set to zero, the relevant INT function shall handle the singularity by returning zero, thus disabling the relevant unitization process (call or data part).
c) On receipt of a subsequent e4, the MS shall transfer the value of e4*e3 to the CCM, by addition of e4*e3 to the current contents of the CCM.
d) When CDUR reaches e2 (or e7 as appropriate), e1*e3 is added to the CCM and CDUR is reset to zero, except when conditions given in (a) and (b) above, apply.
e) On receipt of new e1, e2 or e7 during a call, these new values are held in abeyance, until the value of the associated MS timer CDUR has reached the current e2 or e7 value as appropriate, and the processing as described in special processing item d) above has been completed. The new e1, e2 and/or e7 are then brought into operation. e7 is applied followed by e2, conditions a) and b) above determining the detailed processing.
Any update of e1, e2 and/or e7 during the time before CDUR is reset, shall supersede any values already held in abeyance.
If CDUR is not actively timing (i.e. due to e2 being zero, e7 being zero or the processing of e7 has been completed), then a new value of e2 and/or e7 is applied immediately as per a normal new call.
f) When SEG reaches e6, e5*e3 is added to the CCM and SEG is reset to zero, except where e6 is zero, where condition (b) above applies.
g) On receipt of a new e5 or e6 during the call, these new elements are held in abeyance, until the value of the associated MS counter SEG has reached the old e6 value, and the processing as described in special processing item (f) above has been completed. The resulting zero SEG and new e5 and e6 are then brought into operation.
Any update of e5 or e6 during the time before SEG is reset, shall supersede any values already held in abeyance.
If the old value of e6 was zero, then the new value of e5 and e6 is applied immediately.
h) The ACM shall be incremented when the CCM is incremented or once every 5 seconds, which ever is the longer period. Although the CCM is maintained with an accuracy of three places of decimals, the ACM shall be incremented and stored as integer units (i.e. no decimal places). The ACM shall be incremented by the difference between the present value of the CCM (rounded up) and the value of the CCM (rounded up) at the previous ACM incrementation.
i) A zero value for any of the CAI elements is valid and dealt with as described above.
j) Free calls should be implemented by sending a CAI message with appropriate zero elements.
k) On receipt of any CAI message from the network, provided the MS supports AoC, the MS it shall confirm receipt of the CAI message. An MS not supporting AoC as defined in TS 22.24 and TS 22.086 [2] shall not confirm receipt of the message.
l) During multiple calls the network shall send, and the MS shall receive, CAI elements for each call separately. The CCM shall record the sum of all the charges for the services being used currently.
m) If the MS detects a radio link failure the MS shall suspend CDUR. If a subsequent call reestablishment is successful, CDUR shall be resumed when call reestablishment is complete.
4.4 Interactions with SCUDIF supplementary service
When the MS requires a bearer change, e.g. from Audio to Video or vice versa, the SCUDIF Mode modify procedure is performed as described in TS 23.172 [3]. Depending on the operator’s policy the success of the procedure may trigger a Facility message to convey new values for the CAI parameters. On receipt of new CAI values triggered by a service change based on the SCUDIF supplementary service, the MS shall reset CDUR and continue incrementing the CCM using the new CAI parameters as stated in subclause 4.3 of this specification. The MS shall add initial units to the CCM and measure units on a time basis using the new values.