4 -- EN 300 182-1 Ver. 1.3.6
7 Advice-of-Charge-Operations {ccitt identified-organization etsi (0) 182 operations-and-errors (1)}
9 DEFINITIONS IMPLICIT TAGS ::=
13 EXPORTS ChargingRequest, AOCSCurrency, AOCSSpecialArr,
14 AOCDCurrency, AOCDChargingUnit, AOCECurrency, AOCEChargingUnit,
15 NoChargingInfoAvailable, ChargingAssociation;
17 IMPORTS OPERATION, ERROR
18 FROM Remote-Operations-Information-Objects {joint-iso-itu-t (2) remote-operations (4) informationObjects(5) version1(0)}
19 notSubscribed, notAvailable, notImplemented, invalidCallState
21 {ccitt identified-organization etsi (0) 196 general-errors (2)}
23 FROM Addressing-Data-Elements
24 {itu-t(0) identified-organization(4) 196 addressing-data-elements (6)};
26 chargingRequest OPERATION ::= {
27 ARGUMENT ChargingRequestArg
28 RESULT ChargingRequestRes
29 ERRORS {notSubscribed | notAvailable | notImplemented |
30 invalidCallState | NoChargingInfoAvailable}
33 ChargingRequestArg ::= ChargingCase
35 ChargingRequestRes ::= CHOICE {
36 aOCSCurrencyInfoList AOCSCurrencyInfoList,
37 aOCSSpecialArrInfo AOCSSpecialArrInfo,
38 chargingInfoFollows NULL}
40 aOCSCurrency OPERATION ::= { -- AOC-S given in currency units
41 ARGUMENT AOCSCurrencyArg
45 AOCSCurrencyArg ::= CHOICE {
46 chargeNotAvailable NULL,
47 aOCSCurrencyInfoList AOCSCurrencyInfoList }
49 aOCSSpecialArr OPERATION ::= { -- AOC-S for special charging arrangement
50 ARGUMENT AOCSSpecialArrArg
54 AOCSSpecialArrArg ::=CHOICE {
55 chargeNotAvailable NULL,
56 aOCSSpecialArrInfo AOCSSpecialArrInfo }
58 aOCDCurrency OPERATION ::= { -- AOC-D given in currency units
59 ARGUMENT AOCDCurrencyArg
63 AOCDCurrencyArg ::= CHOICE {
64 chargeNotAvailable NULL,
65 aOCDCurrencyInfo AOCDCurrencyInfo }
67 aOCDChargingUnit OPERATION ::= { -- AOC-D given in charging units
68 ARGUMENT AOCDChargingUnitArg
72 AOCDChargingUnitArg ::= CHOICE {
73 chargeNotAvailable NULL,
74 aOCDChargingUnitInfo AOCDChargingUnitInfo }
76 aOCECurrency OPERATION ::= { -- AOC-E given in currency units
77 ARGUMENT AOCECurrencyArg
82 AOCECurrencyArg ::=CHOICE {
83 chargeNotAvailable NULL,
84 aOCECurrencyInfo AOCECurrencyInfo }
86 aOCEChargingUnit OPERATION::= { -- AOC-E given in charging units
87 ARGUMENT AOCEChargingUnitArg
91 AOCEChargingUnitArg ::= CHOICE {
92 chargeNotAvailable NULL,
93 aOCEChargingUnitInfo AOCEChargingUnitInfo }
95 ChargingCase ::= ENUMERATED {
96 chargingInformationAtCallSetup (0),
97 chargingDuringACall (1),
98 chargingAtTheEndOfACall (2) }
100 AOCSCurrencyInfoList ::= SEQUENCE SIZE (1..10) OF AOCSCurrencyInfo
102 AOCSCurrencyInfo ::= SEQUENCE {
103 chargedItem ChargedItem,
104 chargingtype CHOICE {
105 specificCurrency CHOICE {
106 durationCurrency [1] IMPLICIT DurationCurrency,
107 flatRateCurrency [2] IMPLICIT FlatRateCurrency,
108 volumeRateCurrency [3] IMPLICIT VolumeRateCurrency},
109 specialChargingCode SpecialChargingCode,
110 freeOfCharge [4] IMPLICIT NULL,
111 currencyInfoNotAvailable [5] IMPLICIT NULL} }
113 AOCSSpecialArrInfo ::= INTEGER (1..10)
115 ChargedItem ::= ENUMERATED {
116 basicCommunication (0),
120 operationOfSupplementaryServ (4) }
122 DurationCurrency ::= SEQUENCE {
123 dCurrency [1] IMPLICIT Currency,
124 dAmount [2] IMPLICIT Amount,
125 dChargingType [3] IMPLICIT ChargingType,
126 dTime [4] IMPLICIT Time,
127 dGranularity [5] IMPLICIT Time OPTIONAL }
129 FlatRateCurrency ::= SEQUENCE {
130 fRCurrency [1] IMPLICIT Currency,
131 fRAmount [2] IMPLICIT Amount }
133 VolumeRateCurrency ::= SEQUENCE {
134 vRCurrency [1] IMPLICIT Currency,
135 vRAmount [2] IMPLICIT Amount,
136 vRVolumeUnit [3] IMPLICIT VolumeUnit}
138 SpecialChargingCode ::= INTEGER (1..10)
140 AOCDCurrencyInfo ::= CHOICE {
141 specificCurrency SEQUENCE {
142 recordedCurrency [1] IMPLICIT RecordedCurrency,
143 typeOfChargingInfo [2] IMPLICIT TypeOfChargingInfo,
144 aOCDBillingId [3] IMPLICIT AOCDBillingId OPTIONAL },
145 freeOfCharge [1] IMPLICIT NULL}
148 AOCDChargingUnitInfo ::= CHOICE {
149 specificChargingUnits SEQUENCE {
150 recordedUnitsList [1] IMPLICIT RecordedUnitsList,
151 typeOfChargingInfo [2] IMPLICIT TypeOfChargingInfo,
152 aOCDBillingId [3] IMPLICIT AOCDBillingId OPTIONAL },
153 freeOfCharge [1] IMPLICIT NULL}
155 RecordedCurrency ::= SEQUENCE {
156 rCurrency [1] IMPLICIT Currency,
157 rAmount [2] IMPLICIT Amount }
159 RecordedUnitsList ::= SEQUENCE SIZE (1..32) OF RecordedUnits
161 TypeOfChargingInfo ::= ENUMERATED {
165 RecordedUnits ::= SEQUENCE {
167 recordedNumberOfUnits NumberOfUnits,
169 recordedTypeOfUnits TypeOfUnit OPTIONAL }
171 AOCDBillingId ::= ENUMERATED {
174 creditCardCharging (2)}
176 AOCECurrencyInfo ::= SEQUENCE {
178 specificCurrency SEQUENCE {
179 recordedCurrency [1] IMPLICIT RecordedCurrency,
180 aOCEBillingId [2] IMPLICIT AOCEBillingId OPTIONAL},
181 freeOfCharge [1] IMPLICIT NULL},
182 chargingAssociation ChargingAssociation OPTIONAL}
184 AOCEChargingUnitInfo ::= SEQUENCE {
186 specificChargingUnits SEQUENCE {
187 recordedUnitsList [1] IMPLICIT RecordedUnitsList,
188 aOCEBillingId [2] IMPLICIT AOCEBillingId OPTIONAL},
189 freeOfCharge [1] IMPLICIT NULL},
190 chargingAssociation ChargingAssociation OPTIONAL}
192 AOCEBillingId ::= ENUMERATED {
195 creditCardCharging (2),
196 callForwardingUnconditional (3),
197 callForwardingBusy (4),
198 callForwardingNoReply (5),
202 Currency ::= IA5String (SIZE (1..10))
204 Amount ::= SEQUENCE {
205 currencyAmount [1] IMPLICIT CurrencyAmount,
206 multiplier [2] IMPLICIT Multiplier }
208 CurrencyAmount ::= INTEGER (0..16777215)
210 Multiplier ::= ENUMERATED {
220 lengthOfTimeUnit [1] IMPLICIT LengthOfTimeUnit,
221 scale [2] IMPLICIT Scale }
223 LengthOfTimeUnit ::= INTEGER (0..16777215)
225 Scale ::= ENUMERATED {
226 oneHundredthSecond (0),
234 VolumeUnit ::= ENUMERATED {
239 TypeOfUnit ::= INTEGER (1..16) -- Value 1-16
241 NumberOfUnits ::= INTEGER (0..16777215)
243 ChargingType ::= ENUMERATED {
244 continuousCharging (0),
247 ChargingAssociation ::= CHOICE {
248 chargeNumber [0] EXPLICIT PartyNumber,
249 chargeIdentifier ChargeIdentifier}
251 ChargeIdentifier ::= INTEGER (-32768..32767)
253 -- NoChargingInfoAvailable ::= ERROR
255 -- chargingRequest ChargingRequest ::= 30
256 -- aOCSCurrency AOCSCurrency ::= 31
257 -- aOCSSpecialArr AOCSSpecialArr ::= 32
258 -- aOCDCurrency AOCDCurrency ::= 33
259 -- aOCDChargingUnit AOCDChargingUnit ::= 34
260 -- aOCECurrency AOCECurrency ::= 35
261 -- aOCEChargingUnit AOCEChargingUnit ::= 36
262 -- noChargingInfoAvailable NoChargingInfoAvailable ::= 26
264 noChargingInfoAvailable ERROR ::= { CODE local: 26}