Newer
Older
RDMessage {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) retainedData(3) rdHeader(0) version19(19)}
DEFINITIONS IMPLICIT TAGS ::=
BEGIN
-- =============================
-- Object Identifier definitions
-- =============================
-- RetainedData DomainId
retainedDataDomainId OBJECT IDENTIFIER ::= {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) retainedData(3)}
-- rdHeader
rdHeaderId OBJECT IDENTIFIER ::= {retainedDataDomainId rdHeader(0) version19(19)}
-- ======================================
-- Top level definitions for RDHI wrapper
-- ======================================
RetainedDataMessage ::= SEQUENCE
{
canterburym
committed
rdHeaderId [0] OBJECT IDENTIFIER,
retainedDataHeader [1] RetainedDataHeader,
retainedDataPayload [2] RetainedDataPayload,
retainedDataDigest [3] OCTET STRING OPTIONAL,
-- The digitally signed hash of the combined fields above (retainedDataHeader and
-- retainedDataPayload)
...
}
-- ==========================================================================
-- Definitions for Retained Data header information, present in every message
-- ==========================================================================
RetainedDataHeader ::= SEQUENCE
{
requestID [1] RequestID,
cSPID [2] CSPID,
timeStamp [3] GeneralizedTime,
thirdPartyCSPID [4] CSPID OPTIONAL,
canterburym
committed
... ,
requestType [5] RequestType OPTIONAL
}
CSPID ::= UTF8String
-- Unique identifier for the CSP that issued the request
canterburym
committed
RequestType ::= UTF8String
-- Description or reference of the type of Retained Data request
RequestID ::= SEQUENCE
{
countryCode [1] CountryCode,
authorisedOrganisationID [2] AuthorisedOrganisationID,
requestNumber [3] RequestNumber OPTIONAL,
-- all messages except GetStatusMessage and StatusMessage have a request number
-- (see clause 6.1.2)
...
}
CountryCode ::= UTF8String (SIZE(2))
-- A country code as per ISO 3166-1 [4]
AuthorisedOrganisationID::= UTF8String
-- A unique identifier for an Authorized Organization issuing a Retained Data request
RequestNumber ::= UTF8String
-- Unique within a given country and Authorized Organization
-- =================================================
-- Definitions for Retained Data payload information
-- =================================================
RetainedDataPayload ::= CHOICE
-- Payload can be a request, response, error or acknowledgement
{
requestMessage [1] RequestMessage,
requestAcknowledgement [2] RequestAcknowledgement,
responseMessage [3] ResponseMessage,
responseAcknowledgement [4] ResponseAcknowledgement,
errorMessage [5] FurtherInformation,
cancelMessage [6] CancelMessage,
cancelAcknowledgement [7] CancelAcknowledgement,
getstatusMessage [8] GetStatusMessage,
statusMessage [9] StatusMessage,
getResultsMessage [10] GetResultsMessage,
...,
supplementaryRequest [11] SupplementaryRequest,
supplementaryResponse [12] SupplementaryResponse
}
-- ==================================================
-- Definitions of Request message and acknowledgement
-- ==================================================
RequestMessage ::= SEQUENCE
{
requestPriority [1] RequestPriority OPTIONAL,
requestParameters [2] RequestConstraints OPTIONAL,
-- Optional only in case a warrant is transmitted independently of a request
deliveryPointHIB [3] DeliveryPointHIB OPTIONAL,
-- pre-arranged set of delivery address(es) of that specific Authorized Organization
maxHits [4] INTEGER OPTIONAL,
-- Maximum number of records to be returned.
-- On a national basis maximum numbers could be considered
-- In case of maxHit a responseFailed message is sent and no data is sent
canterburym
committed
-- This parameter shall not be used simultaneously with the numberOfRecordsLimit parameter.
-- (see clause 6.3.3.2)
nationalRequestParameters [5] NationalRequestParameters OPTIONAL,
-- To be defined on a national basis
-- Only to be used in case the present document cannot fulfil the national requirements
-- or to transmit a warrant.
maxRecordsPerBatch [6] INTEGER OPTIONAL,
-- Indicates that multi-part delivery shall be used and each ResponseMessage shall not
-- contain more records than specified. (see clause 6.3.3.3)
canterburym
committed
requestedData [7] SEQUENCE OF UTF8String OPTIONAL,
-- only to use in case of selective requests, it contains
-- the path to the selected parameter in XPATH notation
canterburym
committed
numberOfRecordsLimit [8] INTEGER OPTIONAL
-- Indicates the upper limit on the number of records to be provided by the CSP.
-- This parameter shall not be used simultaneously with the maxHits parameter.
-- (see clause 6.3.3.4)
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
}
DeliveryPointHIB ::= UTF8String
RequestConstraints ::= SEQUENCE
{
equals [1] RetainedDataRecord OPTIONAL,
notEqualTo [2] RetainedDataRecord OPTIONAL,
lessThan [3] RetainedDataRecord OPTIONAL,
-- For numerical values
lessThanOrEqualTo [4] RetainedDataRecord OPTIONAL,
-- For numerical values
greaterThan [5] RetainedDataRecord OPTIONAL,
-- For numerical values
greaterThanOrEqualTo [6] RetainedDataRecord OPTIONAL,
-- For numerical values
startsWith [7] RetainedDataRecord OPTIONAL,
-- For strings
endsWith [8] RetainedDataRecord OPTIONAL,
-- For strings
isAMemberOf [9] SEQUENCE OF RetainedDataRecord OPTIONAL,
...
}
RequestPriority ::= OCTET STRING
-- Priority considerations are a matter for national implementation
-- This standard makes no statement regarding how such priorities are represented or used
RequestAcknowledgement ::= SEQUENCE
{
suggestedCompletionTime [1] GeneralizedTime OPTIONAL,
-- Indicative time that results will be ready
-- Purely informational, not binding for either party
...
}
-- ===================================================
-- Definitions of Response message and acknowledgement
-- ===================================================
ResponseMessage ::= SEQUENCE
{
responseStatus [1] ResponseStatus,
responsePayload [2] SEQUENCE OF ResponseRecord OPTIONAL,
-- Clause 6 explains use of this field
-- A responseUnavailable message shall not have a responsePayload (see clause 5.3.1)
-- The responseComplete and responseIncomplete message shall have a responsePayload
-- If there are no responses, the responsePayload is present but has zero entries
nationalResponsePayload [3] NationalResponsePayload OPTIONAL,
-- to be defined on a national basis
-- only to be used in case the present document cannot fulfil the national requirements
canterburym
committed
...,
canterburym
committed
responseNumber [4] INTEGER OPTIONAL,
canterburym
committed
-- number to identify partial results within parallel multi-part delivery
canterburym
committed
numberOfRecordsFound [5] INTEGER OPTIONAL
-- Indicates the total number of records found by the CSP when the value set in the
-- numberOfRecordsLimit has been reached or exceeded.
-- (see clause 6.3.3.4)
}
ResponseStatus ::= CHOICE
{
responseComplete [1] NULL,
-- No further results to come
responseIncomplete [2] NULL,
canterburym
committed
-- There will be at least one further response message to come
responseUnavailable [3] NULL,
-- See clause 5.3.1
responseFailed [4] FurtherInformation,
-- See clauses 6.2.2.2 and 6.3.3.2
...
}
ResponseRecord ::= SEQUENCE
{
recordNumber [1] INTEGER,
recordPayload [2] RetainedDataRecord,
additionalInformation [3] AdditionalInformation OPTIONAL,
-- see clause 6.2.4
nationalRecordPayload [4] NationalRecordPayload OPTIONAL,
-- To be defined on a national basis
-- Only to be used in case the present document cannot fulfil the national requirements
...
}
AdditionalInformation ::= SEQUENCE
{
contactInformation [1] UTF8String OPTIONAL,
-- Name or address of operator or person who may have further information
otherInformation [2] UTF8String OPTIONAL,
...
}
RetainedDataRecord ::= CHOICE
{
telephonyRecord [1] TelephonyRecord,
-- Details are defined in Annex B
messageRecord [2] MessageRecord,
-- Details are defined in Annex C
networkAccess [3] NetworkAccessRecord,
-- Details are defined in Annex E
...,
multimediaRecord [4] MultimediaRecord
-- Details are defined in Annex D
-- Other services will be included (as they are implemented)
}
ResponseAcknowledgement ::= CHOICE
{
-- Acknowledges a response has been sent
acknowledgeCompleteResults [1] NULL,
acknowledgePartialResults [2] NULL,
canterburym
committed
...,
acknowledgePartialResultsNumber [3] INTEGER
-- number to acknowledge a specific resultMessage within parallel multi-part delivery
}
-- ==================================================
-- Definitions of an error message and acknowledgment
-- ==================================================
FurtherInformation ::= SEQUENCE
{
information [1] UTF8String,
contactInformation [2] UTF8String OPTIONAL,
...,
categorisedErrorDescription [3] CategorisedErrorDescription OPTIONAL -- see 6.4
}
CategorisedErrorDescription ::= SEQUENCE
{
value [1] INTEGER,
description [2] UTF8String OPTIONAL,
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
...
}
-- ===================================================
-- Definitions of a cancel message and acknowledgement
-- ===================================================
CancelMessage ::= NULL
-- Cancels an active request
CancelAcknowledgement ::= NULL
-- Acknowledges the receipt of a cancel message (no other information required)
-- ===================================================
-- Definitions of status request and response messages
-- ===================================================
GetStatusMessage ::= SEQUENCE
{
requestNumbers [1] SEQUENCE OF RequestNumber,
...
}
StatusMessage ::= SEQUENCE
{
statusResponse [1] SEQUENCE OF StatusResponse,
...
}
StatusResponse ::= SEQUENCE
{
requestNumber [1] RequestNumber,
requestStatus [2] RequestStatus,
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
...
}
RequestStatus ::= CHOICE
{
ready [1] NULL,
incompleteResultsReady [2] NULL,
failureResponseReady [3] NULL,
notReady [4] NULL,
error [5] FurtherInformation,
inDelivery [6] NULL,
invalidRequestID [7] NULL,
...
}
-- ==========================================
-- Definitions of status get results messages
-- ==========================================
GetResultsMessage ::= NULL
-- No further information required (the RequestID is given in the header)
-- ===================
-- National parameters
-- ===================
NationalRequestParameters ::= SEQUENCE
{
countryCode [1] UTF8String (SIZE (2)),
-- Country Code according to ISO 3166-1 [4],
-- the country to which the parameters inserted after the extension marker apply.
...
-- In case a given country wants to use additional national parameters according to its law,
-- these national parameters should be defined using the ASN.1 syntax and added after the
-- extension marker (...).
-- It is recommended that an version indicator is included in the national parameters
-- definition.
}
NationalResponsePayload ::= SEQUENCE
{
countryCode [1] UTF8String (SIZE (2)),
-- see comment in NationalRequestParameters
...
}
NationalRecordPayload ::= SEQUENCE
{
countryCode [1] UTF8String (SIZE (2)),
-- see comment in NationalRequestParameters
...
}
canterburym
committed
SupplementaryRequest ::= CHOICE
{
nationalSupplementaryRequest [1] NationalSupplementaryRequest,
...
}
SupplementaryResponse ::= CHOICE
{
nationalSupplementaryResponse [1] NationalSupplementaryResponse,
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
...
}
NationalSupplementaryRequest ::= SEQUENCE
{
countryCode [1] UTF8String (SIZE (2)),
-- Country Code according to ISO 3166-1 [4],
-- the country to which the parameters inserted after the extension marker apply.
...
-- In case a given country wants to use additional national parameters according to its law,
-- these national parameters should be defined using the ASN.1 syntax and added after the
-- extension marker (...).
-- It is recommended that a version indicator is included.
}
NationalSupplementaryResponse ::= SEQUENCE
{
countryCode [1] UTF8String (SIZE (2)),
-- Country Code according to ISO 3166-1 [4],
-- the country to which the parameters inserted after the extension marker apply.
...
-- In case a given country wants to use additional national parameters according to its law,
-- these national parameters should be defined using the ASN.1 syntax and added after the
-- extension marker (...).
-- It is recommended that a version indicator is included.
}
TimeSpan ::= SEQUENCE
{
startTime [1] GeneralizedTime OPTIONAL,
endTime [2] GeneralizedTime OPTIONAL,
...,
durationTime [3] INTEGER OPTIONAL
-- duration in seconds
}
-- ==============================================
-- Definitions for Generic Subscriber Information
-- ==============================================
GenericSubscriberInfo ::= SEQUENCE
{
organizationInfo [1] OrganizationInfo OPTIONAL,
individualInfo [2] IndividualInfo OPTIONAL,
...
}
OrganizationInfo ::= SEQUENCE
{
name [1] UTF8String OPTIONAL,
-- name of the organization
contactDetails [2] ContactDetails OPTIONAL,
-- address, and name/phone number of a point of contact
nationalRegistrationID [3] UTF8String OPTIONAL,
-- e.g. social security number
...,
registeredAddress [4] AddressInformation OPTIONAL,
tradingAddress [5] AddressInformation OPTIONAL,
otherAddresses [6] SEQUENCE OF OtherAddress OPTIONAL,
groupID [7] UTF8String OPTIONAL,
-- identity of organization group
groupAdministrator [8] UTF8String OPTIONAL,
-- identity of organization administrator
companyType [9] UTF8String OPTIONAL,
-- type of company
vatEnabled [10] BOOLEAN OPTIONAL,
-- VAT enabled or not
vatNumber [11] UTF8String OPTIONAL,
-- VAT number
createIP [12] IPAddress OPTIONAL,
-- IP used to create the subscriber account
createTime [13] GeneralizedTime OPTIONAL,
-- time that subscriber account was created
modifiedDate [14] GeneralizedTime OPTIONAL
-- date that subscriber account was modified
}
IndividualInfo ::= SEQUENCE
{
name [1] PersonName OPTIONAL,
contactAddress [2] ContactDetails OPTIONAL,
dateOfBirth [3] GeneralizedTime OPTIONAL,
gender [4] ENUMERATED
{
male(0),
female(1),
...
} OPTIONAL,
identificationNumber [5] UTF8String OPTIONAL,
authenticationInfo [6] AuthenticationInfo OPTIONAL,
...,
profession [7] UTF8String OPTIONAL,
otherAddresses [8] SEQUENCE OF OtherAddress OPTIONAL,
createTime [9] GeneralizedTime OPTIONAL
-- time that subscriber account was created
PersonName ::= SEQUENCE
salutation [1] UTF8String OPTIONAL,
surname [2] UTF8String OPTIONAL,
-- the non-chosen or inherited name of an individual, e.g. "Arend"
surnamePrefix [3] UTF8String OPTIONAL,
-- any prefix before the surname, e.g. "von", "van der"
surnameSuffix [4] UTF8String OPTIONAL,
-- any suffix after the surname, e.g. "Jr", "III"
middleNames [5] UTF8String OPTIONAL,
-- that part of the name excluding forename, separable and preceding the surname
firstname [6] UTF8String OPTIONAL,
-- the first name or initials, e.g. "Peter"
...,
secondsurname [7] UTF8String OPTIONAL,
-- a second surname is used in several countries
secondsurnamePrefix [8] UTF8String OPTIONAL,
secondsurnameSuffix [9] UTF8String OPTIONAL
ContactDetails ::= SEQUENCE
address [1] AddressInformation OPTIONAL,
emailAddress [2] UTF8String OPTIONAL,
contactNumber [3] SEQUENCE OF PartyNumber OPTIONAL,
-- several numbers (work, home, mobile) may be given for a single subscriber
...,
additionalEmailAddresses [4] SEQUENCE OF UTF8String OPTIONAL
-- several email addresses may be given for a single subscriber
AddressInformation ::= SEQUENCE
flatNumber [1] UTF8String OPTIONAL,
buildingName [2] UTF8String OPTIONAL,
buildingNumber [3] UTF8String OPTIONAL,
streetName [4] UTF8String OPTIONAL,
poBox [5] UTF8String OPTIONAL,
-- PO box or Response number
postalCode [6] UTF8String OPTIONAL,
-- Postal code. Example: 2289AC
region [7] UTF8String OPTIONAL,
province [8] UTF8String OPTIONAL,
language [9] UTF8String OPTIONAL,
city [10] UTF8String OPTIONAL,
country [11] CountryCode OPTIONAL,
-- Country code as defined in ISO 3166-1 [4]
validity [12] TimeSpan OPTIONAL,
-- time from which the address was registered
...,
relatedOrganizationInfo [13] OrganizationInfo OPTIONAL,
relatedPersonName [14] PersonName OPTIONAL,
otherInformation [15] UTF8String OPTIONAL
-- additional information in cases of divergent addresses
OtherAddress ::= SEQUENCE
{
address [1] AddressInformation OPTIONAL,
addressType [2] UTF8String OPTIONAL,
-- Description of the type of address that has been given in the address field
addressComments [3] UTF8String OPTIONAL,
-- Any extra information to aid the understanding of the address given
...
}
AuthenticationInfo ::= SEQUENCE
{
authenticationType [1] UTF8String OPTIONAL,
-- the type of document used to authenticate, e.g. passport, driver's license
authenticationNumber [2] UTF8String OPTIONAL,
-- the number of the document used to authenticate
...
}
canterburym
committed
PaymentDetails ::= SEQUENCE
{
billingMethod [1] BillingMethod OPTIONAL,
bankAccount [2] BankAccount OPTIONAL,
billingAddress [3] ContactDetails OPTIONAL,
...
}
BankAccount ::= SEQUENCE
{
iBAN [1] IBAN OPTIONAL,
bIC [2] BIC OPTIONAL,
accountHolder [3] UTF8String OPTIONAL,
nationalAccountNumber [4] UTF8String OPTIONAL,
-- To be used in case that the account holding bank has no IBAN
nationalBankNumber [5] UTF8String OPTIONAL,
-- To be used in case that the account holding bank has neither IBAN nor BIC
bankName [6] UTF8String OPTIONAL,
...,
sepaRefNumber [7] UTF8String OPTIONAL
-- To be used for referenceNumber of a SEPA direct debit mandate
canterburym
committed
}
IBAN ::= UTF8String
canterburym
committed
-- International Banking Account Number
-- format as per ISO 13616-1:2007 [28]
BIC ::= UTF8String
canterburym
committed
-- Business Identifier Code
-- format as per ISO 9362:2009 [29]
BillingMethod ::= ENUMERATED
{
debit(0),
transfer(1),
prepaid(2),
...
}
TelephonyRecord ::= CHOICE
{
telephonySubscriber [1] TelephonySubscriber,
telephonyBillingDetails [2] TelephonyBillingDetails,
telephonyServiceUsage [3] TelephonyServiceUsage,
telephonyDevice [4] TelephonyDevice,
telephonyNetworkElement [5] TelephonyNetworkElement,
...
}
-- ==============================
-- Definitions of Subscriber Data
-- ==============================
TelephonySubscriber ::= SEQUENCE
{
subscriberID [1] TelephonySubscriberId OPTIONAL,
-- unique identifier for this subscriber, e.g. account number
genericSubscriberInfo [2] GenericSubscriberInfo OPTIONAL,
-- generic personal information about this subscriber
telephonySubscriberInfo [3] TelephonySubscriberInfo OPTIONAL,
-- service-specific information about this subscriber
subscribedTelephonyServices [4] SEQUENCE OF SubscribedTelephonyServices OPTIONAL,
-- a subscriber (or account) may have more than one service listed against them
...,
nationalTelephonySubscriberInfo [5] NationalTelephonySubscriberInfo OPTIONAL
-- To be defined on a national basis
-- Only to be used in case the present document cannot fulfil the national requirements
}
NationalTelephonySubscriberInfo ::= SEQUENCE
{
countryCode [1] UTF8String (SIZE (2)),
-- see comment in NationalRequestParameters
...
}
TelephonySubscriberId ::= UTF8String
-- unique identifier for this subscriber, e.g. account number
TelephonySubscriberInfo ::= NULL
-- Reserved
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
PartyNumberInfo ::= SEQUENCE
{
partyNumber [1] PartyNumber OPTIONAL,
-- referenced partyNumber for the additional information in this type
timeSpan [2] TimeSpan OPTIONAL,
-- start and end date if applicable in which the number was active
disableReason [3] UTF8String OPTIONAL,
-- reason of temporarily disable procedure - if applicable
...
}
ICCIDInfo ::= SEQUENCE
{
iCCID [1] UTF8String OPTIONAL,
timeSpan [2] TimeSpan OPTIONAL,
-- activation- and deactivation-date if applicable in which the ICCID was active
...
}
LoginInfo ::= SEQUENCE
{
login [1] UTF8String OPTIONAL,
-- login used for authentication, usually a username or email address
password [2] UTF8String OPTIONAL,
serviceName [3] UTF8String OPTIONAL,
-- short description of the kind of service the login / password is used for
needsAdditionalAuthentication [4] BOOLEAN OPTIONAL,
-- true if additional authentication methods are required, like security questions or
-- e-tokens
timeSpan [5] TimeSpan OPTIONAL,
-- timespan when the login / password was valid
...
}
SubscribedTelephonyServices ::= SEQUENCE
{
serviceID [1] UTF8String OPTIONAL,
-- Unique identifier for this service within the operator
providerID [2] UTF8String OPTIONAL,
-- Unique identifier for the service provider
timeSpan [3] TimeSpan OPTIONAL,
-- Start and end data, if applicable, of the subscription
registeredNumbers [4] SEQUENCE OF PartyNumber OPTIONAL,
-- The set of telephone numbers registered for this service
registeredICCID [5] UTF8String OPTIONAL,
serviceType [6] TelephonyServiceType OPTIONAL,
installationAddress [7] AddressInformation OPTIONAL,
-- installation address, if different from the registered address
connectionDate [8] GeneralizedTime OPTIONAL,
-- Date the subscriber was actually connected
-- (May differ from the start of subscription)
iMSI [9] IMSI OPTIONAL,
carrierPreselect [10] BOOLEAN OPTIONAL,
lineStatus [11] UTF8String OPTIONAL,
-- CSP-specific description of current line status, e.g. "Active", "Ceased", etc.
...,
allocatedDeviceIDs [12] SEQUENCE OF TelephonyDeviceID OPTIONAL,
pUKCode [13] UTF8String OPTIONAL,
pUK2Code [14] UTF8String OPTIONAL,
iMEI [15] SEQUENCE OF IMEI OPTIONAL,
nationalTelephonySubscriptionInfo [16] NationalTelephonySubscriptionInfo OPTIONAL,
-- To be defined on a national basis
-- Only to be used in case the present document cannot fulfil the national requirements
paymentDetails [17] PaymentDetails OPTIONAL,
subscriptionType [18] SubscriptionType OPTIONAL,
-- Describes the nature of the subscription
deliveryAddress [19] AddressInformation OPTIONAL,
resellerAddress [20] AddressInformation OPTIONAL,
otherAddresses [21] SEQUENCE OF OtherAddress OPTIONAL,
registeredNumbersInfo [22] SEQUENCE OF PartyNumberInfo OPTIONAL,
-- information about timespan of the active number and deactivation events
registeredICCIDs [23] SEQUENCE OF ICCIDInfo OPTIONAL,
-- in cases of MultiSIM card contracts
loginInfos [24] SEQUENCE OF LoginInfo OPTIONAL
-- e.g. login information according a VMS/UMS account
}
SubscriptionType ::= ENUMERATED
{
unknown(0),
postpay(1),
prepay(2),
other(3),
...
-- Describes the nature of the subscription
NationalTelephonySubscriptionInfo ::= SEQUENCE
{
countryCode [1] UTF8String (SIZE (2)),
-- see comment in NationalRequestParameters
...
}
TelephonyBillingDetails ::= SEQUENCE
{
subscriberID [1] TelephonySubscriberId OPTIONAL,
serviceID [2] UTF8String OPTIONAL,
billingAddress [3] ContactDetails OPTIONAL,
billingIdentifier [4] BillingIdentifier OPTIONAL,
billingRecords [5] SEQUENCE OF BillingRecords OPTIONAL,
...,
nationalTelephonyBillingDetails [6] NationalTelephonyBillingDetails OPTIONAL
-- To be defined on a national basis
-- Only to be used in case the present document cannot fulfil the national requirements
}
NationalTelephonyBillingDetails ::= SEQUENCE
{
countryCode [1] UTF8String (SIZE (2)),
-- see comment in NationalRequestParameters
...
}
BillingIdentifier ::= OCTET STRING
-- Used to correlate billing information
-- useful if the bill-payer is not the subscriber, e.g. company mobiles
BillingRecords ::= SEQUENCE
{
time [1] GeneralizedTime OPTIONAL,
place [2] UTF8String OPTIONAL,
amount [3] REAL OPTIONAL,
currency [4] UTF8String (SIZE(3)) OPTIONAL,
-- as per ISO 4217 [5]
method [5] UTF8String OPTIONAL,
-- i.e. credit card, etc.
...,
nationalTelephonyBillingRecords [6] NationalTelephonyBillingRecords OPTIONAL,
-- To be defined on a national basis
-- Only to be used in case the present document cannot fulfil the national requirements
transactionID [7] UTF8String OPTIONAL,
-- Unique reference for this transaction/billing record
-- Details to be defined on a national basis
transactionStatus [8] UTF8String OPTIONAL
-- Status of the transaction (i.e. "declined", "succeeded", etc.)
-- Details to be defined on a national bases
}
NationalTelephonyBillingRecords ::= SEQUENCE
{
countryCode [1] UTF8String (SIZE (2)),
-- see comment in NationalRequestParameters
...
}
TelephonyServiceType ::= ENUMERATED
{
private(0),
privatePABX(1),
publicPayphone(2),
...
}
-- =================================
-- Definitions of Service Usage Data
-- =================================
TelephonyServiceUsage ::= SEQUENCE
{
partyInformation [1] SEQUENCE OF TelephonyPartyInformation OPTIONAL,
-- This parameter provides the concerned party (Originating, Terminating or
-- forwarded party), the identity(ies) of the party and all the information
-- provided by the party
communicationTime [2] TimeSpan OPTIONAL,
-- Time and duration of the communication
eventInformation [3] SEQUENCE OF TelephonyEventInformation OPTIONAL,
-- A list of events that occurred during this service usage
endReason [4] INTEGER OPTIONAL,
-- Q.850 cause code for call termination
communicationType [5] TelephonyCommunicationType OPTIONAL,
bearerService [6] TelephonyBearerService OPTIONAL,
smsInformation [7] SmsInformation OPTIONAL,
ringDuration [8] INTEGER OPTIONAL,
...,
mmsInformation [9] MmsInformation OPTIONAL,
nationalTelephonyServiceUsage [10] NationalTelephonyServiceUsage OPTIONAL,
-- To be defined on a national basis
-- Only to be used in case the present document cannot fulfil the national requirements
operatorSpecificCallDetails [11] UTF8String OPTIONAL
-- CSP specific value which indicates the nature of a call
-- (e.g. "CallIndicator: GPR, CallActionCode: 2")
}
NationalTelephonyServiceUsage ::= SEQUENCE
{
countryCode [1] UTF8String (SIZE (2)),
-- see comment in NationalRequestParameters
...
}
TelephonyPartyInformation ::= SEQUENCE
{
partyRole [1] TelephonyPartyRole OPTIONAL,
partyNumber [2] PartyNumber OPTIONAL,
subscriberID [3] TelephonySubscriberId OPTIONAL,
deviceID [4] TelephonyDeviceID OPTIONAL,
locations [5] SEQUENCE OF TelephonyLocation OPTIONAL,
-- List of cell locations used by this party during the service usage
communicationTime [6] TimeSpan OPTIONAL,
-- Time and duration of the communication
iMSI [8] IMSI OPTIONAL,
natureOfAddress [9] UTF8String OPTIONAL,
-- Nature of address indicator, e.g. "National", "International"
forwardedTransferredNumber [10] PartyNumber OPTIONAL,
terminatingTransferredNumber [11] PartyNumber OPTIONAL,
...,
emailAddress [12] UTF8String OPTIONAL,
canterburym
committed
-- used for MMS that supports also the use of E-Mail addresses (RFC 5322 [24])
iMEI [13] IMEI OPTIONAL,
detailedLocation [14] TelephonyNetworkElement OPTIONAL,
-- In the case detailed location information per call and party is available
-- (e.g. the geoCoordinates for this partyNumber)
canterburym
committed
nationalTelephonyPartyInformation [15] NationalTelephonyPartyInformation OPTIONAL,
-- To be defined on a national basis
-- Only to be used in case the present document cannot fulfil the national requirements
canterburym
committed
partyType [16] TelephonyPartyType OPTIONAL,
dialledDigits [17] UTF8String OPTIONAL
}
NationalTelephonyPartyInformation ::= SEQUENCE
{
countryCode [1] UTF8String (SIZE (2)),
-- see comment in NationalRequestParameters
...
}
canterburym
committed
TelephonyPartyType ::= CHOICE
{
voicemail [1] NULL,
smsServer [2] NULL,
other [3] UTF8String,
...
}
TelephonyCommunicationType ::= ENUMERATED
{
telephonyFixedCS(0),
telephonyWirelessCS(1),
sMS(2),
...,
mMS(3)
TelephonyBearerService ::= ENUMERATED
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
{
speech(0),
data(1),
fax(2),
...
}
SmsInformation ::= SEQUENCE
{
smsEvent [1] ENUMERATED
{
shortMessage(1),
shortPartMessage(2),
compositeMessage(3),
notificationMessage(4),
...
} OPTIONAL,
smsType [2] ENUMERATED
{
deliverSCtoMS(1),
deliverReportMStoSC(2),
statusReportSCtoMS(3),
commandMStoSC(4),
submitMStoSC(5),
submitReportSCtoMS(6),
reservedMTIValue(7),
...
} OPTIONAL,
smsStatus [3] ENUMERATED
{
delivered(0),
expired(1),
deleted(2),
replaced(3),
submitted(4),
incomplete-submission(5),
incomplete-delivery(6),
undeliverable(7),
passed-on(8),
...
} OPTIONAL,
smsCmRefNr [4] OCTET STRING (SIZE(1..2)) OPTIONAL,
-- format as per 3GPP TS 23.040 [16]
smsNumOfSM [5] INTEGER (0..65535) OPTIONAL,
smsNotifyInd [6] BOOLEAN OPTIONAL,
smsProtocolId [7] OCTET STRING (SIZE(1)) OPTIONAL,
-- format as per 3GPP TS 23.040 [16]
...
}
MmsInformation ::= SEQUENCE
{
mmsEvent [1] ENUMERATED
{
message(1),
notificationMessage(2),
deliveryReportMessage(3),
readReplyMessage(4),
...
} OPTIONAL,
-- type of message exchanged
mmsStatus [2] ENUMERATED
{
delivered(0),
expired(1),
deleted(2),
replaced(3),
submitted(4),
undeliverable(5),
passed-on(6),
delivery-rejection(7),
delivery-forward(8),
delivery-copy(9),
submission-rejection(10),
submission-failure(11),
...,
delivered-application(12)
-- optional flag indicating MMS was retrieved using
-- something other than mobile deivce e.g. web browser
} OPTIONAL,
mmsNotifInd [3] BOOLEAN OPTIONAL,
-- indication that a delivery notification has been generated
mmsMsgMod [4] ENUMERATED
{
none(1),
modified(2),
stripped(3),
...
} OPTIONAL,
-- message modification indication for MMS
...
}
TelephonyEventInformation ::= SEQUENCE
{
time [1] GeneralizedTime OPTIONAL,
-- time when the event occurred
type [2] TelephonyEventType OPTIONAL,
-- type of event
party [3] TelephonyPartyRole OPTIONAL,
-- party to which the event is related
location [4] TelephonyLocation OPTIONAL,
...
}
TelephonyEventType ::= CHOICE
{
basicEventType [1] BasicEventType,
callConferenceEventType [2] CallConferenceEventType,
callForwardingEventType [3] CallForwardingEventType,
messagingEventType [4] MessagingEventType,
prepayServiceEventType [5] PrepayServiceEventType,
...,
nationalTelephonyEventType [6] NationalTelephonyEventType
-- To be defined on a national basis
-- Only to be used in case the present document cannot fulfil the national requirements
}
NationalTelephonyEventType ::= SEQUENCE
{
countryCode [1] UTF8String (SIZE (2)),
-- see comment in NationalRequestParameters
...
}
BasicEventType ::= ENUMERATED
{
handover(1),
hold(2),
retrieve(3),
suspend(4),
resume(5),
ect(6),
mpty(7),
mptyHold(8),
mptyRetrieve(9),
mptySplit(10),
uus1(11),
uus2(12),
uus3(13),
serviceSpeech(14),
serviceFax(15),
tpyInvoke(16),
tpyPrivateComm(17),
serviceActivation(18),
transit(19),
mSOriginating(20),
callForwarding(21),
mSTerminating(22),