Professional Documents
Culture Documents
Message Controller R3.0-10.09.B09: Billing Interface Manual
Message Controller R3.0-10.09.B09: Billing Interface Manual
B09
i
Copyright © Mavenir 2010-2018
All rights reserved. This document is protected by international copyright law and may not be reprinted, reproduced, copied or utilised in whole or in part by any means including electronic,
mechanical, or other means without the prior written consent of Mavenir.
Whilst reasonable care has been taken by Mavenir to ensure the information contained herein is reasonably accurate, Mavenir shall not, under any circumstances be liable for any loss
or damage (direct or consequential) suffered by any party as a result of the contents of this publication or the reliance of any party thereon or any inaccuracy or omission therein. The
information in this document is therefore provided on an ’as is’ basis without warranty and is subject to change without further notice and cannot be construed as a commitment by
Mavenir.
The products mentioned in this document are identified by the names, trademarks, service marks and logos of their respective companies or organisations and may not be used in any
advertising or publicity or in any other way whatsoever without the prior written consent of those companies or organisations and Mavenir.
ii
Table of Contents
Preface x
1 Introduction 1
1.6 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.7.1 TON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.7.2 NPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.7.3 SP_ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.7.4 SEG_TYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.7.5 MSG_TYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.7.6 MSG_MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.7.7 MSG_STATUS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.7.8 REJECT_REASON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.7.9 REJECT_METHOD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.7.10 SM_ERROR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
iii
2.7.11 A_NETWORK_TYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.7.12 B_NETWORK_TYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.7.13 A_HLR_MAP_ERROR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.7.14 B_HLR_MAP_ERROR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.7.15 MAP_ERROR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.7.16 MAP_CAUSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.7.17 SM_CONTENT_ENCODING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.7.18 MAP_OPER_TYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.7.19 NOTIF_REQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.7.20 UDH_MASK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.7.21 xCOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.7.22 MSG_FLAGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.7.23 DETECT_FLAGS(_SEG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.7.24 BILLING_DATA(_SEG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.7.25 SIGNAL_OPER_TYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.7.26 SIGNAL_TYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.7.27 CONTACT_REG_STATE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.7.28 CONTACT_REG_EVENT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.7.29 STAT_DATA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.7.30 TRACK_DATA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.7.31 TELESERVICE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.7.32 ODB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.7.33 CALL_BARRING_FEATURES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.7.34 NETWORK_ERROR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.7.35 LAI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.7.36 PARENT_MSG_STATUS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.7.37 MAP_OPER_ORIGIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.7.38 HLR_MODIF_REQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.7.39 REQ_SUBS_INFO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.7.40 BASE_ERROR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.7.41 ICID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.7.42 UCID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.7.43 LRN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.7.44 SMPP_COMMAND_ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.7.45 SMPP_MESSAGE_STATE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
2.7.46 SMPP_COMMAND_STATUS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
2.7.47 OPER_ORIGIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
2.8 AVRO stream types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
iv
3 Legacy SDR Streams 68
Acronyms 139
Bibliography 144
v
List of Figures
vi
List of Tables
2.17 SM errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
vii
2.30 Signal Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.31 Contact registration state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.32 Contact registration event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.33 Teleservice identifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.34 Operator determined barring flags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.35 SMPP network errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.36 UCP network errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.37 GSM network errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
2.38 SMTP network errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2.39 Message statuses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.40 MAP operation origin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.41 HLR modification request from IP-SM-GW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.42 Requested SS-info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.43 Base error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
2.44 DC internal errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
2.45 DC AKIF errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
2.46 SMPP command ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.47 SMPP message state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
2.48 Operation origin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
viii
3.20 Structure of billing_identification for vendor ID equal to 10000001 (0x81) . . . . . . . . . . . . . . . . . . . . . 117
ix
Preface
Purpose
The purpose of this document is to describe billing records of Message Controller (MCO) R3.0-10.09.
Audience
The target audience of this document are all Mavenir customers and engineers.
Scope
The scope of this document is to provide essential information on the creation of service detail records (SDR) by MCO and usage
of these charging event records for statistical and (postpaid) billing purposes.
The on-line (prepaid) charging interface is out of the scope of this document since MCO does not provide a standard on-line
charging interface but allows integration with any Diameter-based on-line charging interface. The integration with an on-line
charging interface and related concepts are described in [MCO_GLS_prepaid].
Organisation
Related documentation
This manual is part of the Mavenir MCO documentation set, which is described in [MCO_DO].
Prior to integration with a statistical and/or billing system the operators must be familiar with the basic MCO concepts and the
terminology described in [MCO_OMAN].
Typographic conventions
x
Typeface/Symbol Meaning/Used for Example
Refers to a label, value, file name, directory,
The DATA directory contains...
Courier code, constant or other computer component or
This application has S_DOMAIN of value 5.
output.
Set the origAddrHandling parameter to...
Refers to parameters and configuration file
Courier In section [Routing], configure the mapping
sections.
of...
Serves as a placeholder for variable text that Use the <entity>.cfg file name for...
<courier> the user will replace as appropriate to its The SUBSCRIBE_SP(<sp>) action can be
context. used to...
Refers to a system command, process, a
Click the Close button to....
bold keyboard key, and to names of buttons,
Press Ctrl+N to open a new...
windows and options in a GUI.
Jumpstart, the installation procedure on a
Emphasises a new word or term of significance,
SUN T1.
italic and references to documentation or parts of
See the Network Ports table in NGP Operator
documentation.
Manual.
xi
Typeface/Symbol Meaning/Used for Example
xii
1 Introduction
These records have to be considered charging events recording the state of processing a message at a particular point of the
message life in which a service can be applied. These points are referred to as service points (SP) and creation of an SDR is one
of the services.
Referring to 3GPP 32.240, by recording SDRs MCO implements Charging Trigger Function (CTF), see Figure 1.1. In this model
the CTF produces charging event records only while Charging Data Function (CDF) creates charging detail records (CDRs). The
CDF can apply either a one-to-one mapping between charging events and CDRs or many-to-one (or even more complex) mapping.
The Charging Gateway Function (CGF) serves as an interface to a billing domain.
Billing
CTF SDR
CDF CDR
CGF CDR
Domain
(MCO)
In general, produced SDRs cannot be used directly for billing purposes. A CDF which creates CDRs from MCO SDRs must be
implemented. It can be implemented as an independent system or directly by the charging system itself.
Caution
In any case it is essential to understand the difference between an SDR and a CDR before any steps to integration of
MCO and a (post-paid) billing system are taken. Otherwise there is a risk of a mismatch between the billing system and
MCO capabilities.
Message processing is a sequence of steps performed one-by-one. In this sequence there are charging triggers generated by
MCO. Based on these triggers a desired charging model can be applied in charging domain. In each of the applied charging
triggers attributes of a message are exposed to the charging domain as is expected from a charging trigger function (CTF).
MCO records charging triggers as so called "service detail records" (SDRs). Charging system can pull these records and apply
requested charging actions. SDR records can be also used by an analytics systems to visualise processes in the network.
Message flow
As illustrated by Figure 1.2, a message enters MCO (is submitted) through an interface specific component and leaves the system
(is delivered) through the same or a different interface component. These interface components can initiate a charging trigger per
a signal unit:
• SIP Operation - captures SIP operations received/sent by MCO
• SMPP Operation - captures SMPP commands received/sent by MCO
• MAP Operation - captures GSM MAP operations received/sent by MCO
• SRI Indication - captures MAP SRI-SM requests received by MCO
• SRI Confirmation - captures MAP SRI-SM responses received by MCO
• SRI Phishing - captures MAP SRI-SM queries detected as phishing by MCO
Message
completed
Routing CT
Per rec
KERNEL
queue
& se ssa g e
Routing Complete CT
nt
ipient
g me
e
Final CT
Per m
& se ssa g e
Per me ent
nt
Incoming CT Outgoing CT
& se g m
g me
e
TX RX
Per m
Per s
ig
nal
MAP/SIP/SMPP/.. signalling
TX components are responsible for message submission. These components can initiate charging triggers per message (or
message segment):
• Incoming - captures the message at the end of submission phase
RX components are responsible for message delivery. These components can initiate charging triggers per message (or message
segment):
• Outgoing - captures message before the delivery attempt (delivery route is known already)
• Outgoing Complete - captures message after the delivery attempt (delivery result is available)
KERNEL components are responsible for message delivery initiation, it can initiate these charging triggers per recipient queue:
• Routing - captures the routing decision when delivery of messages from a queue starts (that means not created for each
message!)
• Routing Complete - captures the routing decision result when delivery of message from a queue ends (kind of delivery result,
not created for each message!)
KERNEL component is also responsible for message completion. Message is completed (removed from MCO) once it is delivered,
or recognized(marked) as undeliverable. In that case it can initiate charging trigger per message (or message segment):
• Final - captures message at the end of its life in the MCO
Various protocols have limited size of a single message. However, devices are able to overcome these limitations and expose long
messages to user. Technically, a long message is transported as number of short messages (segments) which are reassmebled
in a device.
MCO is capable to reassemble multiple short messages (segments) into a single long message and expose such a reassembled
message as anny other in charging triggers. However, in that case it is sometimes still needed to apply charging per each segment.
Thus MCO allows to initiate charging triggers for both: individual segments as well as messages.
Integration notes
Note
Although charging triggers are initiated from different places in the system, all these are recorded in a single stream.
Individual charging triggers can be recognized typically by service point (SP_ID) attribute.
MCO is able to produce multiple SDR streams at each service point. Each stream produces records in a specific format; the list
of SDR fields (mostly deduced from message attributes) is configurable per stream.
The following SDR stream types are native for MCO R3.0:
• CSV_SM
This CSV-based SDR stream type contains records created in the Incoming, Incoming Complete, Outgoing, Outgoing Complete,
Final and Replace service points.
A message on this level is normalised and incoming/outgoing interface-agnostic.
• CSV_MAP
This CSV-based SDR stream type contains records created in the MAP Operation, Incoming SRI-SM-IND and Incoming SRI-
SM-CNF service points.
A message on this level is not a real short message (SM) but it is a GSM MAP operation.
• CSV_SIP
This CSV-based SDR stream type contains records created in the SIP Operation service point. It contains SIP signalling
messages going from or to the IP-SM-GW.
A message on this level is not a real SIP message but it is a set of parameters used for further processing.
• CSV_SMPP
This CSV-based SDR stream type contains records created in the SMPP Operation service point. It contains all SMPP protocol
specific operations going from or to an LA.
These SDR streams consist of fields which naming is consistent with naming of message attributes in RBDL.
The following SDR stream types are deprecated and persist due to the backward compatibility with legacy products:
• CSV_SM_23
This CSV-based SDR stream type is equivalent to the CSV_SM stream of MCO R2.3. We recommend migrating the system to
the native CSV_SM stream.
This stream is deprecated because of the number of fields with unclear/unexpected behaviour.
• CSV_MAP_23
This CSV-based SDR stream type is equivalent to the CSV_MAP stream of MCO R2.3. We recommend migrating the system
to the native CSV_MAP stream.
This stream is deprecated because of the number of fields with unclear/unexpected behaviour.
• CSV_ISMSC
This CSV-based SDR stream type mimics the Infinity SMSC billing interface. However, the 100% compatibility is not guaranteed
since the implementation of MCO differs from Infinity SMSC and some minor differences are unavoidable.
• CSV_TP
This fixed-length field stream type mimics the Telepath IP SMSC billing interface. However, the 100% compatibility is not
guaranteed since the implementation of MCO differs from Telepath IP SMSC and some minor differences are unavoidable.
• ASN1_V5
This ASN.1 stream type mimics the SMSC V5 billing interface. However, the 100% compatibility is not guaranteed since the
implementation of MCO differs from SMSC V5 and some minor differences are unavoidable.
1.6 Limitations
Once a single CSV record exceeds 255 KB in length, the currently recorded field is truncated and the remaining fields are left
empty (filled by the <skip> text). The maximum size of a single CSV record in an SDR stream is 256 KB (hard limit).
This chapter describes SDR stream types native to MCO R3.0. These streams are written in the CSV format.
Each field in a stream is of a specific type; the format in which a particular field type is written can be specified. The full list of
available field types is listed in Table 2.1.
Addresses
TON and NPI values of address fields (ADDR and S-ADDR fields types) are not following network values which differ per protocol,
but are presented in normalized, protocol agnostic, format, see Section 2.7.1 and Section 2.7.2.
Available format strings differ per field type. These strings allow changing the format in which a field of a particular type is written
Table 2.2: Custom (extdata) field types mapping on SDR stream types
<number>
is a positive number specifying the maximum length of the
output. 0 means that the maximum length of the output is
unlimited.
Each SDR stream field has a unique name and can be present only once in the fields table. When multiple occurrences are
needed, typically with different formatting, a unique alias defined as field_name#unique_custom_name can be added to the
fields table. A full alias name is then also present in the CSV file header.
Example:
To configure the A_ADDR address as separate TON ,NPI and address string values, configure the following three aliases:
sdr_conf.streams[CSV_SM].fields.add name=A_ADDR#ton format=t
sdr_conf.streams[CSV_SM].fields.add name=A_ADDR#npi format=n
sdr_conf.streams[CSV_SM].fields.add name=A_ADDR#addr format=a
Custom (extdata) message fields are configurable by operator. Names of the fields are in format $<attr_group>.<attr_name>
where <attr_group> and <attr_name> can be any string containing alphanumerical characters. There are several custom
message field types. Each custom message field type is mapped to an SDR field type as defined in Table 2.3.
Table 2.3: Custom (extdata) field types mapping to SDR stream types
It is possible to configure MCO to omit special characters when required by the billing system.
Encryption is available for native stream types and for field types: O-STRING , STRING , ADDR and S-ADDR.
MCO uses the AES encryption in the CFB mode for fields content encryption. This encrypted content is prefixed with an initial-
ization vector and then encoded into the base64 encoding. The AES encryption key is randomly generated each time when the
SDR AF configuration is reloaded. The AES encryption key is encrypted by a public RSA key with OAEP padding, encoded into
base64 and written as part of a header in the stream file. The format of the RSA public key must be PEM.
header
Encrypt <field_value> <field_name>(ENCRYPT(<base64str>))
Init.vector using
(random + incremental) AES Key and Init.vector value
(CFB mode)
<base64str>
Concatenate
Init.vector
<field_value> BASE64 encoding
and
encrypted value
header
Split on
Init.vector
BASE64 decoding Init.vector
and
encrypted value
Example:
The example output of csv_decode for the encrypted SM_TEXT field of the CSV_SM stream for a message containing text "Hello
world!":
$ csv_decode CSVSM_rnd-vm-13-81_20181029104439Z.csv
================== CSVSM_rnd-vm-13-81_20181029104439Z.csv - START - ==================
.
.
.
SM_TEXT(ENCRYPT(B73QwTX0ueR13H/KHfmfoGmznRIzWo9Vr8iZk3Q4Cb9kYULC1JASmwcjs8lb0A3s80QO0o+Om+ ←-
oSa3H78dLMsrLnrRRBrJKdHPoFYhFHaUZLKcw5TCQRBjhVT0BpTp81cmCd7wOuRfGTMu7cuWbhhHcs8G5bMBYpY12Wm6 ←-
/ApJguAWWMWikTL0k8aLq6+z1M3zRNvtcBx1EVIZoK6dPok/S1LYx3QvoJmXXuLdYGrMeTLlY6zoWbFEG/ ←-
glSmYw7B+BXjHXsuZqfvJYH5lR5zA2QZdbBaKeTUS2UaXvc0EC3VAsd+mmkJ+ ←-
YejfG4tI1Kp5rLF98ErYVNJpTJfZv+zJg==)): jEQoaes+APFDxAiYBbnSse4hIX1c3j94lepf2Q==
.
.
.
================== CSVSM_rnd-vm-13-81_20181029104439Z.csv - END - ====================
Tip
Use csv_decode with parameter -k to specify the path to the RSA private key to see decrypted content of encrypted
fields.
The CSV_SM stream type is used to record messages on the protocol agnostic level. The full list of all available fields within this
stream type is contained in Table 2.4; the # column is just a row number in the table.
The CSV_MAP stream type is used to record messages on the GSM MAP level. The list of all available fields of this stream type is
given in Table 2.5; the # column is just a row number in the table.
The CSV_SIP stream type is used to record messages on the SIP level. The list of all available fields of this stream type is given
in Table 2.6; the # column is just a row number in the table.
The CSV_SMPP stream type is used to record operations on the SMPP level. The list of all available fields of this stream type is
given in Table 2.7; the # column is just a row number in the table.
2.7.1 TON
TON value is not following protocol specifications but is presented in a normalized way.
2.7.2 NPI
NPI value is not following protocol specifications but is presented in a normalized way.
2.7.3 SP_ID
This field determines the service point in which a record has been created.
2.7.4 SEG_TYPE
This field determines whether a record has been created for a message or a message segment.
This field determines whether a record has been created for a message or a receipt.
2.7.6 MSG_MODE
This field determines the message mode assigned to a message at the end of a particular service point.
2.7.7 MSG_STATUS
2.7.8 REJECT_REASON
2.7.9 REJECT_METHOD
This field determines the method with which a message has been blocked. The field is empty when the message has not been
blocked.
2.7.10 SM_ERROR
This field determines the SM (protocol agnostic) error with which the message has been blocked. Allowed values are 0 to 51.
Note
When OAM configuration option rbdl_conf.drop_sets_error is enabled, an SM error is exposed also when a mes-
sage has been dropped in the INCOMING stage.
2.7.11 A_NETWORK_TYPE
2.7.13 A_HLR_MAP_ERROR
This field determines the MAP error resulting from an SRI-SM (HLR) query about an originating MSISDN number. The field is
empty when the query has been successful or has not been executed, see Table 2.20.
2.7.14 B_HLR_MAP_ERROR
This field determines the MAP error resulting from an SRI-SM (HLR) query about a recipient MSISDN number. The field is empty
when the query has been successful or has not been executed, see Table 2.20.
2.7.15 MAP_ERROR
This field determines the MAP error with which a message has been blocked.
2.7.16 MAP_CAUSE
This field determines the MAP cause with which a message has been blocked.
2.7.18 MAP_OPER_TYPE
This field determines the type of a GSM MAP operation being recorded.
2.7.19 NOTIF_REQ
This field denote which notification (delivery-receipt) types are requested by originator of a message.
2.7.20 UDH_MASK
This field denotes list of UDH IEs detected in a message. Single flag can denote multiple UDH IEs determined by UDH profiles.
UDH profiles are configurable in udhb_conf feature.
2.7.21 xCOS
This field denotes list of services a particular party has enabled or disabled. Meaning of flags 1-32 is predefined and/or reserved.
Flags 33-64 are free for any use.
2.7.22 MSG_FLAGS
2.7.23 DETECT_FLAGS(_SEG)
This bit-field contains flags indicating detected spam and fraud issues with a message.
2.7.24 BILLING_DATA(_SEG)
2.7.25 SIGNAL_OPER_TYPE
Signal operation type. It identifies the kind of signal going from/to $prod.
2.7.26 SIGNAL_TYPE
2.7.27 CONTACT_REG_STATE
2.7.28 CONTACT_REG_EVENT
2.7.29 STAT_DATA
This field contains a list of entries separated by a vertical bar informing about result and details of miscellaneous message
screenings.
<feature_id>;<profile_id><result><ffu>|...
2.7.30 TRACK_DATA
This field contains a list of RBDL rule names of rules applied to the message. The rule names are separated by a vertical bar as
follows:
MTFAKE_RULE_1|ADT_1.1.123*|TRACKED_RULE_1
The size of this field never exceeds 4096 ASCII characters. It can be shorter depending on the place where the RBDL rule is
applied. When there is not enough space for recording another rule name(s) in the field, the plus sign (+) is included to indicate
that more rules than recorded were applied.
MTFAKE_RULE_1|ADT_1.1.123*|TRACKED_RULE_1|...|+
Only rules marked for SDR tracking in MCO configuration are recorded.
2.7.31 TELESERVICE
Bit/position
Name Description
4 registrationInternationalCFBarred registrationInternationalCF-Barred
registrationInterzonalCFNotToHPLMN-
5 registrationInterzonalCFNotToHPLMNBarred
Barred
6 registrationInterzonalCFBarred registrationInterzonalCF-Barred
7 registrationCFNotToHPLMNBarred registrationCFNotToHPLMN-Barred
8 registrationAllCFBarred registrationAllCF-Barred
9 roamingOutsidePLMNCountryBarred roamingOutsidePLMN-CountryBarred
10 roamingOutsidePLMNBarred roamingOutsidePLMN-Barred
roamingOutsidePLMNICountryIC-
11 roamingOutsidePLMNICountryICCallsBarred
CallsBarred
12 roamingOutsidePLMNICCallsBarred roamingOutsidePLMNIC-CallsBarred
13 allICCallsBarred allIC-CallsBarred
14 roamingOutsidePLMNOGCallsBarred roamingOutsidePLMNOG-CallsBarred
15 roamerAccessToVPLMNAPBarred roamerAccessToVPLMN-AP-Barred
16 roamerAccessToHPLMNAPBarred roamerAccessToHPLMN-AP-Barred
17 allPacketOrientedServicesBarred allPacketOrientedServicesBarred
18 multipleECTBarred multipleECT-Barred
19 doublyChargeableECTBarred doublyChargeableECT-Barred
20 interzonalECTBarred interzonalECT-Barred
21 internationalECTBarred internationalECT-Barred
22 chargeableECTBarred chargeableECT-Barred
23 allECTBarred allECT-Barred
interzonalOGCallsAndInternationalOGCalls-
24 interzonalOGCallsAndInternationalOGCallsNotToHPLMNCountryBarred
NotToHPLMN-CountryBarred
interzonalOGCallsNotToHPLMN-
25 interzonalOGCallsNotToHPLMNCountryBarred
CountryBarred
26 interzonalOGCallsBarred interzonalOGCallsBarred
27 ssAccessBarred ss-AccessBarred
28 premiumRateEntertainementOGCallsBarred premiumRateEntertainementOGCallsBarred
29 premiumRateInformationOGCallsBarred premiumRateInformationOGCallsBarred
internationalOGCallsNotToHPLMN-
30 internationalOGCallsNotToHPLMNCountryBarred
CountryBarred
31 internationalOGCallsBarred internationalOGCallsBarred
32 allOGCallsBarred allOG-CallsBarred
2.7.33 CALL_BARRING_FEATURES
This field contains a list of call barring features obtained during service data screening of MAP field CallBarFeatureList. The
following is an example of raw data contained in the field:
010222;090118
Fields ss-status and service-code contain values of call barring features. service-type contains the type of service, and
can have the following values:
• 00 - no service code is contained in the call barring feature, service-code is not present.
• 01 - the bearer service code is present in service-code.
• 02 - the Teleservice code is present in service-code.
2.7.34 NETWORK_ERROR
The enumeration of NETWORK_ERROR values is contained in the following tables. Enumeration table is chosen based on the
B_NETWORK_TYPE.
Note
Note that the csv_decode tool can decode the name of the value in the NETWOR_ERROR field but it does so only if the
NETWORK_ERROR field is configured after the B_NETWORK_TYPE field in the sdr_conf.streams[CSV_SM].fields
table. Otherwise, only a numeric error value is provided.
Note
The error range 0x400 - 0x4FF is reserved for vendor-specific errors.
2.7.35 LAI
2.7.36 PARENT_MSG_STATUS
This field determines the status of a parent message at a particular service point.
2.7.37 MAP_OPER_ORIGIN
2.7.38 HLR_MODIF_REQ
2.7.39 REQ_SUBS_INFO
2.7.40 BASE_ERROR
2.7.41 ICID
IMS charging identifier from MAPv3 extension, see 3GPP Technical Specification 32.260.
2.7.42 UCID
Untranslated Cell-ID from MAPv3 extension, see 3GPP Technical Specification 25.401.
2.7.43 LRN
Location Routing Number. Typically obtained from an ENUM response as a part of Routing Number.
2.7.44 SMPP_COMMAND_ID
2.7.46 SMPP_COMMAND_STATUS
This field determines the success or failure of a SMPP request. It is relevant only in the SMPP response messages and for SMPP
request messages is empty. Field value represents the SMPP network error codes, MCO known codes are listed in Table 2.35.
2.7.47 OPER_ORIGIN
The AVRO_SM (AVRO_MAP , AVRO_SIP , AVRO_SMPP ) stream type is used for integration of MCO with Mavenir Analytics. Records
are sent directly to Analytics Kafka instead of storing them in CSV formated files. All fields available in the CSV_SM (CSV_MAP ,
CSV_SIP , AVRO_SMPP ) stream are also available in this stream type including formats and masks.
Key differences between native CSV and AVRO streams:
• The LOG_TIME field is not enforced but is currently mandatory to create a record timestamp in the Analytics database.
• Only format DATE(MSEC) can be used with T-STAMP fields.
• Records are encoded in the Avro format. There are restrictions for modification of AVRO streams. Forward and backward
compatibility of Avro schemes should be maintained. Only backward compatibility is enforced. Note that history records will not
be readable from a Kafka topic, if the currently registered Avro scheme is not backward compatible with the older records.
This chapter describes legacy SDR streams provided by MCO R3.0 for integration with legacy billing and statistical systems.
This section describes legacy MCO R2.3 CSV billing files. The CSV SM stream type is available as CSV_SM_23 stream type and
CSV MAP stream type is available as CSV_MAP_23 stream type.
The CSV_MAP_23 SDR stream (Section 3.1.2) can be used for recording received MO-FW-SM, MT-FW-SM and SRI-SM MAP
operations. These are mapped to the following service points:
• MAP Operation service point
• Incoming SRI-SM-IND service point
• Incoming SRI-SM-CNF service point
The CSV_SM_23 SDR stream (Section 3.1.3) can be used for recording (normalised/agnostic) short messages regardless of an
originating and/or terminating interface. It is mapped on the following service points:
• Incoming service point
• Incoming Complete service point
• Routing service point
• Outgoing service point
• Outgoing Complete service point
• Final service point
Warning
A short message received from PLMN (received as an MO-FW-SM or MT-FW-SM MAP operation) and logged into the
MAP SDR stream contains decoded information up to (including) the MAP layer. Information encoded in the SMS layer
is written undecoded into the stream while the same message logged into the SM SDR stream contains also a decoded
SMS layer.
Each SDR parameter can be of one of the following types only; see Table 3.1.
The MAP SDR stream is used for logging GSM MAP operations. A generated MAP SDR can contain fields listed in Table 3.2.
Important
The table lists all available attributes in a random order. The first column (#) denotes an attribute’s position in the table.
Whether a particular field appears in a produced SDR and on which position can be configured using the name the attribute
in the second column.
Max
# Name Type Description
length
Possible values: PRE_SUBMIT,
POST_SUBMIT, PRE_DELIVERY,
1 SDR_RECORD_TYPE STRING 13
POST_DELIVERY, SRI_REQ,
SRI_RESP
2 SDR_FORMAT STRING 3 “MAP”
Unix timestamp (seconds passed since
3 SDR_LOG_TIME UINT32 14
(UTC) Jan 1 1970)
OCTET-
4 MESSAGE_ID 16 Unique identifier of a message
STRING[16]
Identifies the originating network type,
5 SDR_NETWORK_TYPE UINT8 1
see Table 3.17.
ISDN- Type of number of MSISDN related to
6 SRISM_MSISDN_RECIP_TON 1
ADDR.TON SRI-SM of the recipient, see Table 3.16.
Numbering plan indicator of MSISDN
7 SRISM_MSISDN_RECIP_NPI ISDN-ADDR.NPI 2 related to SRI-SM of the recipient, see
Table 3.16.
MSISDN related to SRI-SM of the
8 SRISM_MSISDN_ RECIP_ADDRESS UTF-STRING 512
recipient, see Table 3.16.
9 SRISM_IMSI_RECIP STRING[16] 16 IMSI related to SRI-SM of the recipient
Type of number of an MSC address
SRISM_NETW_NODE_ ISDN-
10 1 related to SRI-SM of the recipient, see
ADDR_RECIP_TON ADDR.TON
Table 3.16
Numbering plan indicator of an MSC
SRISM_NETW_NODE_
11 ISDN-ADDR.NPI 2 address related to SRI-SM of the
ADDR_RECIP_NPI
recipient, see Table 3.16.
SRISM_NETW_NODE_ MSC address related to SRI-SM of the
12 UTF-STRING 512
ADDR_RECIP_ADDRESS recipient, see Table 3.16.
Type of number of an SGSN address
SRISM_SGSN_NODE_ ISDN-
13 1 related to SRI-SM of the recipient, see
ADDR_RECIP_TON ADDR.TON
Table 3.16.
Numbering plan indicator of an SGSN
SRISM_SGSN_NODE_
14 ISDN-ADDR.NPI 2 address related to SRI-SM of the
ADDR_RECIP_NPI
recipient, see Table 3.16.
SRISM_SGSN_NODE_ SGSN address related to SRI-SM of the
15 UTF-STRING 512
ADDR_RECIP_ADDRESS recipient, see Table 3.16.
Max
# Name Type Description
length
ISDN- Type of number of an SMSC address in
16 SRISM_SC_ADDR_TON 1
ADDR.TON SRI-SM, see Table 3.16.
Numbering plan indicator of an SMSC
17 SRISM_SC_ADDR_NPI ISDN-ADDR.NPI 2
address in SRI-SM, see Table 3.16.
SMSC address in SRI-SM, see
18 SRISM_SC_ADDR_ADDRESS UTF-STRING 512
Table 3.16.
ISDN- Type of number of MSISDN related to
19 SRISM_MSISDN_ORIG_TON 1
ADDR.TON SRI-SM of the originator, see Table 3.16.
Numbering plan indicator of MSISDN
20 SRISM_MSISDN_ORIG_NPI ISDN-ADDR.NPI 2 related to SRI-SM of the originator, see
Table 3.16.
MSISDN related to SRI-SM of the
21 SRISM_MSISDN_ORIG_ADDRESS UTF-STRING 512
originator, see Table 3.16.
22 SRISM_IMSI_ORIG STRING[16] 16 IMSI related to SRI-SM of the originator
Type of number of an MSC address
SRISM_NETW_NODE_ ISDN-
23 1 related to SRI-SM of the originator, see
ADDR_ORIG_TON ADDR.TON
Table 3.16.
Numbering plan indicator of an MSC
SRISM_NETW_NODE_
24 ISDN-ADDR.NPI 2 address related to SRI-SM of the
ADDR_ORIG_NPI
originator, see Table 3.16
SRISM_NETW_NODE_ MSC address related to SRI-SM of the
25 UTF-STRING 512
ADDR_ORIG_ADDRESS originator, see Table 3.16.
Type of number of an SGSN address
SRISM_SGSN_NODE_ ISDN-
26 1 related to SRI-SM of the originator, see
ADDR_ORIG_TON ADDR.TON
Table 3.16.
Numbering plan indicator of an SGSN
SRISM_SGSN_NODE_
27 ISDN-ADDR.NPI 2 address related to SRI-SM of the
ADDR_ORIG_NPI
originator, see Table 3.16.
SRISM_SGSN_NODE_ SGSN address related to SRI-SM of the
28 UTF-STRING 512
ADDR_ORIG_ADDRESS originator, see Table 3.16.
ISDN- Type of number of the SM RP OA field in
29 MO_MSISDN_TON 1
ADDR.TON MAP-MO-FWSM, see Table 3.16.
Numbering plan indicator of SM RP OA in
30 MO_MSISDN_NPI ISDN-ADDR.NPI 2
MAP-MO-FWSM, see Table 3.16.
SM RP OA in MAP-MO-FWSM, see
31 MO_MSISDN_ADDRESS UTF-STRING 512
Table 3.16.
IMSI received in MAP-MO-FWSM or
IMSI returned by HLR as a result of the
32 MO_IMSI STRING[16] 16
originator validation. The latter takes
precedence if both values are available.
ISDN- Type of number of the SM RP DA field in
33 MO_SC_ADDR_TON 1
ADDR.TON MAP-MO-FWSM, see Table 3.16.
Numbering plan indicator of SM RP DA in
34 MO_SC_ADDR_NPI ISDN-ADDR.NPI 2
MAP-MO-FWSMs, see Table 3.16.
SM RP DA in MAP-MO-FWSM, see
35 MO_SC_ADDR_ADDRESS UTF-STRING 512
Table 3.16.
ISDN- Type of number of SM RP OA in
36 MT_SC_ADDR_TON 1
ADDR.TON MAP-MT-FWSM, see Table 3.16.
Max
# Name Type Description
length
Numbering plan indicator of SM RP OA in
37 MT_SC_ADDR_NPI ISDN-ADDR.NPI 2
MAP-MT-FWSM, see Table 3.16.
SM RP OA in MAP-MT-FWSM, see
38 MT_SC_ADDR_ADDRESS UTF-STRING 512
Table 3.16.
39 MT_IMSI STRING[1..16] 16 SM RP DA in MAP-MT-FWSM
OCTET- The SM RP UI field in MAP-MO-FWSM
40 MAP_DATA_LOAD 255
STRING[1..255] or MAP-MT-FWSM
41 GSM_TPDU_MTI UINT8 3 GSM TP-MTI
42 GSM_TPDU_MMS BOOLEAN 1 GSM TP-MMS
43 GSM_TPDU_LP BOOLEAN 1 GSM TP-LP
44 GSM_TPDU_RP BOOLEAN 1 GSM TP-RP
45 GSM_TPDU_UDHI BOOLEAN 1 GSM TP-UDHI
46 GSM_TPDU_SRI BOOLEAN 1 GSM TP-SRI
OCTET-STRING
47 GSM_TPDU_OA 12 GSM TP-OA
[2..12]
48 GSM_TPDU_PID UINT8 3 GSM TP-PID
49 GSM_TPDU_DCS UINT8 3 GSM TP-DCS
OCTET-STRING
50 GSM_TPDU_SCTS 7 GSM TP-SCTS
[7]
51 GSM_TPDU_UDL UINT8 3 GSM TP-UDL
OCTET-STRING
52 GSM_TPDU_UD 160 GSM TP-UD
[0..160]
53 GSM_TPDU_FCS UINT8 3 GSM TP-FCS
54 GSM_TPDU_PI UINT8 3 GSM TP-PI
55 GSM_TPDU_RD BOOLEAN 1 GSM TP-RD
56 GSM_TPDU_VPF UINT8 3 GSM TP-VPF
57 GSM_TPDU_SRR BOOLEAN 1 GSM TP-SRR
58 GSM_TPDU_MR UINT8 3 GSM TP-MR
OCTET-STRING
59 GSM_TPDU_DA 12 GSM TP-DA
[2..12]
OCTET-STRING
60 GSM_TPDU_VP 7 GSM TP-VP
[1..7]
61 GSM_TPDU_SRQ BOOLEAN 1 GSM TP-SRQ
OCTET-STRING
62 GSM_TPDU_RA 12 GSM TP-RA
[2..12]
OCTET-STRING
63 GSM_TPDU_DT 7 GSM TP-DT
[7]
64 GSM_TPDU_ST UINT8 3 GSM TP-ST
65 GSM_TPDU_CT UINT8 3 GSM TP-CT
66 GSM_TPDU_MN UINT8 3 GSM TP-MN
67 GSM_TPDU_CDL UINT8 3 GSM TP-CDL
68 GSM_TPDU_CD UINT8 3 GSM TP-CD
OCTET- SM RP UI in an SM response. This field
69 MAP_RESPONSE_DATA_LOAD 255
STRING[1..255] is conditional with gsmRespTpdu.
70 GSM_RESP_TPDU_MTI UINT8 3 GSM_RESP_TPDU_MTI
71 GSM_RESP_TPDU_MMS BOOLEAN 1 GSM_RESP_TPDU_MMS
72 GSM_RESP_TPDU_LP BOOLEAN 1 GSM_RESP_TPDU_LP
Max
# Name Type Description
length
73 GSM_RESP_TPDU_RP BOOLEAN 1 GSM_RESP_TPDU_RP
74 GSM_RESP_TPDU_UDHI BOOLEAN 1 GSM_RESP_TPDU_UDHI
75 GSM_RESP_TPDU_SRI BOOLEAN 1 GSM_RESP_TPDU_SRI
OCTET-STRING
76 GSM_RESP_TPDU_OA 12 GSM_RESP_TPDU_OA
[2..12]
77 GSM_RESP_TPDU_PID UINT8 3 GSM_RESP_TPDU_PID
78 GSM_RESP_TPDU_DCS UINT8 3 GSM_RESP_TPDU_DCS
OCTET-STRING
79 GSM_RESP_TPDU_SCTS 7 GSM_RESP_TPDU_SCTS
[7]
80 GSM_RESP_TPDU_UDL UINT8 3 GSM_RESP_TPDU_UDL
OCTET-STRING
81 GSM_RESP_TPDU_UD 160 GSM_RESP_TPDU_UD
[0..160]
82 GSM_RESP_TPDU_FCS UINT8 3 GSM_RESP_TPDU_FCS
83 GSM_RESP_TPDU_PI UINT8 3 GSM_RESP_TPDU_PI
84 GSM_RESP_TPDU_RD BOOLEAN 1 GSM_RESP_TPDU_RD
85 GSM_RESP_TPDU_VPF UINT8 3 GSM_RESP_TPDU_VPF
86 GSM_RESP_TPDU_SRR BOOLEAN 1 GSM_RESP_TPDU_SRR
87 GSM_RESP_TPDU_MR UINT8 3 GSM_RESP_TPDU_MR
OCTET-STRING
88 GSM_RESP_TPDU_DA 12 GSM_RESP_TPDU_DA
[2..12]
OCTET-STRING
89 GSM_RESP_TPDU_VP 7 GSM_RESP_TPDU_VP
[1..7]
90 GSM_RESP_TPDU_SRQ BOOLEAN 1 GSM_RESP_TPDU_SRQ
OCTET-STRING
91 GSM_RESP_TPDU_RA 12 GSM_RESP_TPDU_RA
[2..12]
OCTET-STRING
92 GSM_RESP_TPDU_DT 7 GSM_RESP_TPDU_DT
[7]
93 GSM_RESP_TPDU_ST UINT8 3 GSM_RESP_TPDU_ST
94 GSM_RESP_TPDU_CT UINT8 3 GSM_RESP_TPDU_CT
95 GSM_RESP_TPDU_MN UINT8 3 GSM_RESP_TPDU_MN
96 GSM_RESP_TPDU_CDL UINT8 3 GSM_RESP_TPDU_CDL
97 GSM_RESP_TPDU_CD UINT8 3 GSM_RESP_TPDU_CD
More Messages to Send in
98 MAP_MMS BOOLEAN 1
MAP-MO-FWSM
Routing indicator of an SCCP destination
address. In case of a concatenated
99 SCCP_DEST_ADDR_RI SCCP-ADDR.RI 1 message, the value of the last segment
attempted to be delivered is provided,
see Table 3.16.
SSN of an SCCP destination address. In
SCCP- case of a concatenated message, the
100 SCCP_DEST_ADDR_SSN 3
ADDR.SSN value of the last segment attempted to be
delivered is provided, see Table 3.16.
PC of an SCCP destination address. In
case of a concatenated message, the
101 SCCP_DEST_ADDR_PC SCCP-ADDR.PC 10
value of the last segment attempted to be
delivered is provided, see Table 3.16.
Max
# Name Type Description
length
Nature of an address indicator (NAI) of
GT of an SCCP destination address. In
SCCP-
102 SCCP_DEST_ADDR_GT_NAI 1 case of concatenated message, the
ADDR.GT_NAI
value of last segment that was attempted
to be deliver is provided, see Table 3.16.
Numbering plan indicator of GT of an
SCCP destination address. In case of a
SCCP-
103 SCCP_DEST_ADDR_GT_NPI 2 concatenated message, the value of the
ADDR.GT_NPI
last segment attempted to be delivered is
provided, see Table 3.16.
GT of an SCCP destination address. In
SCCP- case of a concatenated message, the
104 SCCP_DEST_ADDR_GT_ADDR 20
ADDR.GT_ADDR value of the last segment attempted to be
delivered is provided, see Table 3.16.
Translation type of GT of an SCCP
destination address. In case of a
SCCP-
105 SCCP_DEST_ADDR_TT 3 concatenated message, the value of the
ADDR.GT_TT
last segment attempted to be delivered is
provided, see Table 3.16.
Routing indicator of an SCCP originating
106 SCCP_ORIG_ADDR_RI SCCP-ADDR.RI 1
address, see Table 3.16.
SCCP- SSN of an SCCP originating address,
107 SCCP_ORIG_ADDR_SSN 3
ADDR.SSN see Table 3.16.
PC of an SCCP originating address, see
108 SCCP_ORIG_ADDR_PC SCCP-ADDR.PC 10
Table 3.16.
Nature of an address indicator of GT of
SCCP-
109 SCCP_ORIG_ADDR_GT_NAI 1 an SCCP originating address, see
ADDR.GT_NAI
Table 3.16.
Numbering plan indicator of GT of an
SCCP-
110 SCCP_ORIG_ADDR_GT_NPI 2 SCCP originating address, see
ADDR.GT_NPI
Table 3.16.
SCCP- GT of an SCCP originating address, see
111 SCCP_ORIG_ADDR_GT_ADDR 20
ADDR.GT_ADDR Table 3.16.
SCCP- Translation type of GT of an SCCP
112 SCCP_ORIG_ADDR_TT 3
ADDR.GT_TT originating address, see Table 3.16.
113 NETWORK_PROFILE_ID UINT8 3 Specific routing profile
ISDN- Type of number of MSISDN-Alert in
114 ALERT_MSISDN_TON 1
ADDR.TON MAP-ALERT-SC, see Table 3.16.
Numbering plan indicator of
115 ALERT_MSISDN_NPI ISDN-ADDR.NPI 2 MSISDN-Alert in MAP-ALERT-SC, see
Table 3.16.
MSISDN-Alert in MAP-ALERT-SC, see
116 ALERT_MSISDN_ADDRESS UTF-STRING 512
Table 3.16.
ISDN- Type of number of an SC address in
117 ALERT_SC_ADDR_TON 1
ADDR.TON MAP-ALERT-SC, see Table 3.16.
Numbering plan indicator of an SC
118 ALERT_SC_ADDR_NPI ISDN-ADDR.NPI 2 address in MAP-ALERT-SC, see
Table 3.16.
SC address in MAP-ALERT-SC, see
119 ALERT_SC_ADDR_ADDRESS UTF-STRING 512
Table 3.16.
Max
# Name Type Description
length
Error code of a MAP operation described
120 MAP_ERROR_CODE UINT16 5
in Table 3.4.
Additional failure information described in
121 MAP_CAUSE_OF_FAILURE UINT16 5
Table 3.5.
Parameter indicating whether or not a
short message transfer should be
122 MT_PRIORITY_REQUEST UINT8 3 stopped if the originator SC address is
already contained in MWD (GSM
RP-PRI).
Parameter indicating whether TPDU is
123 MT_MSG_TYPE_INDICATOR UINT8 3 SMS Deliver or SMS Status Report
(GSM RP-MTI).
Bit field consisting of 64 bits written in the
124 RBDL_FLAGS_HEX STRING[0..16] 16
hexadecimal string format.
Parameter indicating whether a message
125 TCAP_SEGMENTED BOOLEAN 1
is segmented on TCAP.
It counts the number of requests for a
current incoming (pre-submission) or
126 SM_NUM_OF_ATTEMPTS UINT32 10
outgoing (pre-delivery) trigger for a
message.
Name of a matched keyword list, if the
message text matches any. The length of
127 MATCHED_LIST STRING -
the string depends on configuration
(deprecated).
Recommended-Decision as returned by
an external ADMI application in a
128 REC_DECISION_OUT UINT8 1
notification answer: 0 - Proceed, 1 -
Reject, 2 - Complete, 3 - Drop, 4 - Detect.
Bit field consisting of 64 bits, for detailed
129 INFORMATION_FLAGS UINT64 20
description see Table 3.13.
Bit field consisting of 64 bits, for detailed
130 INFORMATION_FLAGS_EXT_1 UINT64 20 description see Table 3.14. This field
extends INFORMATION_FLAGS.
Reason for blocking a message, see
131 MSG_REJECT_REASON UINT64 20
Table 3.15.
Method used for blocking a message: 1 -
132 MSG_REJECT_METHOD UINT8 3
Reject, 2 - Drop, 3 - Discard.
MAP error code received in a response
133 SRISM_HLR_ERROR_CODE_ORIG UINT32 10 to an SRI-SM query about an originating
MSISDN number.
MAP error code received in a response
134 SRISM_HLR_ERROR_CODE UINT32 10 to an SRI-SM query about a recipient
MSISDN number.
Originator IMSI as received in
135 MAP_MO_IMSI STRING[16] 16
MAP-MO-FWSM
Routing indicator of an originating HLR
136 SCCP_ORIG_HLR_ADDR_RI SCCP-ADDR.RI 1
SCCP address, see Table 3.16.
SCCP- SSN of an originating HLR SCCP
137 SCCP_ORIG_HLR_ADDR_SSN 3
ADDR.SSN address, see Table 3.16.
Max
# Name Type Description
length
PC of an originating HLR SCCP address,
138 SCCP_ORIG_HLR_ADDR_PC SCCP-ADDR.PC 10
see Table 3.16.
Nature of an address indicator of GT of
SCCP-
139 SCCP_ORIG_HLR_ADDR_GT_NAI 1 an originating HLR SCCP address, see
ADDR.GT_NAI
Table 3.16.
Numbering plan indicator of GT of an
SCCP-
140 SCCP_ORIG_HLR_ADDR_GT_NPI 2 originating HLR SCCP address, see
ADDR.GT_NPI
Table 3.16.
SCCP- GT of an originating HLR SCCP address,
141 SCCP_ORIG_HLR_ADDR_GT_ADDR 20
ADDR.GT_ADDR see Table 3.16.
SCCP- Translation type of GT of an originating
142 SCCP_ORIG_HLR_ADDR_TT 3
ADDR.GT_TT HLR SCCP address, see Table 3.16.
Type of number of an originating SC
ISDN-
143 A_SC_ADDRESS_TON 1 address as received in an incoming
ADDR.TON
message, see Table 3.16.
Numbering plan indicator of an
144 A_SC_ADDRESS_NPI ISDN-ADDR.NPI 2 originating SC address as received in an
incoming message, see Table 3.16.
Address of an originating SC address as
145 A_SC_ADDRESS_ADDRESS UTF-STRING 512 received in an incoming message, see
Table 3.16.
Routing indicator of an SCCP responding
address. In case of a concatenated
146 SCCP_RESPONDING_ADDR_RI SCCP-ADDR.RI 1 message, the value of the last segment
attempted to be delivered is provided,
see Table 3.16.
SSN of an SCCP responding address. In
SCCP- case of a concatenated message, the
147 SCCP_RESPONDING_ADDR_SSN 3
ADDR.SSN value of the last segment attempted to be
delivered is provided, see Table 3.16.
PC of an SCCP responding address. In
case of a concatenated message, the
148 SCCP_RESPONDING_ADDR_PC SCCP-ADDR.PC 10
value of the last segment attempted to be
delivered is provided, see Table 3.16.
Nature of an address indicator (NAI) of
GT of an SCCP responding address. In
SCCP-
149 SCCP_RESPONDING_ADDR_GT_NAI 1 case of concatenated message, the
ADDR.GT_NAI
value of last segment that was attempted
to be deliver is provided, see Table 3.16.
Numbering plan indicator of GT of an
SCCP responding address. In case of a
SCCP-
150 SCCP_RESPONDING_ADDR_GT_NPI 2 concatenated message, the value of the
ADDR.GT_NPI
last segment attempted to be delivered is
provided, see Table 3.16.
GT of an SCCP responding address. In
SCCP- case of a concatenated message, the
151 SCCP_RESPONDING_ADDR_GT_ADDR 20
ADDR.GT_ADDR value of the last segment attempted to be
delivered is provided, see Table 3.16.
Max
# Name Type Description
length
Translation type of GT of an SCCP
responding address. In case of a
SCCP-
152 SCCP_RESPONDING_ADDR_TT 3 concatenated message, the value of the
ADDR.GT_TT
last segment attempted to be delivered is
provided, see Table 3.16.
Originator Location Area Identification,
153 A_LAI STRING[1..12] 12
see Section 2.7.35.
Inbound/outbound operation indicator,
154 MAP_OPER_ORIGIN UINT8 2
see Section 2.7.37.
HLR modification request in the ATM
155 HLR_MODIF_REQ UINT8 2
operation, see Section 2.7.38.
156 ODB UINT32 9 Operator determined barring data.
List of call barring features, see
157 CALL_BARRING_FEATURES UTF-STRING 512
Section 2.7.33.
Requested subscription information, see
158 REQ_SUBS_INFO STRING[1..8] 8
Section 2.7.39.
159 A_IMEI STRING[1..16] 16 ATI IMEI.
Produces an empty field in the record.
Can be used for omitting some
160 EMPTY_FIELD N/A N/A
information/field from SDR but preserving
the order/position of the rest of attributes.
The SM SDR stream is used for logging short messages. A generated SM SDR can contain fields listed in Table 3.3.
Important
The table lists all available attributes in a random order. The first column (#) denotes the order of an attribute in the table.
Whether a particular field appears in a produced SDR and on which position can be configured using the name of the
attribute in the second column.
Max
# Name Type Description
length
Possible values: PRE_SUBMIT,
POST_SUBMIT, PRE_DELIVERY,
1 SDR_RECORD_TYPE STRING 13 POST_DELIVERY, SM_NOTIFY,
SESS_REQ, SESS_START,
SESS_CHNG, SESS_TERM, EVENT
2 SDR_FORMAT STRING 2 “SM”
Unix timestamp (seconds passed since
3 SDR_LOG_TIME UINT32 14 (UTC) Jan 1 1970) – the time of record
creation.
Max
# Name Type Description
length
OCTET-
4 MESSAGE_ID 16 Unique identifier of a message.
STRING[16]
This field carries the source network
5 ORIG_NETWORK_TYPE UINT8 1
type, see Table 3.17.
ISDN- Type of number of a source normalised
6 ORIG_ADDRESS_TON 1
ADDR.TON address, see Table 3.16.
Numbering plan indicator of a source
7 ORIG_ADDRESS_NPI ISDN-ADDR.NPI 2
normalised address, see Table 3.16.
Source normalised address, see
8 ORIG_ADDRESS_ADDRESS UTF-STRING 512
Table 3.16.
IMSI received in MAP-MO-FWSM or
IMSI returned by HLR as a result of an
9 MO_IMSI STRING[1..16] 16
originator validation. The latter takes
precedence if both values are available.
Routing indicator of a source SCCP
10 SCCP_ORIG_ADDR_RI SCCP-ADDR.RI 1
address, see Table 3.16.
SCCP- SSN of a source SCCP address, see
11 SCCP_ORIG_ADDR_SSN 3
ADDR.SSN Table 3.16.
PC of a source SCCP address, see
12 SCCP_ORIG_ADDR_PC SCCP-ADDR.PC 10
Table 3.16.
SCCP- Nature of an address indicator of GT of a
13 SCCP_ORIG_ADDR_GT_NAI 1
ADDR.GT_NAI source SCCP address, see Table 3.16.
SCCP- Numbering plan indicator of GT of a
14 SCCP_ORIG_ADDR_GT_NPI 2
ADDR.GT_NPI source SCCP address, see Table 3.16.
SCCP- GT of a source SCCP address, see
15 SCCP_ORIG_ADDR_GT_ADDR 20
ADDR.GT_ADDR Table 3.16.
SCCP- Translation type of GT of a source SCCP
16 SCCP_ORIG_ADDR_TT 3
ADDR.GT_TT address, see Table 3.16.
17 ORIG_COS UINT32 10 Class of Service of the originator.
This field carries identification of a source
18 ORIG_APPL_ID STRING [1..32] 32
application or interface.
Type of number of a destination
ISDN- normalised address; when it is included
19 RECIP_ADDRESS_TON 1
ADDR.TON in a response, it has been changed by a
triggered component. See Table 3.16.
Numbering plan indicator of a destination
20 RECIP_ADDRESS_NPI ISDN-ADDR.NPI 2
normalised address, see Table 3.16.
Destination normalised address, see
21 RECIP_ADDRESS_ADDRESS UTF-STRING 512
Table 3.16.
This field carries identification of a
22 RECIP_APPL_ID STRING [1..32] 32
destination application or interface.
This field carries a recipient IMSI
23 MT_IMSI STRING[1..16] 16
address.
Routing indicator of a destination SCCP
24 SCCP_DEST_ADDR_RI SCCP-ADDR.RI 1
address, see Table 3.16.
SCCP- SSN of a destination SCCP address, see
25 SCCP_DEST_ADDR_SSN 3
ADDR.SSN Table 3.16.
PC of a destination SCCP address, see
26 SCCP_DEST_ADDR_PC SCCP-ADDR.PC 10
Table 3.16.
Max
# Name Type Description
length
Nature of an address indicator of a
SCCP-
27 SCCP_DEST_ADDR_GT_NAI 1 destination SCCP address, see
ADDR.GT_NAI
Table 3.16.
Numbering plan indicator of GT of a
SCCP-
28 SCCP_DEST_ADDR_GT_NPI 2 destination SCCP address, see
ADDR.GT_NPI
Table 3.16.
SCCP- GT of a destination SCCP address, see
29 SCCP_DEST_ADDR_GT_ADDR 20
ADDR.GT_ADDR Table 3.16.
SCCP- Translation type of GT of a destination
30 SCCP_DEST_ADDR_TT 3
ADDR.GT_TT SCCP address, see Table 3.16.
31 RECIP_COS UINT32 10 Class of Service of the recipient.
Store and Forward, Transactional or
Single Shot mode; when it is included in
32 MESSAGE_MODE UINT8 2 a response, it has been changed by a
triggered component. For additional
information refer to Table 3.6.
Unix timestamp (seconds passed since
33 MSG_ORIG_SUBM_TIME UINT64 14 (UTC) Jan 1 1970) - the original
submission time.
Unix timestamp (seconds passed since
(UTC) Jan 1 1970) - the expiration time;
34 MSG_EXP_TIME UINT64 14
when it is included in a response, it was
changed by a triggered component.
Unix timestamp (seconds passed since
(UTC) Jan 1 1970) - the preferred
35 MSG_PREF_DELIVERY_TIME UINT64 14 delivery time of a message; when it is
included in a response, it has been
changed by a triggered component.
Unix timestamp (seconds passed since
36 MSG_LAST_DELIVERY_TIME UINT64 14 (UTC) Jan 1 1970) - the time of the last
delivery attempt.
Message ID of a related (parent)
OCTET-
37 PARENT_MSG_ID 16 message, e.g. for a notification or an SM
STRING[1..16]
copy.
SM, delivery receipt, intermediate
38 MSG_TYPE UINT8 1 delivery notification described in
Table 3.7.
CONCAT- Number of segments in a concatenated
39 CONCAT_INFO_MAX_SEGMENTS 3
INFO.MAXSEG message, see Table 3.16.
Sequence number of the current
CONCAT-
40 CONCAT_INFO_CURRENT_SEGMENT 3 segment of a concatenated message,
INFO.CURSEG
see Table 3.16.
CONCAT- Concatenated message reference
41 CONCAT_INFO_REFERENCE 5
INFO.REF number, see Table 3.16.
Message encoding, i.e. the encoding of
PAYLOAD-
42 PAYLOAD_INFO_ENCODING 3 content of the MSG_PAYLOAD billing field.
INFO.ENC
See Table 3.8 and Table 3.16.
PAYLOAD-
43 PAYLOAD_INFO_SIZE 5 Size in bytes, see Table 3.16.
INFO.SIZE
Max
# Name Type Description
length
PAYLOAD-
44 PAYLOAD_INFO_NUM_CHARS 5 Number of characters, see Table 3.16.
INFO.NUMCH
PAYLOAD- National language single shift table, see
45 PAYLOAD_INFO_SINGLE_SHIFT_TAB 3
INFO.SSTAB Table 3.9 and Table 3.16.
PAYLOAD- National language locking shift table, see
46 PAYLOAD_INFO_LOCKING_SHIFT_TAB 3
INFO.LSTAB Table 3.10 and Table 3.16.
Message payload without UDH. The
encoding of the MSG_PAYLOAD billing
field is specified by the
OCTET-
47 MSG_PAYLOAD 4096 PAYLOAD_INFO_ENCODING billing field.
STRING[1..4096]
When the MSG_PAYLOAD billing field is
included in a response, it has been
changed by a triggered component.
Message text with removed UDH
OCTET-STRING converted to UTF8; when it is included in
48 SDR_MSG_TEXT_UTF8 4096
[1..4096] a response, it has been changed by a
triggered component.
This field specifies priority of an SM; an
49 MSG_PRIORITY UINT8 3 SM with a higher priority should be
delivered before SMs with lower priorities.
This field specifies subscriptions for a
delivery receipt: Without intermediate
notification: 0 - No delivery receipt, 1 -
Delivery receipt requested, 2 - Delivery
receipt requested in case of failure. 4 -
50 MSG_NOTIF_REQUIRED UINT16 5 Delivery requested in case of success
only. With intermediate notification: 16 -
No delivery receipt, 17 - Delivery receipt
requested, 18 - Delivery receipt
requested in case of failure. 20 - Delivery
receipt requested in case of success.
51 MSG_PROTOCOL_ID UINT8 3 TP-PID – see [3GPP_23.040]
This field specifies the error code carried
52 MSG_ERROR_CODE UINT16 5
with a message, see Table 3.11.
This field contains a value of field
TP-DCS as defined in [3GPP_23.040].
When a message is AO, this field
53 GSM_DATA_CODING_SCHEME UINT8 3
contains a value of field data_coding
as defined in SMPP protocol
specification.
OCTET-
54 GSM_UDH 160 UDH of a message.
STRING[1..160]
Detailed cause of a failure of a related
55 MAP_CAUSE_OF_FAILURE UINT16 5
MAP operation, see Table 3.5.
Bit field consisting of 64 bits written in the
56 RBDL_FLAGS_HEX STRING[0..16] 16
hex string format.
Parameter indicating whether a message
57 TCAP_SEGMENTED BOOLEAN 1
is segmented on TCAP.
ISDN- Type of number of a source untranslated
58 ORIG_UNTRANSL_ADDRESS_TON 1
ADDR.TON address, see Table 3.16.
Max
# Name Type Description
length
Numbering plan indicator of a source
59 ORIG_UNTRANSL_ADDRESS_NPI ISDN-ADDR.NPI 2
untranslated address, see Table 3.16.
Source untranslated address, see
60 ORIG_UNTRANSL_ADDRESS_ADDRESS UTF-STRING 512
Table 3.16.
ISDN- Type of number of an untranslated
61 RECIP_UNTRANSL_ADDRESS_TON 1
ADDR.TON destination address, see Table 3.16.
Numbering plan indicator of an
62 RECIP_UNTRANSL_ADDRESS_NPI ISDN-ADDR.NPI 2 untranslated destination address, see
Table 3.16.
Untranslated destination address, see
63 RECIP_UNTRANSL_ADDRESS_ADDRESSUTF-STRING 512
Table 3.16.
Type of number of the destination SC
ISDN-
64 MO_SC_ADDR_TON 1 address in case of an MO message, see
ADDR.TON
Table 3.16.
Numbering plan indicator of the
65 MO_SC_ADDR_NPI ISDN-ADDR.NPI 2 destination SC address in case of an MO
message, see Table 3.16.
Destination SC address in case of an MO
66 MO_SC_ADDR_ADDRESS UTF-STRING 512
message, see Table 3.16.
Type of number of the destination SC
ISDN-
67 MT_SC_ADDR_TON 1 address in case of an MT message, see
ADDR.TON
Table 3.16.
Numbering plan indicator of the source
68 MT_SC_ADDR_NPI ISDN-ADDR.NPI 2 SC address in case of an MT message,
see Table 3.16.
Source SC address in case of an MT
69 MT_SC_ADDR_ADDRESS UTF-STRING 512
message, see Table 3.16.
70 MAP_MMS BOOLEAN 1 More Messages to Send flag
GSM TP-LOOP-PREVENTION
71 MSG_LOOP_PREVENTION BOOLEAN 1
parameter
72 MSG_REPLY_PATH BOOLEAN 1 GSM TP-REPLY-PATH parameter
GSM TP-REJECT-DUPLICATES
73 MSG_REJECT_DUPLICATES BOOLEAN 1
parameter
TP-SCTS – see [3GPP_23.040]. The
OCTET- time zone is set based on platform
74 MSG_SC_TIMESTAMP 7
STRING[7] settings. Command “date +%Z” shows a
current time zone setting.
TP-MR – see [3GPP_23.040] or SMPP
75 MSG_MESSAGE_REFERENCE UINT16 5 reference number
(user_message_reference field)
OCTET- Transaction ID used by external billing
76 BILLING_TRANSACTION_ID 160
STRING[1..160] entities
OCTET-
77 SMPP_BILLING_ID 20 SMPP billing ID
STRING[1..20]
Status of a message described in
78 MSG_STATUS UINT8 2
Table 3.12.
Type of number of an SC address of the
ISDN-
79 SRISM_NETW_NODE_ADDR_ORIG_TON 1 originator retrieved by SRI-SM, see
ADDR.TON
Table 3.16.
Max
# Name Type Description
length
Numbering plan indicator of an SC
80 SRISM_NETW_NODE_ADDR_ORIG_NPI ISDN-ADDR.NPI 2 address of the originator retrieved by
SRI-SM, see Table 3.16.
SRISM_NETW_NODE_ADDR_ SC address of the originator retrieved by
81 UTF-STRING 512
ORIG_ADDRESS SRI-SM, see Table 3.16.
Type of number of an SGSN address of
ISDN-
82 SRISM_SGSN_NODE_ADDR_ORIG_TON 1 the originator retrieved by SRI-SM, see
ADDR.TON
Table 3.16.
Numbering plan indicator of an SGSN
83 SRISM_SGSN_NODE_ADDR_ORIG_NPI ISDN-ADDR.NPI 2 address of the originator retrieved by
SRI-SM, see Table 3.16.
SRISM_SGSN_NODE_ADDR_ SGSN address of the originator retrieved
84 UTF-STRING 512
ORIG_ADDRESS by SRI-SM, see Table 3.16.
Type of number of an SC address of the
ISDN-
85 SRISM_NETW_NODE_ADDR_RECIP_TON 1 recipient retrieved by SRI-SM, see
ADDR.TON
Table 3.16.
Numbering plan indicator of an SC
86 SRISM_NETW_NODE_ADDR_RECIP_NPI ISDN-ADDR.NPI 2 address of the recipient retrieved by
SRI-SM, see Table 3.16.
SRISM_NETW_NODE_ADDR_ SC address of the recipient retrieved by
87 UTF-STRING 512
RECIP_ADDRESS SRI-SM, see Table 3.16.
Type of number of an SGSN address of
ISDN-
88 SRISM_SGSN_NODE_ADDR_RECIP_TON 1 the recipient retrieved by SRI-SM, see
ADDR.TON
Table 3.16.
Numbering plan indicator of an SGSN
89 SRISM_SGSN_NODE_ADDR_RECIP_NPI ISDN-ADDR.NPI 2 address of the recipient retrieved by
SRI-SM, see Table 3.16.
SRISM_SGSN_NODE_ADDR_ SGSN address of the recipient retrieved
90 UTF-STRING 512
RECIP_ADDRESS by SRI-SM, see Table 3.16.
It counts the number of requests for a
current incoming (pre-submission) or
outgoing (pre-delivery) trigger for a
message. Deprecated - the
91 ATTEMPT_COUNTER UINT32 10 SM_NUM_OF_ATTEMPTS field is used
instead. For backward compatibility the
ATTEMPT_COUNTER field should be
replaced by SM_NUM_OF_ATTEMPTS
in the billing stream.)
Name of the matched keyword list, if the
message text matched any. The length of
92 MATCHED_LIST STRING -
the string depends on configuration.
Deprecated.
DEPRECATED. Recommended Decision
as returned by an external application in
93 REC_DECISION_OUT UINT8 1
Notification-Answer: 0 - Proceed, 1 -
Reject, 2 - Complete, 3 - Drop, 4 - Detect.
Error code of a MAP operation described
94 MAP_ERROR_CODE UINT16 5
in Table 3.4.
Bit field consisting of 64 bits, for detailed
95 INFORMATION_FLAGS UINT64 20
description see Table 3.13.
Max
# Name Type Description
length
Bit field consisting of 64 bits, for detailed
96 INFORMATION_FLAGS_EXT_1 UINT64 20 description see Table 3.14. This field
extends INFORMATION_FLAGS.
Reason for blocking a message, see
97 MSG_REJECT_REASON UINT64 20
Table 3.15.
Method used for blocking a message: 1 -
98 MSG_REJECT_METHOD UINT8 3
Reject 2 - Drop 3 - Discard.
MAP error code received in a response
99 SRISM_HLR_ERROR_CODE_ORIG UINT32 10 to an SRI-SM query about an originating
MSISDN number.
MAP error code received in a response
100 SRISM_HLR_ERROR_CODE UINT32 10 to an SRI-SM query about a recipient
MSISDN number.
Type of number of origAddress, this
ISDN-
101 ORIG_OUT_ADDRESS_TON 1 can be changed by third-party
ADDR.TON
applications, see Table 3.16.
Numbering plan indicator of
102 ORIG_OUT_ADDRESS_NPI ISDN-ADDR.NPI 2 origAddress, this can be changed by
third-party applications, see Table 3.16.
origAddress, this can be changed by
103 ORIG_OUT_ADDRESS_ADDRESS UTF-STRING 512
third-party applications, see Table 3.16.
Type of number of recipAddress
ISDN-
104 RECIP_UNCHANGED_ADDRESS_TON 1 before it is changed by third-party
ADDR.TON
applications, see Table 3.16.
Numbering plan indicator of Type of
number of recipAddress before it is
105 RECIP_UNCHANGED_ADDRESS_NPI ISDN-ADDR.NPI 2
changed by third-party applications, see
Table 3.16.
Type of number of recipAddress
106 RECIP_UNCHANGED_ADDRESS_ADDRESS
UTF-STRING 512 before it is changed by third-party
applications, see Table 3.16.
It indicates the destination network type,
107 DEST_NET_TYPE UINT8 1
see Table 3.17.
It specifies the type of operation: 0x01 –
108 OPER_TYPE UINT8 1
MO, 0x02 – MT.
Number of seconds in UTC for a
message when it reached the done state
(State when a message accepted by the
109 SM_DONE_DATE UINT64 20 MCO for further processing is completed
and removed from the system. The
message can be delivered or
undelivered).
110 SM_NUM_OF_ATTEMPTS UINT16 5 Number of delivery attempts
111 SM_MAPPED_NETWORK_ERROR INT32 10 Internal mapped network error
112 SM_SERVICE_TYPE STRING[0..10] 10 SMPP service type
113 SERVICE_TYPE_ID_OUT UINT16 5 Service type ID, e.g. for AO messages.
Originator IMSI as received in
114 MAP_MO_IMSI STRING[1..16] 16
MAP-MO-FWSM.
Max
# Name Type Description
length
This parameter has value
ORIG_IS_PREPAID if the originator is
prepaid, ORIG_IS_NOT_CHECKED if
115 CHARGING_ORIG_PREPAID STRING 19
the originator was not checked and
ORIG_IS_POSTPAID for postpaid
originators.
This parameter has value
RECIP_IS_PREPAID if the recipient is
prepaid, RECIP_IS_NOT_CHECKED if
116 CHARGING_RECIP_PREPAID STRING 20
the recipient was not checked and
RECIP_IS_POSTPAID for postpaid
recipients.
This parameter has value
CHARGED_PARTY_ORIG if the charged
party is the originator and
117 CHARGING_CHARGED_PARTY STRING 19
CHARGED_PARTY_RECIP if the
charged party is the recipient of the
message.
This parameter is a sequence of
numbers 1 or 0. The count of numbers
corresponds to the number of charging
requests sent for the whole message
flow. Each number identifies whether an
operation was successful (1) or not (0).
118 CHARGING_OPER_RESULT STRING 4 The first number from left is a result of
the first operation. The following is an
example, where the first operation
(DEBIT) was successful and the second
(CREDIT) not.
<separator>"10"<separator>
<separator>"Operation1 ←-
Operation2"<separator>
Fingerprint of the message. It can be
120 AFL_KEY STRING[32] 32
used only in Antiflood SDR records.
Source application port of Application
121 UDH_SRC_PORT UINT16 5
Port Addressing (APA) IE of UDH.
Destination application port of (APA) IE of
122 UDH_DST_PORT UINT16 5
UDH.
A mask indicating the set of UDH profiles
123 UDH_PROFILE_MASK UINT32 10
matching a message.
A mask indicating the set of UDH profiles
124 UDH_PROFILE_MASK_SEG UINT32 10
matching a segment of a message.
Max
# Name Type Description
length
Recommended decision received from
125 ADMI_DECISION UINT8 1 ADMI. 0 = Proceed, 1 = Reject, 2 =
Complete, 3 = Drop, 4 = Detect
Reason for the recommended decision
126 ADMI_DECISION_REASON UINT32 10
from ADMI.
Recommended decision received from
127 CC_DECISION UINT8 1 content control: 0 = Proceed, 1 = Reject,
2 = Complete, 3 = Drop, 4 = Detect
Reason for the recommended decision
128 CC_DECISION_REASON UINT32 10
from content control.
Routing indicator of a source HLR SCCP
129 SCCP_ORIG_HLR_ADDR_RI SCCP-ADDR.RI 1
address, see Table 3.16.
SCCP- SSN of a source HLR SCCP address,
130 SCCP_ORIG_HLR_ADDR_SSN 3
ADDR.SSN see Table 3.16.
PC of a source HLR SCCP address, see
131 SCCP_ORIG_HLR_ADDR_PC SCCP-ADDR.PC 10
Table 3.16.
Nature of an address indicator of GT of a
SCCP-
132 SCCP_ORIG_HLR_ADDR_GT_NAI 1 source HLR SCCP address, see
ADDR.GT_NAI
Table 3.16.
Numbering plan indicator of GT of a
SCCP-
133 SCCP_ORIG_HLR_ADDR_GT_NPI 2 source HLR SCCP address, see
ADDR.GT_NPI
Table 3.16.
SCCP- GT of a source HLR SCCP address, see
134 SCCP_ORIG_HLR_ADDR_GT_ADDR 20
ADDR.GT_ADDR Table 3.16.
SCCP- Translation type of GT of a source HLR
135 SCCP_ORIG_HLR_ADDR_TT 3
ADDR.GT_TT SCCP address, see Table 3.16.
UTF-
136 IM_EVENT_TYPE 64 SIP method
STRING[1..64]
137 SESSION_TYPE UINT8 1 SIP session type
UTF-
138 MSG_CONTENT_TYPE 64 SIP message content type
STRING[1..64]
139 IMDN_TYPE UINT8 1 IMDN type
UTF-
140 USER_SESSION_ID 255 SIP user session ID
STRING[1..255]
UTF-
141 OUTGOING_SESSION_ID 255 SIP outgoing session ID
STRING[1..255]
142 SESSION_IDENTIFIER UTF-STRING[16] 16 SIP session identifier
143 TRAFFIC_CATEGORY UINT8 1 Traffic category
144 SIP_RESPONSE UINT16 2 SIP response
UTF-
145 USER_STATUS 255 SIP user status
STRING[1..255]
146 SDP_PROTOCOLS UINT8 1 SDP protocols
147 SESSION_CHANGE_TYPE UINT8 3 Type of session change
Type of number of a source SC address
ISDN-
148 A_SC_ADDRESS_TON 1 as received in an incoming message, see
ADDR.TON
Table 3.16.
Numbering plan indicator of a source SC
149 A_SC_ADDRESS_NPI ISDN-ADDR.NPI 2 address as received in an incoming
message, see Table 3.16.
Max
# Name Type Description
length
Address of a source SC address as
150 A_SC_ADDRESS_ADDRESS UTF-STRING 512 received in an incoming message, see
Table 3.16.
Domain specific information (message
ID) e.g. for generating correct
151 ORIG_DOMAIN_MSG_ID STRING 65
notifications (IMDN,
SMS-STATUS-REPORT).
152 A_DOMAIN UINT8 1 MVNO id of originating subscriber
153 B_DOMAIN UINT8 1 MVNO id of recipient subscriber
154 S_DOMAIN UINT8 1 Source application MVNO id
155 D_DOMAIN UINT8 1 Destination application MVNO id
64 bit Class of service of originating
156 A_COS UINT64 8
subscriber
64 bit Class of service of recipient
157 B_COS UINT64 8
subscriber
64 bit Class of service of source
158 S_COS UINT64 8
application
64 bit Class of service of destination
159 D_COS UINT64 8
application
Message Template ID(equals to Profile
160 MSG_TEMPLATE_ID UINT16 5
ID of Message Generation AF)
64 bit segment RBDL flags written in the
161 RBDL_FLAGS_SEG_HEX STRING[0..16] 16
hex string format.
Information flags bit field of a segment,
162 INFORMATION_FLAGS_SEG UINT64 8
for detailed description see Table 3.13.
40 Byte customer specific binary data
163 EXT_DATA STRING 40
written in the hex string format.
40 Byte customer specific binary data of
164 EXT_DATA_SEG STRING 40 a segment written in the hex string
format.
Contains sequence of quadruplet which
indicates what profiles were applied for
165 STAT_DATA STRING - the message. Following format is
supported: <feature id>;<profile
id><1,0><1,0>|...
Routing indicator of a responding SCCP
166 SCCP_RESPONDING_ADDR_RI SCCP-ADDR.RI 1
address, see Table 3.16.
SCCP- SSN of a responding SCCP address, see
167 SCCP_RESPONDING_ADDR_SSN 3
ADDR.SSN Table 3.16.
PC of a responding SCCP address, see
168 SCCP_RESPONDING_ADDR_PC SCCP-ADDR.PC 10
Table 3.16.
Nature of an address indicator of GT of a
SCCP-
169 SCCP_RESPONDING_ADDR_GT_NAI 1 responding SCCP address, see
ADDR.GT_NAI
Table 3.16.
Numbering plan indicator of GT of a
SCCP-
170 SCCP_RESPONDING_ADDR_GT_NPI 2 responding SCCP address, see
ADDR.GT_NPI
Table 3.16.
SCCP- GT of a responding SCCP address, see
171 SCCP_RESPONDING_ADDR_GT_ADDR 20
ADDR.GT_ADDR Table 3.16.
Max
# Name Type Description
length
SCCP- Translation type of GT of a responding
172 SCCP_RESPONDING_ADDR_TT 3
ADDR.GT_TT SCCP address, see Table 3.16.
ISDN- Type of number of source (IP/network/uri)
173 S_ADDR_TON 1
ADDR.TON address, see Table 3.16.
Numbering plan indicator of source
174 S_ADDR_NPI ISDN-ADDR.NPI 2
(IP/network/uri) address, see Table 3.16.
Source (IP/network/uri) address, see
175 S_ADDR_ADDR UTF-STRING 512
Table 3.16.
ISDN- Type of number of destination
176 D_ADDR_TON 1
ADDR.TON (IP/network) address, see Table 3.16.
Numbering plan indicator of destination
177 D_ADDR_NPI ISDN-ADDR.NPI 2
(IP/network) address, see Table 3.16.
Destination (IP/network) address, see
178 D_ADDR_ADDR UTF-STRING 512
Table 3.16.
STRING
179 S_CONS STRING Source (LA) consolidation field.
[1..16]
STRING
180 D_CONS STRING Destination (LA) consolidation field.
[1..16]
A list of RBDL rule names of rules
STRING
181 TRACK_DATA STRING applied to the message. Only rules
[1..4096]
marked for SDR tracking are recorded.
182 TELESERVICE UINT16 5 Teleservice identifier (ANSI MAP).
UTF-
183 A_USER_AGENT 255 Originator user agent header field.
STRING[1.255]
UTF-
184 B_USER_AGENT 255 Recipient user agent header field.
STRING[1.255]
Number uniquely identifying
185 A_LASN UINT32 6
originating/source LA.
Number uniquely identifying
186 B_LASN UINT32 6
recipient/destination LA.
187 ADT_PROFILE UINT16 5 Source Address translation profile ID.
Importance of a message. Messages
with a higher importance are queued for
188 IMPORTANCE UINT8 2
delivery before messages with a lower
importance.
ISDN- Type of number of call-back number, see
189 CBN_TON 1
ADDR.TON Table 3.16.
Numbering plan indicator call-back
190 CBN_NPI ISDN-ADDR.NPI 2
number, see Table 3.16.
Call-back number address digits, see
191 CBN_ADDRESS UTF-STRING 512
Table 3.16.
Mobile identification number related to
192 A_MIN STRING[1..10] 10
the originator.
Mobile identification number related to
193 B_MIN STRING[1..10] 10
the recipient.
Electronic serial number related to the
194 B_ESN UINT32 10
recipient.
195 ODB UINT32 10 Operator determined barring data.
Max
# Name Type Description
length
List of call barring features, see
196 CALL_BARRING_FEATURES UTF-STRING 512
Section 2.7.33.
197 IR_PROFILE UINT8 3 Intelligent retry profile ID.
Constructed IMSI address (MT
198 F_IMSI STRING[1..16] 16 correlation ID) used for MT-FW-SM
interception.
199 A_IMEI STRING[1..16] 16 Originator IMEI.
200 B_IMEI STRING[1..16] 16 Recipient IMEI.
Originator Location Area Identification,
201 A_LAI STRING[1..12] 12
see Section 2.7.35.
Base cause of an operation failure, see
202 BASE_ERROR UINT64 8
Section 2.7.40.
Produces an empty field in the record.
Can be used for omitting some
203 EMPTY_FIELD N/A N/A
information/field from SDR but preserving
the order/position of the rest of attributes.
Billing records contain some fields of an enumeration type. The following tables list all these parameters and show all available
values of each field.
Value Meaning
0 UNKNOWN
1 GSM
2 GSM over IP
3 SMPP
4 CDMA
5 IDEN
6 CDMA over IP
7 IMS
8 Generated
9 ADMI
10 RCS_CPM
17 UCP
If a message is sent to MCO from an SMPP ESME connected using the SMPP v3.3 protocol, a short 4-byte message ID is
assigned to the message. However, internally, the message has a 16-byte message ID, which is unique over all nodes within
a cluster. This 16-byte message ID is present in billing files and if the 4-byte one is required, it can be computed as the first 8
characters of the 16-byte message ID.
Example:
If the message ID in billing files is EC2A0B90ABCD007000003A3039300000, the actual 4-byte message ID sent to the
ESME is EC2A0B90.
This section describes legacy Infinity SMSC (ISMSC) billing files. The ISMSC stream type is available as the CSV_ISMSC stream
type.
This stream is intended for recording in the submission phase and once a message is delivered. Use the CREATE_SDR(CSV_IS
MSC) action in the IN_MSG and FINAL_MSG SDR RBDL stages only.
These are fields which value is recorded in the <tag>:<value> format. In MCO, the tag is part of the field name, for example,
the 333_ORIG_ESME_PROFILE_NAME field records a source LA as 333:SMPP_TEST.0.
MCO allows a customer to customise tags used per special attribute field, thus when the same field is configured as 222_ORIG
_ESME_PROFILE_NAME , the field is recorded as 222:SMPP_TEST.0. It is also possible to omit the tag at all by configuring a
field with no tag, thus when the same field is configured as ORIG_ESME_PROFILE_NAME , the field is recorded as SMPP_TEST.
0.
The full list of available field types and applicable constraints is given in Table 3.18.
Important
The table lists all available attributes in a random order. The second column denotes the unique identification of the
attributes. The field name is used to configure whether a particular field appears in the SDR and in which position.
MCO supports also fixed-length text field records. This format provides compatibility with Telepath SMSC SDR billing files. All
commonly used Telepath SMSC fields are supported; rarely used or deprecated fields are not supported.
This stream is intended for recording in the submission phase and once a message is delivered. Use the CREATE_SDR(CSV_TP)
action in the IN_MSG and FINAL_MSG SDR RBDL stages only.
Any configured stream of records can contain fields listed in Table 3.19.
Important
The table lists all available attributes in a random order. The first column (ID) denotes the unique identification of an
attribute. Whether a particular field appears in a produced SDR and on which position can be configured using the unique
identification (ID).
COMMERCIAL-IN-CONFIDENCE
Right delimiter C
ASCII characters
TP_3 Calling Number Number of the calling party String TEXT(20,R,0,’0’)
20 bytes
ASCII characters
6-7 bytes
Left delimiter 01
TP_4 Called TON,NPI TON and NPI of the destination address String TEXT(7)
TON 1-2 bytes
NPI 2 bytes
Right delimiter C
ASCII characters
TP_5 Called Number Full number of the destination address String TEXT(20,R,0,’0’)
20 bytes
Full customer identifier of the source ASCII characters
TP_6 Calling Customer Id String TEXT(20,R)
address 20 bytes
Full customer identifier of the destination ASCII characters
TP_7 Called Customer Id String TEXT(20,R)
address 20 bytes
ASCII characters
TP_8 Calling Service Level Number allocated during provisioning String TEXT(2,R,0,’0’)
2 bytes
ASCII characters
TP_9 Called Service Level Number allocated during provisioning String TEXT(2,R,0,’0’)
2 bytes
Time at which the message was submitted ASCII characters
to MCO; format: YYMMDDhhmmss 16 bytes =
TP_10 Message Submission Time String DATE(TELEPATH)
Time zone information indicating +/-GMT; 12 bytes (time)
format: 0HHC/0HHD (C=+GMT, D= -GMT) 4 bytes (time zone)
Time at which the message was delivered
to MS or time at which the message ASCII characters
reached the state defined in the Cause for 16 bytes =
TP_11 Message Delivery Time String DATE(TELEPATH)
Termination field; format: YYMMDDhhmmss 12 bytes (time)
Time zone information indicating +/-GMT; 4 bytes (time zone)
format: 0HHC/0HHD (C=+GMT, D= -GMT)
COMMERCIAL-IN-CONFIDENCE
02: Message deleted
03: Message
undeliverable
04: Message invalid
05: Message accepted
ASCII characters
TP_13 Call Reference Unique reference of a call String TEXT(12,R,0)
12 bytes
Length of the text part of the message in ASCII characters
TP_14 Message Length String TEXT(4,R,0,’0’)
bytes 4 bytes
ASCII characters
2 bytes
TP_15 Priority Priority level of the message 1C = scheduled or String TEXT(2)
priority messages
0C = otherwise
ASCII characters
2 bytes
It indicates whether the originator requested
TP_16 Deferred 1C = deferred message String TEXT(2)
deferred delivery of the message.
0C = not deferred
message
ASCII characters
2 bytes
It indicates whether the originator requested 1C = receipt is
TP_17 Receipt String TEXT(2)
a receipt for the message. requested
0C = no receipt is
requested
Integer Hexadecimal
TP_18 Protocol ID Protocol ID set by a message indicator TEXT(2,R,0,’0’)
2 bytes number
COMMERCIAL-IN-CONFIDENCE
Number of delivery attempts made before
TP_20 Number of Delivery Attempts 3 bytes String TEXT(3,R,0,’0’)
successful delivery of the message
It indicates the encoding of the message
user data. ASCII characters
TP_21 Message Text Type Integer TEXT(1)
1 = ASCII 1 byte
3 = GSM
Configurable, by default
TP_22 Message Text Message data String TEXT(16,L)
16 bytes
ASCII characters
TP_24 Translated Originator TON TON of the originator of the message Integer TEXT(2)
TON 1-2 bytes
ASCII characters
TP_25 Translated Originator NPI NPI of the originator of the message Integer TEXT(2)
2 bytes
ASCII characters
TP_26 Translated Originator Address Address of the originator of the message String TEXT(20,R,0,’0’)
20 bytes
ID of the user group to which the originator ASCII characters
TP_28 Originator UserGroup ID Integer TEXT(1,R, ,’0’)
belongs 1-3 bytes
ASCII characters
TP_29 Untranslated Originator TON Untranslated originator TON Integer TEXT(2)
1-2 bytes
ASCII characters
TP_30 Untranslated Originator NPI Untranslated originator NPI TEXT(2)
2 bytes
Untranslated Originator ASCII characters
TP_31 Untranslated originator address String TEXT(20,R,0,’0’)
Address 20 bytes
ID of the user group to which the recipient ASCII characters
TP_36 Recipients UserGroup ID Integer TEXT(1,R, ,’0’)
belongs 1-3 bytes
ASCII characters
TP_37 Untranslated Destination NPI Untranslated destination NPI Integer TEXT(2)
2 bytes
ASCII characters
TP_38 Untranslated Destination NPI Untranslated destination NPI Integer TEXT(2)
2 bytes
Untranslated Destination ASCII characters
TP_39 Untranslated destination address String TEXT(20,R,0,’0’)
COMMERCIAL-IN-CONFIDENCE
TP_140 CDR_MSG_ID Message ID Integer TEXT(20)
This chapter describes the format of the billing_identification parameter received via the SMPP protocol in a special use
case. This format is applied when the first octet is equal to 0x81. The following table shows how this parameter is decomposed
and how SDR fields are filled in.
These records are binary encoded according to the ASN.1 Distinguished Encoding Rules (ASN.1-DER). This makes ASN.1
independent of any machine or platform.
Although billing files generated by MCO have the same (abstract) format as SMSC V5 billing files, the set of filled-in fields may
differ since these two products differ in the set of supported features.
Note
Please note that records produced by MCO and by SMSC V5 can also differ on the binary layer since SMSC V5 produces
billing records in ASN.1 Basic Encoding Rules (ASN.1-BER). That shall not be a problem for decoding tools since ASN.1
DER is a subset of the ASN.1 BER format. Option MCO3473_CDR_CODING_INDEF_LENGTH for SMSC V5 billing com-
patibility in sdr_conf.asn1_v5_compatibility table can be used to enable the compatibility with SMSC V5 billing
files. See Section 3.4.4 for details.
This stream is intended for recording in the submission phase and once a message is delivered. Use the CREATE_SDR(ASN_CDR)
action in the IN_MSG and FINAL_MSG SDR RBDL stages only.
MCO can produce two record types of ASN.1 records: CallDetailRecord for messages and NotificationRecord for
message receipts (notifications). To enable a record type, add the corresponding parent field (of the same name as the record type)
to configuration sdr_conf.streams[ASN_CDR].fields, where ASN_CDR should be replaced with the used ASN.1 stream
name. Please also note that feature MCO_SDR_ASN1_V5 should be enabled in license_conf.licenses for ASN.1 records to
be generated.
The content of individual fields is described in Table 3.21. Columns CDR and NR describe whether the field concerned can be
included in CallDetailRecord or NotificationRecord or both.
Important
Table 3.21 lists all available attributes in an alphabetic order with the exception of parent fields which are located in the
first two rows. Please note that unlike CSV streams, empty or zero-filled fields may not be sent even if they are specified
in configuration.
Table 3.22: Possible values of status field in ASN.1 and their mapping to
MSG_STATUS codes (see Table 3.12).
Note
The value of the Status field is also influenced by SMSC V5 compatibility option MCO3661_MSG_STATUS_DROP_IS
_DEL.
The values of the callingLineId and callingLineIdGSM fields are also influenced by the SMSC V5 compatibility
option MCO4615_EMPTY_MO_CALLINGLINEID.
Refer to [MCO_OMAN] for detailed information.
Important
The following tables contain SMSC V5.0 flag fields structures, however, most of these flags are not supported by MCO.
Such fields are described as "not supported".
The following table maps ASN.1 fields to corresponding encoded ASN.1 tag values.
Tag value
Field name
(hexadecimal)
CallDetailrecord 30
origAddress A0
origAddress.ton 80
origAddress.npi 81
origAddress.pid 82
Tag value
Field name
(hexadecimal)
origAddress.msisdn 83
origAddress.msisdnutf8 84
origAddressGSM 81
recipAddress A2
recipAddress.ton 80
recipAddress.npi 81
recipAddress.pid 82
recipAddress.msisdn 83
recipAddress.msisdnutf8 84
recipAddressGSM 83
submitDate 84
submitTime 85
Status 86
terminDate 87
terminTime 88
lengthOfMessage 89
prioIndicator 8A
validityPeriod AB
validityPeriod.hours 80
validityPeriod.minutes 81
deferIndicator 8C
deferPeriod AD
deferPeriod.hours 80
deferPeriod.minutes 81
notifIndicator 8E
notifAddress AF
notifAddress.ton 80
notifAddress.npi 81
notifAddress.pid 82
notifAddress.msisdn 83
notifAddressGSM 90
Vsmscid 91
Vsmsctype 92
dgtiAddress B3
dgtiAddress.ton 80
dgtiAddress.npi 81
dgtiAddress.pid 82
dgtiAddress.msisdn 83
dgtiAddressGSM 94
destPointCode 95
ogtiAddress B6
ogtiAddress.ton 80
ogtiAddress.npi 81
ogtiAddress.pid 82
ogtiAddress.msisdn 83
Tag value
Field name
(hexadecimal)
ogtiAddressGSM 97
origPointCode 98
orglSubmitDate 99
orglSubmitTime 9A
transparentPid 9B
mesgReplyPath 9C
recipIntlMobileSubId 9D
callingLineId BE
callingLineId.ton 80
callingLineId.npi 81
callingLineId.pid 82
callingLineId.msisdn 83
callingLineIdGSM 9F1F
Consolidation 9F20
portNumber 9F21
Aser 9F22
Mser 9F23
Nser 9F24
Xser 9F25
origIntlMobileSubId 9F26
Billid 9F27
Lang 9F28
Cbat 9F29
ppPser 9F2A
ppAser 9F2B
ppAserDuringJam 9F2C
ppAserFree 9F2D
ppAserRecip 9F2E
smeReference 9F2F
smsContentDcs 9F30
smsContents 9F31
cmReferenceNr 9F32
currentSegment 9F33
segmentsTotal 9F34
textFormatting 9F35
bytesCompressedData 9F36
predefinedAnimations 9F37
userDefinedAnimations 9F38
predefinedSounds 9F39
userDefinedSounds 9F3A
blackWhitePictures 9F3B
standardWvg 9F3C
characterSizeWvg 9F3D
greyscalePictures 9F3E
colourPictures 9F3F
Tag value
Field name
(hexadecimal)
businessCards 9F40
calendarEntries 9F41
polyphonicMelodies 9F42
bit8PortNumberDest 9F43
bit16PortNumberDest 9F44
lmsgNrSeg 9F45
messageReference 9F46
boolSer 9F47
origLASN 9F48
recipLASN 9F49
origMsgID 9F4A
recipMsgID 9F4B
receiptDate 9F4C
receiptTime 9F4D
Isr 9F4E
recipAltAddress BF4F
recipAltAddress.ton 80
recipAltAddress.npi 81
recipAltAddress.pid 82
recipAltAddress.msisdn 83
generatedSegments 9F50
serviceType 9F51
deliveryAttempts 9F52
untranslOrigAddress BF53
untranslOrigAddress.ton 80
untranslOrigAddress.npi 81
untranslOrigAddress.pid 82
untranslOrigAddress.msisdn 83
untranslOrigAddressGSM 9F54
untranslRecipAddress BF55
untranslRecipAddress.ton 80
untranslRecipAddress.npi 81
untranslRecipAddress.pid 82
untranslRecipAddress.MSISD 83
untranslRecipAddressGSM 9F56
msgError 9F57
TpDCS 9F58
genericUrgencyLevel 9F59
ifaceUrgencyLevel 9F5A
teleserviceID 9F5B
origAddrGroup 9F5C
recipAddrGroup 9F5D
origNetworkType 9F5E
recipNetworkType 9F5F
origServicePrice BF60
Tag value
Field name
(hexadecimal)
origServicePrice.currency 80
origServicePrice.exponent 81
origServicePrice.value 82
recipServicePrice BF61
recipServicePrice.currency 80
recipServicePrice.exponent 81
recipServicePrice.value 82
cser 9F62
origSPBPStatus 9F63
recipSPBPStatus 9F64
billidSMPP 9F65
enumResult 9F66
dser 9F67
importance 9F68
forwAddress BF69
forwAddress.ton 80
forwAddress.npi 81
forwAddress.pid 82
forwAddress.msisdn 83
forwAddress.msisdnutf8 84
forwAddressGSM 9F6A
privateContainer 9F6B
rbdlFlags1 9F6C
rbdlFlags2 9F6D
origSCAddress BF6E
origSCAddress.ton 80
origSCAddress.npi 81
origSCAddress.pid 82
origSCAddress.msisdn 83
origSCAddress.msisdnutf8 84
idMNPdb 9F6F
origMIN 9F70
recipMIN 9F71
logDate 9F72
logTime 9F73
mtyp 9F74
presOrigAddress BF75
presOrigAddress.ton 80
presOrigAddress.npi 81
presOrigAddress.pid 82
presOrigAddress.msisdn 83
presOrigAddress.msisdnutf8 84
presOrigAddressGSM 9F76
presRecipAddress BF77
presRecipAddress.ton 80
Tag value
Field name
(hexadecimal)
presRecipAddress.npi 81
presRecipAddress.pid 82
presRecipAddress.msisdn 83
presRecipAddress.msisdnutf8 84
presRecipAddressGSM 9F78
messageID 9F79
applicationData 9F7A
Tag value
Field name
(hexadecimal)
NotificationRecord 61
orglOrigAddress A0
orglOrigAddress.ton 80
orglOrigAddress.npi 81
orglOrigAddress.pid 82
orglOrigAddress.msisdn 83
orglOrigAddressGSM 81
orglRecipAddress A2
orglRecipAddress.ton 80
orglRecipAddress.npi 81
orglRecipAddress.pid 82
orglRecipAddress.msisdn 83
orglRecipAddressGSM 83
orglNotifAddress A4
orglNotifAddress.ton 80
orglNotifAddress.npi 81
orglNotifAddress.pid 82
orglNotifAddress.msisdn 83
orglNotifAddressGSM 85
submitDate 86
submitTime 87
orglSubmitDate 88
orglSubmitTime 89
status 8A
terminDate 8B
terminTime 8C
lengthOfMessage 8D
validityPeriod AE
validityPeriod.hours 80
validityPeriod.minutes 81
vsmscid 8F
Tag value
Field name
(hexadecimal)
vsmsctype 90
consolidation 91
billid 92
smeReference 93
smsContentDcs 94
smsContents 95
messageReference 96
recipLASN 97
origMsgID 98
isr 99
boolSer 9A
recipAltAddress BB
recipAltAddress.ton 80
recipAltAddress.npi 81
recipAltAddress.pid 82
recipAltAddress.msisdn 83
serviceType 9C
dgtiAddress BD
dgtiAddress.ton 80
dgtiAddress.npi 81
dgtiAddress.pid 82
dgtiAddress.msisdn 83
dgtiAddressGSM 9E
destPointCode 9F1F
orglOgtiAddress BF20
orglOgtiAddress.ton 80
orglOgtiAddress.npi 81
orglOgtiAddress.pid 82
orglOgtiAddress.msisdn 83
orglOgtiAddressGSM 9F21
orglOrigPointCode 9F22
deliveryAttempts 9F23
orglUntranslOrigAddress BF24
orglUntranslOrigAddress.ton 80
orglUntranslOrigAddress.npi 81
orglUntranslOrigAddress.pid 82
orglUntranslOrigAddress.msisdn 83
orglUntranslOrigAddressGSM 9F25
orglUntranslRecipAddress BF26
orglUntranslRecipAddress.ton 80
orglUntranslRecipAddress.npi 81
orglUntranslRecipAddress.pid 82
orglUntranslRecipAddress.msisdn 83
orglUntranslRecipAddressGSM 9F27
msgError 9F28
Tag value
Field name
(hexadecimal)
tpDCS 9F29
orglOrigAddrGroup 9F2A
orglRecipAddrGroup 9F2B
recipNetworkType 9F2C
orglRecipNetworkType 9F2D
recipIntlMobileSubId 9F2E
orglRecipIntlMobileSubId 9F2F
origServicePrice BF30
origServicePrice.currency 80
origServicePrice.exponent 81
origServicePrice.value 82
recipServicePrice BF31
recipServicePrice.currency 80
recipServicePrice.exponent 81
recipServicePrice.value 82
ppPser 9F32
ppAser 9F33
ppAserDuringJam 9F34
ppAserFree 9F35
origSPBPStatus 9F36
recipSPBPStatus 9F37
orglNotifDate 9F38
orglNotifTime 9F39
billidSMPP 9F3A
origLASN 9F3B
nser 9F3C
enumResult 9F3D
cser 9F3E
dser 9F3F
importance 9F40
rbdlFlags1 9F41
rbdlFlags2 9F42
orglOrigMIN 9F43
orglRecipMIN 9F44
logDate 9F45
logTime 9F46
ntyp 9F47
presOrigAddress BF48
presOrigAddress.ton 80
presOrigAddress.npi 81
presOrigAddress.pid 82
presOrigAddress.msisdn 83
presOrigAddress.msisdnutf8 84
presOrigAddressGSM 9F49
presRecipAddress BF4A
Tag value
Field name
(hexadecimal)
presRecipAddress.ton 80
presRecipAddress.npi 81
presRecipAddress.pid 82
presRecipAddress.msisdn 83
presRecipAddress.msisdnutf8 84
presRecipAddressGSM 9F4B
privateContainer 9F4C
messageID 9F4D
applicationData 9F4E
Behaviour of the ASN.1 billing can be fine tuned by switches in the sdr_conf.asn1_v5_compatibility cparam table. For
details, refer to section Charging in [MCO_OMAN].
The sdr_decode.py tool is available for decoding of streams in the CSV format. The csv_decode alias starts the script with
the default configuration specified in the /opt/mco/etc/csv_decode_cfg.py file. It is handful to specify a CSV format
separator and delimiter character used by the system there.
The following is an example of an SDR file containing a single record for an AO-AT message. The first line contains a header with
the name of fields contained in the file. Parentheses suffixed to the field name contain a formatting string if specified; that can help
a decoding tool to understand the data, e.g. whether an address field contains all parts (TON, NPI, address) or only an address
string (see B_ADDR(a) in the example below) etc. The second line contains the actual record data of an individual message.
'RecordNr','LOG_TIME()','SP_ID()','MSG_TYPE()','MSG_ID()','MSG_PARENT_ID()','MSG_MODE()',' ←-
MSG_STATUS()','REJECT_REASON()','REJECT_METHOD()','SM_ERROR()','SUBMIT_TIME()',' ←-
EXPIRY_TIME()','DELIVERY_TIME()','DONE_TIME()','PRIORITY()','NOTIF_REQ()','NR_DEL_ATT() ←-
','NR_DEL_SUB_ATT()','UDH_SRC_PORT()','UDH_DST_PORT()','A_ADDR()','A_UADDR()','A_TADDR() ←-
','B_ADDR(a)','B_UADDR()','B_TADDR()','A_IMSI()','B_IMSI()','MAP_A_IMSI()','MAP_B_IMSI() ←-
','A_AIM_NAME()','B_AIM_NAME()','A_NETWORK_TYPE()','B_NETWORK_TYPE()','S_CGPA()','D_CDPA ←-
()','D_CGPA()','A_HLR_CGPA()','A_HLR_MAP_ERROR()','B_HLR_MAP_ERROR()','A_SC()','B_SC() ←-
','MAP_ERROR()','MAP_CAUSE()','A_MSC()','A_SGSN()','B_MSC()','B_SGSN()','SM_TEXT()',' ←-
SM_TEXT_LENGTH()','SM_CONTENT()','SM_CONTENT_SIZE()','SM_CONTENT_ENCODING()','SM_UDH() ←-
','SM_UDH_SIZE()','SM_UDH_SEG()','SM_UDH_SEG_SIZE()','UDH_MASK()','UDH_MASK_SEG()',' ←-
SM_SEGMENT_MAX()','SM_SEGMENT_CURRENT()','SM_SEGMENT_REF()','A_COS()','B_COS()','S_COS() ←-
','D_COS()','A_DOMAIN()','B_DOMAIN()','S_DOMAIN()','D_DOMAIN()','MSG_FLAGS()',' ←-
DETECT_FLAGS()','DETECT_FLAGS_SEG()','RBDL_FLAGS()','RBDL_FLAGS_SEG()','BILLING_DATA() ←-
','BILLING_DATA_SEG()'
'0','1404371110','5','1','FCCAA75F8002E461907900000200B00D ←-
','','1','4','','','','1404371111','1404457511','1404371110','1404371110','0','00','1','1' ←-
,'','','1.1.6','1.1.6','1.1.6','1.1.666113','1.1.666113','1.1.666113','','','','',' ←-
SMPP_TEST_T','SMPP_TEST_R','3','3','','','','','','','','','','','','','','','Message ←-
2/10','14','4D65737361676520322F31305C0A00','14','5','','','','','0000000000000000', ←-
'0000000000000000','','','','0000000000000000','0000000000000000','0000000000000000' ←-
,'0000000000000000','255','','255','','0000000000000000','0000000000000000', ←-
'0000000000000000','0000000000000000','0000000000000000','0000000000000000','0000000000000000' ←-
All options of the tool can be displayed with the following command:
$ csv_decode -h
Usage:
$ csv_decode.py -f[file] <csv_file_name> [-hdr <line_num>] [-s[sep] <separator_char>] [-d[ ←-
el] <delimiter_char>] [-l[ist] <field_name> ..] [-p[res]] [-g[rep] <text>] [-r[ec] < ←-
filter>] -h[elp]
-h - show this help
-f - list of CSV files to be decoded, when omited stdin is read
-hdr - line number where header with field names is located, when not specified the ←-
first line in the file is used
-s - char separating individual fields in a record, when not specified the "," char ←-
is used
-d - char delimiting field values, when not specified the "'" char is used
-l - list of fields to be displayed, when not specified all fields are displayed
-p - outputs non-empty fields only
-g - displays only records which decoded and formatted output contains <text>
-r - displays only records matching with filter specified by <filter>, see examples ←-
below
-c - python config file <csv_decode_cfg.py>
-k - RSA private key in PEM format in file <private_key_file_name>, pass phrase for ←-
key will be prompted
Examples:
$ csv_decode.py -f csvsm.csv
$ tail -f abcd.csv | csv_decode.py
$ csv_decode.py -f csvsm.csv -l A_ADDR B_ADDR
$ csv_decode.py -f csvsm.csv -g infoMoSpoofedGT
$ csv_decode.py -f csvsm.csv -r 'FIELD("SM_ERROR"))=="21"'
$ csv_decode.py -f csvsm.csv -r 'FIELD("A_ADDR")=="1.1.120640980670" and FIELD(" ←-
B_ADDR")=="1.1.6661138"'
The asn1_decode.py tool is available for decoding of streams in the ASN.1 format. The asn1_decode alias can be used
for this tool.
Note
Make sure that you have NGP quaterly patches installed to have this tool working properly.
All options of the tool can be displayed with the following command:
$ asn1_decode -h
usage: asn1_decode.py [-h] [-r CONDS] [-l [FIELD [FIELD ...]]] [-g [GREP]]
[-5] [-f [FILENAME [FILENAME ...]]]
[FILENAME [FILENAME ...]]
positional arguments:
FILENAME Name of files to be decoded, "-" or missed for stdin
optional arguments:
-h, --help show this help message and exit
-r CONDS, --rec CONDS
String containing conditions like
FIELD(fieldName)=="value". Supported operations are
"==" (equal), "!=" (not equal), ">", "<", ">=", "<="
(integer comparasion), "=~" (regex matches) and "!~"
(not matches). Multiple conditions can be used with
"and" and "or" logical operators. For example
FIELD(x)=="vx" and FIELD(y)=="vy". Boolean flags can
be used in conditions in the following way:
FIELD(nser.clir)==true
AF Application Function
AO Application-originated
AT Application-terminated
GSM Global System for Mobile communications (formerly Groupe Speciale Mobile)
A set of standards for digital mobile communications developed by European Telecommunications Standards Institute
(ETSI).
GT Global Title
IE Information Element
LA Large Account
MO Mobile-originated
MO-FW-SM MO-Forward-Short-Message
MAP MO-Forward-Short-Message operation as defined in 3GPP 29.002
MT Mobile-terminated
MT-FW-SM MT-Forward-Short-Message
MAP MT-Forward-Short-Message operation as defined in 3GPP 29.002
PC Point Code
RI Routing Indicator
SC Service Centre
A synonym for SMSC used in the 3GPP TS 23.040 specification.
SM Short Message
SP Service Point
SRI Send-Routing-Info
TP Telepath
TP Transfer Protocol
TT Translation Type
[3GPP_23.040] 3GPP TS 23.040 V11.4.0 R11: Technical realization of the Short Message Service (SMS)