2 //Date: 12 October 2004
3 //Account Manager Interfaces and Data Types for ETSI ES 203 915-11 V1.1.1, DES/TISPAN-01005-11-OSA, Parlay 5.0
19 enum TpChargingEventName
{
29 enum TpBalanceQueryError
{
32 P_BALANCE_QUERY_ERROR_UNDEFINED
,
33 P_BALANCE_QUERY_UNKNOWN_SUBSCRIBER
,
34 P_BALANCE_QUERY_UNAUTHORIZED_APPLICATION
,
35 P_BALANCE_QUERY_SYSTEM_FAILURE
39 struct TpBalanceInfo
{
44 TpString AdditionalInfo
;
48 struct TpChargingEventInfo
{
49 TpChargingEventName ChargingEventName
;
50 TpBalanceInfo CurrentBalanceInfo
;
51 TpTime ChargingEventTime
;
57 TpBalanceQueryError StatusCode
;
58 TpBalanceInfo BalanceInfo
;
62 typedef sequence
<TpBalance
> TpBalanceSet
;
65 struct TpTransactionHistory
{
66 TpAssignmentID TransactionID
;
67 TpDateAndTime TimeStamp
;
68 TpString AdditionalInfo
;
72 typedef sequence
<TpTransactionHistory
> TpTransactionHistorySet
;
75 enum TpTransactionHistoryStatus
{
77 P_AM_TRANSACTION_ERROR_UNSPECIFIED
,
78 P_AM_TRANSACTION_INVALID_INTERVAL
,
79 P_AM_TRANSACTION_UNKNOWN_ACCOUNT
,
80 P_AM_TRANSACTION_UNAUTHORIZED_APPLICATION
,
81 P_AM_TRANSACTION_PROCESSING_ERROR
,
82 P_AM_TRANSACTION_SYSTEM_FAILURE
86 typedef sequence
<TpChargingEventName
> TpChargingEventNameSet
;
89 struct TpChargingEventCriteria
{
90 TpChargingEventNameSet ChargingEvents
;
95 struct TpChargingEventCriteriaResult
{
96 TpChargingEventCriteria ChargingEventCriteria
;
97 TpAssignmentID AssignmentID
;
101 exception P_UNAUTHORIZED_APPLICATION
{
102 TpString ExtraInformation
;
106 typedef sequence
<TpChargingEventCriteriaResult
> TpChargingEventCriteriaResultSet
;
109 struct TpBalanceExpiryDate
{
111 TpBalanceQueryError StatusCode
;
112 TpDateAndTime ExpiryDate
;
116 typedef sequence
<TpBalanceExpiryDate
> TpBalanceExpiryDateSet
;
119 enum TpVoucherError
{
123 P_VOUCHER_UNKNOWN_SUBSCRIBER
,
124 P_VOUCHER_UNAUTHORIZED_APPLICATION
,
125 P_VOUCHER_SYSTEM_FAILURE
130 TpAssignmentID VoucherID
;
132 TpBalanceInfo BalanceInfo
;
136 typedef sequence
<TpVoucher
> TpVoucherSet
;
140 interface IpAppAccountManager
: IpInterface
{
141 void reportNotification
(
142 in TpChargingEventInfo chargingEventInfo
,
143 in TpAssignmentID assignmentId
146 void queryBalanceRes
(
147 in TpAssignmentID queryId
,
148 in TpBalanceSet balances
151 void queryBalanceErr
(
152 in TpAssignmentID queryId
,
153 in TpBalanceQueryError cause
156 void retrieveTransactionHistoryRes
(
157 in TpAssignmentID retrievalID
,
158 in TpTransactionHistorySet transactionHistory
161 void retrieveTransactionHistoryErr
(
162 in TpAssignmentID retrievalID
,
163 in TpTransactionHistoryStatus transactionHistoryError
166 void queryBalanceExpiryDateRes
(
167 in TpAssignmentID queryId
,
168 in TpBalanceExpiryDateSet dates
171 void queryBalanceExpiryDateErr
(
172 in TpAssignmentID queryId
,
173 in TpBalanceQueryError cause
176 void updateBalanceRes
(
177 in TpAssignmentID requestId
,
181 void updateBalanceErr
(
182 in TpAssignmentID requestId
,
183 in TpBalanceQueryError cause
186 void createVoucherRes
(
187 in TpAssignmentID requestId
,
188 in TpAssignmentID voucherId
191 void createVoucherErr
(
192 in TpAssignmentID requestId
,
193 in TpVoucherError cause
196 void destroyVoucherRes
(
197 in TpAssignmentID requestId
,
198 in TpAssignmentID voucherId
201 void destroyVoucherErr
(
202 in TpAssignmentID requestId
,
203 in TpAssignmentID voucherId
,
204 in TpVoucherError cause
207 void queryVoucherRes
(
208 in TpAssignmentID queryId
,
212 void queryVoucherErr
(
213 in TpAssignmentID queryId
,
214 in TpAssignmentID voucherId
,
215 in TpVoucherError cause
218 void queryUserVouchersRes
(
219 in TpAssignmentID queryId
,
220 in TpVoucherSet vouchers
223 void queryUserVouchersErr
(
224 in TpAssignmentID queryId
,
225 in TpVoucherError cause
231 interface IpAccountManager
: IpService
{
232 TpAssignmentID createNotification
(
233 in IpAppAccountManager appAccountManager
,
234 in TpChargingEventCriteria chargingEventCriteria
236 raises
(TpCommonExceptions
,P_INVALID_ADDRESS
,P_INVALID_CRITERIA
,P_INVALID_EVENT_TYPE
,P_UNKNOWN_SUBSCRIBER
);
238 void destroyNotification
(
239 in TpAssignmentID assignmentId
241 raises
(TpCommonExceptions
,P_INVALID_ASSIGNMENT_ID
);
243 TpAssignmentID queryBalanceReq
(
244 in TpAddressSet users
246 raises
(TpCommonExceptions
,P_UNKNOWN_SUBSCRIBER
,P_UNAUTHORIZED_APPLICATION
);
248 void changeNotification
(
249 in TpAssignmentID assignmentID
,
250 in TpChargingEventCriteria eventCriteria
252 raises
(TpCommonExceptions
,P_INVALID_ASSIGNMENT_ID
,P_INVALID_CRITERIA
,P_INVALID_EVENT_TYPE
,P_UNKNOWN_SUBSCRIBER
,P_INVALID_ADDRESS
);
254 TpChargingEventCriteriaResultSet getNotification
()
255 raises
(TpCommonExceptions
);
257 TpAssignmentID retrieveTransactionHistoryReq
(
259 in TpTimeInterval transactionInterval
261 raises
(TpCommonExceptions
,P_UNKNOWN_SUBSCRIBER
,P_UNAUTHORIZED_APPLICATION
,P_INVALID_TIME_AND_DATE_FORMAT
);
263 TpAssignmentID enableNotifications
(
264 in IpAppAccountManager appAccountManager
266 raises
(TpCommonExceptions
);
268 void disableNotifications
()
269 raises
(TpCommonExceptions
);
271 TpAssignmentID queryBalanceExpiryDateReq
(
272 in TpAddressSet users
274 raises
(TpCommonExceptions
,P_UNKNOWN_SUBSCRIBER
,P_UNAUTHORIZED_APPLICATION
);
276 TpAssignmentID updateBalanceReq
(
279 in TpBalanceInfo amount
,
282 raises
(TpCommonExceptions
, P_UNKNOWN_SUBSCRIBER
, P_UNAUTHORIZED_APPLICATION
);
284 TpAssignmentID createVoucherReq
(
286 in TpBalanceInfo amount
288 raises
(TpCommonExceptions
, P_UNKNOWN_SUBSCRIBER
, P_UNAUTHORIZED_APPLICATION
);
290 TpAssignmentID destroyVoucherReq
(
291 in TpAssignmentID voucherId
293 raises
(TpCommonExceptions
, P_UNAUTHORIZED_APPLICATION
, P_INVALID_ASSIGNMENT_ID
);
295 TpAssignmentID queryVoucherReq
(
296 in TpAssignmentID voucherId
298 raises
(TpCommonExceptions
, P_UNAUTHORIZED_APPLICATION
, P_INVALID_ASSIGNMENT_ID
);
300 TpAssignmentID queryUserVouchersReq
(
303 raises
(TpCommonExceptions
, P_UNKNOWN_SUBSCRIBER
, P_UNAUTHORIZED_APPLICATION
, P_INVALID_ASSIGNMENT_ID
);