2 -- EN 300 182-1 Ver. 1.3.6
5 Advice-of-Charge-Operations {ccitt identified-organization etsi (0) 182 operations-and-errors (1)}
7 DEFINITIONS IMPLICIT TAGS ::=
11 EXPORTS ChargingRequest, AOCSCurrency, AOCSSpecialArr,
12 AOCDCurrency, AOCDChargingUnit, AOCECurrency, AOCEChargingUnit,
13 NoChargingInfoAvailable, ChargingAssociation;
15 IMPORTS OPERATION, ERROR
16 FROM Remote-Operations-Information-Objects {joint-iso-itu-t (2) remote-operations (4) informationObjects(5) version1(0)}
17 notSubscribed, notAvailable, notImplemented, invalidCallState
19 {ccitt identified-organization etsi (0) 196 general-errors (2)}
21 FROM Addressing-Data-Elements
22 {itu-t(0) identified-organization(4) 196 addressing-data-elements (6)};
24 chargingRequest OPERATION ::= {
25 ARGUMENT ChargingRequestArg
26 RESULT ChargingRequestRes
27 ERRORS {notSubscribed | notAvailable | notImplemented |
28 invalidCallState | NoChargingInfoAvailable}
31 ChargingRequestArg ::= ChargingCase
33 ChargingRequestRes ::= CHOICE {
34 aOCSCurrencyInfoList AOCSCurrencyInfoList,
35 aOCSSpecialArrInfo AOCSSpecialArrInfo,
36 chargingInfoFollows NULL}
38 aOCSCurrency OPERATION ::= { -- AOC-S given in currency units
39 ARGUMENT AOCSCurrencyArg
43 AOCSCurrencyArg ::= CHOICE {
44 chargeNotAvailable NULL,
45 aOCSCurrencyInfoList AOCSCurrencyInfoList }
47 aOCSSpecialArr OPERATION ::= { -- AOC-S for special charging arrangement
48 ARGUMENT AOCSSpecialArrArg
52 AOCSSpecialArrArg ::=CHOICE {
53 chargeNotAvailable NULL,
54 aOCSSpecialArrInfo AOCSSpecialArrInfo }
56 aOCDCurrency OPERATION ::= { -- AOC-D given in currency units
57 ARGUMENT AOCDCurrencyArg
61 AOCDCurrencyArg ::= CHOICE {
62 chargeNotAvailable NULL,
63 aOCDCurrencyInfo AOCDCurrencyInfo }
65 aOCDChargingUnit OPERATION ::= { -- AOC-D given in charging units
66 ARGUMENT AOCDChargingUnitArg
70 AOCDChargingUnitArg ::= CHOICE {
71 chargeNotAvailable NULL,
72 aOCDChargingUnitInfo AOCDChargingUnitInfo }
74 aOCECurrency OPERATION ::= { -- AOC-E given in currency units
75 ARGUMENT AOCECurrencyArg
80 AOCECurrencyArg ::=CHOICE {
81 chargeNotAvailable NULL,
82 aOCECurrencyInfo AOCECurrencyInfo }
84 aOCEChargingUnit OPERATION::= { -- AOC-E given in charging units
85 ARGUMENT AOCEChargingUnitArg
89 AOCEChargingUnitArg ::= CHOICE {
90 chargeNotAvailable NULL,
91 aOCEChargingUnitInfo AOCEChargingUnitInfo }
93 ChargingCase ::= ENUMERATED {
94 chargingInformationAtCallSetup (0),
95 chargingDuringACall (1),
96 chargingAtTheEndOfACall (2) }
98 AOCSCurrencyInfoList ::= SEQUENCE SIZE (1..10) OF AOCSCurrencyInfo
100 AOCSCurrencyInfo ::= SEQUENCE {
101 chargedItem ChargedItem,
102 chargingtype CHOICE {
103 specificCurrency CHOICE {
104 durationCurrency [1] IMPLICIT DurationCurrency,
105 flatRateCurrency [2] IMPLICIT FlatRateCurrency,
106 volumeRateCurrency [3] IMPLICIT VolumeRateCurrency},
107 specialChargingCode SpecialChargingCode,
108 freeOfCharge [4] IMPLICIT NULL,
109 currencyInfoNotAvailable [5] IMPLICIT NULL} }
111 AOCSSpecialArrInfo ::= INTEGER (1..10)
113 ChargedItem ::= ENUMERATED {
114 basicCommunication (0),
118 operationOfSupplementaryServ (4) }
120 DurationCurrency ::= SEQUENCE {
121 dCurrency [1] IMPLICIT Currency,
122 dAmount [2] IMPLICIT Amount,
123 dChargingType [3] IMPLICIT ChargingType,
124 dTime [4] IMPLICIT Time,
125 dGranularity [5] IMPLICIT Time OPTIONAL }
127 FlatRateCurrency ::= SEQUENCE {
128 fRCurrency [1] IMPLICIT Currency,
129 fRAmount [2] IMPLICIT Amount }
131 VolumeRateCurrency ::= SEQUENCE {
132 vRCurrency [1] IMPLICIT Currency,
133 vRAmount [2] IMPLICIT Amount,
134 vRVolumeUnit [3] IMPLICIT VolumeUnit}
136 SpecialChargingCode ::= INTEGER (1..10)
138 AOCDCurrencyInfo ::= CHOICE {
139 specificCurrency SEQUENCE {
140 recordedCurrency [1] IMPLICIT RecordedCurrency,
141 typeOfChargingInfo [2] IMPLICIT TypeOfChargingInfo,
142 aOCDBillingId [3] IMPLICIT AOCDBillingId OPTIONAL },
143 freeOfCharge [1] IMPLICIT NULL}
146 AOCDChargingUnitInfo ::= CHOICE {
147 specificChargingUnits SEQUENCE {
148 recordedUnitsList [1] IMPLICIT RecordedUnitsList,
149 typeOfChargingInfo [2] IMPLICIT TypeOfChargingInfo,
150 aOCDBillingId [3] IMPLICIT AOCDBillingId OPTIONAL },
151 freeOfCharge [1] IMPLICIT NULL}
153 RecordedCurrency ::= SEQUENCE {
154 rCurrency [1] IMPLICIT Currency,
155 rAmount [2] IMPLICIT Amount }
157 RecordedUnitsList ::= SEQUENCE SIZE (1..32) OF RecordedUnits
159 TypeOfChargingInfo ::= ENUMERATED {
163 RecordedUnits ::= SEQUENCE {
165 recordedNumberOfUnits NumberOfUnits,
167 recordedTypeOfUnits TypeOfUnit OPTIONAL }
169 AOCDBillingId ::= ENUMERATED {
172 creditCardCharging (2)}
174 AOCECurrencyInfo ::= SEQUENCE {
176 specificCurrency SEQUENCE {
177 recordedCurrency [1] IMPLICIT RecordedCurrency,
178 aOCEBillingId [2] IMPLICIT AOCEBillingId OPTIONAL},
179 freeOfCharge [1] IMPLICIT NULL},
180 chargingAssociation ChargingAssociation OPTIONAL}
182 AOCEChargingUnitInfo ::= SEQUENCE {
184 specificChargingUnits SEQUENCE {
185 recordedUnitsList [1] IMPLICIT RecordedUnitsList,
186 aOCEBillingId [2] IMPLICIT AOCEBillingId OPTIONAL},
187 freeOfCharge [1] IMPLICIT NULL},
188 chargingAssociation ChargingAssociation OPTIONAL}
190 AOCEBillingId ::= ENUMERATED {
193 creditCardCharging (2),
194 callForwardingUnconditional (3),
195 callForwardingBusy (4),
196 callForwardingNoReply (5),
200 Currency ::= IA5String (SIZE (1..10))
202 Amount ::= SEQUENCE {
203 currencyAmount [1] IMPLICIT CurrencyAmount,
204 multiplier [2] IMPLICIT Multiplier }
206 CurrencyAmount ::= INTEGER (0..16777215)
208 Multiplier ::= ENUMERATED {
218 lengthOfTimeUnit [1] IMPLICIT LengthOfTimeUnit,
219 scale [2] IMPLICIT Scale }
221 LengthOfTimeUnit ::= INTEGER (0..16777215)
223 Scale ::= ENUMERATED {
224 oneHundredthSecond (0),
232 VolumeUnit ::= ENUMERATED {
237 TypeOfUnit ::= INTEGER (1..16) -- Value 1-16
239 NumberOfUnits ::= INTEGER (0..16777215)
241 ChargingType ::= ENUMERATED {
242 continuousCharging (0),
245 ChargingAssociation ::= CHOICE {
246 chargeNumber [0] EXPLICIT PartyNumber,
247 chargeIdentifier ChargeIdentifier}
249 ChargeIdentifier ::= INTEGER (-32768..32767)
251 -- NoChargingInfoAvailable ::= ERROR
253 -- chargingRequest ChargingRequest ::= 30
254 -- aOCSCurrency AOCSCurrency ::= 31
255 -- aOCSSpecialArr AOCSSpecialArr ::= 32
256 -- aOCDCurrency AOCDCurrency ::= 33
257 -- aOCDChargingUnit AOCDChargingUnit ::= 34
258 -- aOCECurrency AOCECurrency ::= 35
259 -- aOCEChargingUnit AOCEChargingUnit ::= 36
260 -- noChargingInfoAvailable NoChargingInfoAvailable ::= 26
262 noChargingInfoAvailable ERROR ::= { CODE local: 26}