Tekelec EAGLE 5 Manual
Read Online
Read the Tekelec EAGLE 5 Manual online using the built-in PDF viewer.
Text of the manual
Tekelec EAGLE® 5
Provisioning Database Interface Manual
910-6022-001 Revision A
March 2011
Copyright 2011 Tekelec. All Rights Reserved. Printed in USA.
Legal Information can be accessed from the Main Menu of the optical disc or on the
Tekelec Customer Support web site in the Legal Information folder of the Product Support tab.
Table of Contents
Chapter 1: Introduction.......................................................................8
Overview....................................................................................................................................9
Scope and Audience.................................................................................................................9
Manual Organization................................................................................................................9
Documentation Admonishments............................................................................................9
Customer Care Center............................................................................................................10
Emergency Response..............................................................................................................12
Related Publications...............................................................................................................13
Documentation Availability, Packaging, and Updates.....................................................13
Locate Product Documentation on the Customer Support Site.......................................13
Chapter 2: Functional Description..................................................15
General Description................................................................................................................16
System Architecture................................................................................................................21
Provisioning Database Interface Description......................................................................24
Socket Based Connection...........................................................................................25
String-Based Messages...............................................................................................25
Security.........................................................................................................................25
Transaction-Oriented API..........................................................................................27
Batch-Oriented/Bulk Load........................................................................................28
Command Atomicity..................................................................................................28
Provisioning Ranges of Subscriber Numbers.........................................................28
Transparency of Redundant Systems.......................................................................30
Logs ..............................................................................................................................30
Crash Recovery ...........................................................................................................30
Request IDs .................................................................................................................31
Multiple Session Connectivity .................................................................................31
Request Queue Management ...................................................................................31
Interface Configuration and Installation ................................................................32
File Formats..............................................................................................................................32
Debug Log....................................................................................................................32
Import/Export Files....................................................................................................32
Chapter 3: PDBI Request/Response Messages.............................47
ii
910-6022-001 Revision A, March 2011
Retrieve Subscription Data........................................................................................89
Create Network Entity...............................................................................................97
Update Network Entity............................................................................................102
Delete Network Entity..............................................................................................106
Retrieve Network Entity..........................................................................................107
Switchover..................................................................................................................111
PDBA Status Query...................................................................................................114
Dump Connections...................................................................................................115
Create IMEI Data.......................................................................................................116
Update IMEI Data.....................................................................................................121
Delete IMEI Data.......................................................................................................125
Retrieve IMEI Data....................................................................................................129
Request Service Module Card Report....................................................................132
Chapter 4: PDBI Sample Sessions.................................................140
Introduction...........................................................................................................................141
Network Entity Creation......................................................................................................141
Simple Subscription Data Creation....................................................................................142
Update Subscription Data....................................................................................................143
Simple Queries.......................................................................................................................148
Multiple Response Query....................................................................................................150
Abort Transaction.................................................................................................................151
Update Request In Read Transaction.................................................................................152
Write Transaction In Standby Connection........................................................................152
Simple Subscription Data Creation with Single Txnmode.............................................153
Single IMEI Data...................................................................................................................154
IMEI Block Data.....................................................................................................................155
Asynchronous Service Module Card Report....................................................................156
Synchronous Service Module Card Report.......................................................................157
Service Module Card List.....................................................................................................158
iii
910-6022-001 Revision A, March 2011
Appendix A: PDBI Message Error Codes....................................160
PDBI Message Error Codes..................................................................................................161
Appendix B: TIF Number Substitution Relationships.............166
TIF Number Substitution Relationships............................................................................167
Appendix C: DN Block Self Healing............................................169
DN Block Self Healing .........................................................................................................170
Glossary..................................................................................................................172
iv
910-6022-001 Revision A, March 2011
List of Figures
Figure 1: Example EPAP/PDBA Network......................................................................................17
Figure 2: PDBI System Architecture.................................................................................................22
Figure 3: MPS/EPAP System Configuration..................................................................................24
Figure 4: SSH Tunnel Between the CPA and PDBA Machines....................................................26
v
910-6022-001 Revision A, March 2011
List of Tables
Table 1: Admonishments...................................................................................................................10
Table 2: Parse Failure Reasons .........................................................................................................50
Table 3: Connect Response Return Codes ......................................................................................55
Table 4: Disconnect Response Return Codes .................................................................................56
Table 5: Begin Transaction Response Return Codes .....................................................................58
Table 6: End Transaction Response Return Codes.........................................................................60
Table 7: Abort Transaction Response Return Code.......................................................................61
Table 8: Create Subscription Response Return Codes...................................................................72
Table 9: Update Subscription Response Return Codes.................................................................84
Table 10: Delete Subscription Response Return Codes.................................................................88
Table 11: Retrieve Subscription Data Response Return Codes....................................................97
Table 12: Create Network Entity Response Return Codes .........................................................101
Table 13: Update Network Entity Response Return Codes........................................................105
Table 14: Delete Network Entity Response Return Codes..........................................................107
Table 15: Retrieve Network Entity Response Return Codes .....................................................110
Table 16: Switchover Response Return Codes .............................................................................113
Table 17: PDBA Status Query Response Return Code................................................................115
Table 18: Dump Connections Response Return Code.................................................................116
Table 19: Create IMEI Response Return Codes ...........................................................................120
Table 20: Update IMEI Response Return Codes ..........................................................................124
Table 21: Update IMEI Response Return Codes...........................................................................128
Table 22: Retrieve IMEI Response Return Codes.........................................................................131
Table 23: Retrieve Service Module Card Report Response Return Codes................................134
Table 24: Retrieve Service Module Card Report Response Return Codes................................137
Table 25: Retrieve Service Module Card List Response Return Codes.....................................139
Table 26: Network Entity Creation Example ...............................................................................141
Table 27: Simple Subscription Data Creation Example ..............................................................142
Table 28: Update Subscription Data Example .............................................................................143
Table 29: Update Subscription Data Example 2...........................................................................145
Table 30: Update Subscription Data Example 3...........................................................................146
Table 31: Simple Queries Example ................................................................................................148
Table 32: Multiple Response Query Example...............................................................................150
Table 33: Abort Transaction Example............................................................................................151
Table 34: Update Request in Read Transaction Example............................................................152
Table 35: Write Transaction in Standby Connection Example...................................................153
Table 36: Simple Subscription Data Creation with Single Txnmode Example........................153
Table 37: Single IMEI Data Example .............................................................................................154
vi
910-6022-001 Revision A, March 2011
Table 38: IMEI Block Data Example ..............................................................................................155
Table 39: Asynchronous Service Module Card Report Example ..............................................156
Table 40: Synchronous Service Module Card Report Example .................................................157
Table 41: Service Module Card List Example ..............................................................................158
Table 42: PDBI Message Error Codes ............................................................................................161
Table 43: Supported and Prohibited Subscriber Associations....................................................167
Table 44: Support for DN Block Self Healing................................................................................171
vii
910-6022-001 Revision A, March 2011
This chapter contains general information about the
PDBI documentation, the organization of this
manual, and how to get technical assistance.
Topics:
•
Overview.....9
•
Scope and Audience.....9
•
Manual Organization.....9
•
Documentation Admonishments.....9
•
Customer Care Center.....10
•
Emergency Response.....12
•
Related Publications.....13
•
Documentation Availability, Packaging, and
Updates.....13
•
Locate Product Documentation on the Customer
Support Site.....13
8
910-6022-001 Revision A, March 2011
The Provisioning Database Interface Manual defines the interface that is used to populate the
Provisioning Database (PDB) for the G-Flex, G-Port, EIR, INP, A-Port, AINPQ, V-Flex, and IS41 GSM
Migration features of the EAGLE 5 Integrated Signaling System (ISS). The chapters include descriptions
of Provisioning Database Interface (PDBI), Provisioning Database Application (PDBA), EAGLE
Provisioning Application Processor (EPAP) function, PDBI request and response messages, and PDBI
sample sessions.
Scope and Audience
This manual is intended for the application personnel responsible for transferring data from the
customer system through the PDBI to a PDBA in an EPAP. Users of this manual and the others in the
EAGLE 5 ISS family of documents must have a working knowledge of telecommunications and network
installations.
Manual Organization
This document is organized into the following chapters:
•
Introduction contains general information about the PDBI documentation, the organization of this
manual, and how to get technical assistance.
•
Functional Description provides an overview of PDBI, EPAP, PDBA, and DSM functions.
•
PDBI Request/Response Messages describes available requests and the possible responses for PDBI
request/response messages.
•
PDBI Sample Sessions contains example flow scenarios for the PDBI request/response messages.
•
PDBI Message Error Codes lists the PDBI error codes and text.
•
TIF Number Substitution Relationshipsprovides information to support the TIF Number Substitution
feature (TIF NS).
•
DN Block Self Healing provides information about the DN Block Self Healing feature.
Documentation Admonishments
Admonishments are icons and text throughout this manual that alert the reader to assure personal
safety, to minimize possible service interruptions, and to warn of the potential for equipment damage.
9
910-6022-001 Revision A, March 2011
Introduction
Provisioning Database Interface Manual
Table 1: Admonishments
DANGER:
(This icon and text indicate the possibility of personal injury.)
WARNING:
(This icon and text indicate the possibility of equipment damage.)
CAUTION:
(This icon and text indicate the possibility of service interruption.)
Customer Care Center
The Tekelec Customer Care Center is your initial point of contact for all product support needs. A
representative takes your call or email, creates a Customer Service Request (CSR) and directs your
requests to the Tekelec Technical Assistance Center (TAC). Each CSR includes an individual tracking
number. Together with TAC Engineers, the representative will help you resolve your request.
The Customer Care Center is available 24 hours a day, 7 days a week, 365 days a year, and is linked
to TAC Engineers around the globe.
Tekelec TAC Engineers are available to provide solutions to your technical questions and issues 7
days a week, 24 hours a day. After a CSR is issued, the TAC Engineer determines the classification of
the trouble. If a critical problem exists, emergency procedures are initiated. If the problem is not critical,
normal support procedures apply. A primary Technical Engineer is assigned to work on the CSR and
provide a solution to the problem. The CSR is closed when the problem is resolved.
Tekelec Technical Assistance Centers are located around the globe in the following locations:
Tekelec - Global
Email (All Regions): [email protected]
•
USA and Canada
Phone:
1-888-FOR-TKLC or 1-888-367-8552 (toll-free, within continental USA and Canada)
1-919-460-2150 (outside continental USA and Canada)
TAC Regional Support Office Hours:
8:00 a.m. through 5:00 p.m. (GMT minus 5 hours), Monday through Friday, excluding holidays
•
Central and Latin America (CALA)
Phone:
USA access code +1-800-658-5454, then 1-888-FOR-TKLC or 1-888-367-8552 (toll-free)
10
910-6022-001 Revision A, March 2011
Introduction
Provisioning Database Interface Manual
TAC Regional Support Office Hours (except Brazil):
10:00 a.m. through 7:00 p.m. (GMT minus 6 hours), Monday through Friday, excluding holidays
•
Argentina
Phone:
0-800-555-5246 (toll-free)
•
Brazil
Phone:
0-800-891-4341 (toll-free)
TAC Regional Support Office Hours:
8:30 a.m. through 6:30 p.m. (GMT minus 3 hours), Monday through Friday, excluding holidays
•
Chile
Phone:
1230-020-555-5468
•
Colombia
Phone:
01-800-912-0537
•
Dominican Republic
Phone:
1-888-367-8552
•
Mexico
Phone:
001-888-367-8552
•
Peru
Phone:
0800-53-087
•
Puerto Rico
Phone:
1-888-367-8552 (1-888-FOR-TKLC)
•
Venezuela
Phone:
0800-176-6497
•
Europe, Middle East, and Africa
Regional Office Hours:
8:30 a.m. through 5:00 p.m. (GMT), Monday through Friday, excluding holidays
•
Signaling
11
910-6022-001 Revision A, March 2011
Introduction
Provisioning Database Interface Manual
+44 1784 467 804 (within UK)
•
Software Solutions
Phone:
+33 3 89 33 54 00
•
Asia
•
India
Phone:
+91 124 436 8552 or +91 124 436 8553
TAC Regional Support Office Hours:
10:00 a.m. through 7:00 p.m. (GMT plus 5 1/2 hours), Monday through Saturday, excluding
holidays
•
Singapore
Phone:
+65 6796 2288
TAC Regional Support Office Hours:
9:00 a.m. through 6:00 p.m. (GMT plus 8 hours), Monday through Friday, excluding holidays
Emergency Response
In the event of a critical service situation, emergency response is offered by the Tekelec Customer Care
Center 24 hours a day, 7 days a week. The emergency response provides immediate coverage, automatic
escalation, and other features to ensure that the critical situation is resolved as rapidly as possible.
A critical situation is defined as a problem that severely affects service, traffic, or maintenance
capabilities, and requires immediate corrective action. Critical problems affect service and/or system
operation resulting in:
•
A total system failure that results in loss of all transaction processing capability
•
Significant reduction in system capacity or traffic handling capability
•
Loss of the system’s ability to perform automatic system reconfiguration
•
Inability to restart a processor or the system
•
Corruption of system databases that requires service affecting corrective actions
•
Loss of access for maintenance or recovery operations
•
Loss of the system ability to provide any required critical or major trouble notification
Any other problem severely affecting service, capacity/traffic, billing, and maintenance capabilities
may be defined as critical by prior discussion and agreement with the Tekelec Customer Care Center.
12
910-6022-001 Revision A, March 2011
Introduction
Provisioning Database Interface Manual
For information about additional publications that are related to this document, refer to the Related
Publications document. The Related Publications document is published as a part of the Release
Documentation and is also published as a separate document on the Tekelec Customer Support Site.
Documentation Availability, Packaging, and Updates
Tekelec provides documentation with each system and in accordance with contractual agreements.
For General Availability (GA) releases, Tekelec publishes a complete EAGLE 5 ISS documentation set.
For Limited Availability (LA) releases, Tekelec may publish a documentation subset tailored to specific
feature content or hardware requirements. Documentation Bulletins announce a new or updated
release.
The Tekelec EAGLE 5 ISS documentation set is released on an optical disc. This format allows for easy
searches through all parts of the documentation set.
The electronic file of each manual is also available from the Tekelec Customer Support site. This site
allows for 24-hour access to the most up-to-date documentation, including the latest versions of Feature
Notices.
Printed documentation is available for GA releases on request only and with a lead time of six weeks.
The printed documentation set includes pocket guides for commands and alarms. Pocket guides may
also be ordered separately. Exceptions to printed documentation are:
•
Hardware or Installation manuals are printed without the linked attachments found in the electronic
version of the manuals.
•
The Release Notice is available only on the Customer Support site.
Note: Customers may print a reasonable number of each manual for their own use.
Documentation is updated when significant changes are made that affect system operation. Updates
resulting from Severity 1 and 2 Problem Reports (PRs) are made to existing manuals. Other changes
are included in the documentation for the next scheduled release. Updates are made by re-issuing an
electronic file to the customer support site. Customers with printed documentation should contact
their Sales Representative for an addendum. Occasionally, changes are communicated first with a
Documentation Bulletin to provide customers with an advanced notice of the issue until officially
released in the documentation. Documentation Bulletins are posted on the Customer Support site and
can be viewed per product and release.
Locate Product Documentation on the Customer Support Site
Access to Tekelec's Customer Support site is restricted to current Tekelec customers only. This section
describes how to log into the Tekelec Customer Support site and locate a document. Viewing the
document requires Adobe Acrobat Reader, which can be downloaded at www.adobe.com.
1. Log into the Tekelec Customer Support site.
13
910-6022-001 Revision A, March 2011
Introduction
Provisioning Database Interface Manual
Note: If you have not registered for this new site, click the Register Here link. Have your customer
number available. The response time for registration requests is 24 to 48 hours.
2. Click the Product Support tab.
3. Use the Search field to locate a document by its part number, release number, document name, or
document type. The Search field accepts both full and partial entries.
4. Click a subject folder to browse through a list of related files.
5. To download a file to your location, right-click the file name and select Save Target As.
14
910-6022-001 Revision A, March 2011
Introduction
Provisioning Database Interface Manual
This chapter provides an overview of PDBI, EPAP,
PDBA, and DSM functions.
Topics:
•
General Description.....16
•
System Architecture.....21
•
Provisioning Database Interface Description.....24
•
File Formats.....32
15
910-6022-001 Revision A, March 2011
The Provisioning Database Interface (PDBI) provides commands that communicate provisioning
information from the customer database to the provisioning database (PDB) in the Active PDBA in
an EAGLE 5 ISS. The customer executes provisioning commands using a provisioning application.
This application uses the PDBI request/response messages to communicate with the EPAP Provisioning
Database Application (PDBA) over the customer network.
EPAP (EAGLE Provisioning Application Processor)
As shown in Figure 1: Example EPAP/PDBA Network, the provisioning system contains two mated
EPAPs. Of the two mated EPAPs, only one is the Active PDBA, while the other acts as a Standby
PDBA.
Each EPAP maintains two copies of the RTDB in the B-Tree format. When a Service Module card needs
a copy of the RTDB, the Active RTDB downloads the B-Tree file to the Service Module card. Each
Service Module card uses the B-Tree file to create its own copy of the RTDB database. The primary
purpose of an EPAP is to download the RTDB to the Service Module cards.
The Active PDBA interfaces with the customer database through the PDBI, which provides PDB
updates. When the customer submits provisioning requests, the Active PDBA updates its PDB. After
the updates are applied to the PDB of the Active PDBA, the updates are sent to the Standby PDBA.
Service Module Card
As Figure 1: Example EPAP/PDBA Network shows, the provisioning system uses up to 25 Service Module
cards . Multiple Service Module cards are used to provide a means of load balancing in high-traffic
situations. The database is in a B-Tree format to facilitate rapid lookups.
16
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
Figure 1: Example EPAP/PDBA Network
Each Service Module card contains an identical database. The RTDB on the Service Module cards must
be identical to the RTDB maintained by the EPAPs. However, there are several reasons why the various
databases might not be identical. When a Service Module card is initialized, it has to download a
current copy of the B-Tree RTDB file from the EPAP. While that card is being downloaded, it cannot
be used to provide VSCCP services. Another condition that leads to the databases being out-of-sync
occurs when the EPAP processes an update from its provisioning source. These updates are applied
immediately to the Active EPAP PDB as they are received, but there is a delay before sending the
updates to each EPAP RTDB and then subsequently to the Service Module cards.
Two possible scenarios lead to the condition where a Service Module card might not have enough
memory to hold the entire database:
•
The database is downloaded successfully to Service Module card, but subsequent updates eventually
increase the size of the database beyond the Service Module card memory capacity. In this situation,
17
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
it is desirable to continue message processing, even though the database might not be as up-to-date
as it could be.
•
When a Service Module card is booted, if it is determined that the card does not have sufficient
memory to hold the entire database, the database is not loaded on that card. The Service Module
card is responsible for recognizing and reporting out-of-memory conditions. Under this condition,
a Service Module card cannot process provisioning traffic.
Introduction to Platform Services
The PDBI allows one or several independent information systems supplied and maintained by the
network operator to be used for provisioning the G-Flex, G-Port, INP, EIR, A-Port, IS41 GSM Migration,
V-Flex, and AINPQ databases and for configuring the G-Flex, G-Port, INP, EIR, A-Port, IS41 GSM
Migration, and AINPQ systems. Through the PDBI, the independent information systems can add,
delete, change or retrieve information about any IMSI/MSISDN/SP association or portability
information.
The active/standby status of the PDBA can also be changed. For the G-Flex and G-Port features, SP
generally refers to an HLR. Also note that the terms MSISDN and DN are used interchangeably
throughout this document.
The ANSI-41 Mobile Number Portability (A-Port) feature supports mobile number portability in
ANSI-based networks. The ANSI-41 Mobile Number Portability feature uses the EAGLE Provisioning
Application Processor ( EPAP) provisioning database to retrieve the subscriber portability status and
provision directory numbers for exported and imported IS41 subscribers. The A-Port feature supports
both IS41 LOCREQ and SMSREQ messages for number portability handling. The A-Port feature uses
the MNP SCCP Service Selector to process GTT-routed LOCREQ and SMSREQ SCCP messages.
The IS41 GSM Migration feature refers to the movement of the subscribers of an ANSI IS-41MAP
protocol based network to a GSM MAP protocol based network while retaining their mobile telephone
numbers.
After migration, subscribers are able to:
•
Use GPRS-based data services that are provided only by GSM networks.
•
Enhance their roaming capability to a larger number of countries because GSM networks are more
widely deployed worldwide than IS41 networks.
The IS41 GSM Migration feature uses the G-Port MSISDN portability type (PT) field to identify
subscribers that have migrated from IGM to GSM, but maintain only a single GSM handset. This
category also includes new subscribers who sign up for GSM service only and have only one handset,
but are given a number from the existing IS41 number range. Since these subscribers are either migrated
(PT=5) or not migrated (PT=0), the new PT values do not logically overlap the existing values. PT
values are mutually exclusive of each other.
The ANSI-41 Number Portability Query (AINPQ) feature provides number portability in networks
that support a mix of ITU and ANSI protocols by allowing ANSI-41 NPREQ queries on the EAGLE 5
ISS database. INP uses the INAP TCAP protocol and AINPQ uses the ANSI-41 TCAP protocol for
Query functions.
The G-Flex feature allows mobile network operators to optimize the use of subscriber numbers (IMSIs
and MSISDNs) and number ranges by providing a logical link between any MSISDN and any IMSI.
This allows subscribers to be easily moved from one HLR to another. It also allows each HLR to be
filled to 100 percent capacity by allowing MSISDN/IMSI ranges to be split over different HLRs and
individual MSISDNs/IMSIs to be assigned to any HLR. G-Flex also eliminates the need to maintain
subscriber routing information at every MSC in the network.
18
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
The GSM Mobile Number feature implements mobile number portability for GSM networks and
supports the SRF-based MNP solution as defined in ETSI standards. G-Port allows the subscriber to
retain the MSISDN number when changing subscription networks. The user's IMSI is not portable.
For call-related messages, G-Port acts as a “NP HLR”, in the case where the number has been exported,
by responding to the switch with a MAP SRI ack message. For calls to imported numbers and non-call
related messages, G-Port performs message relay.
The INP (INAP-based Number Portability) feature implements IN-based number portability (using
INAP protocol). It is also used by wireline network operators in accordance with ITU Number
Portability supplements, or by wireless network operators in accordance with ETS I NP standards.
INP provides both query/response and message relay functionality.
The EIR (Equipment Identity Register) feature implements handset security within the GSM network.
It does this by allowing carriers to provision IMEIs (International Mobile Equipment Identity) in the
database and assigning them a list type. List types are Black, Gray, and White. When an IMEI is placed
on the Black list, the carrier is able to prevent the handset from accessing their network. A White listed
IMEI is allowed access to the network, while a Gray may require additional screening but is typically
allowed access to the network.
The Prepaid Short Message Service Intercept (PPSMS) feature uses the G-Port DN portability type
(PT) field to identify prepaid subscribers. These subscribers can be categorized as subscribers that are
ported and subscribers that are not ported. The originated short messages (as part of SMS) of these
subscribers need to be intercepted and forwarded to a corresponding intelligent network platform for
verification. However, the new PT values of the subscribers that are ported in or not ported do not
logically overlap with the existing values. Therefore, the PT values for these subscribers cannot be set
when the DN associated with an SP is removed. In order to minimize changes to the interface, the PT
field is not added to the commands where an IMSI is provided as input. PPSMS is a part of G-Port
that is activated separately.
The V-Flex feature is used to route calls to a specific VMS based on subscription (voice, multimedia)
data provisioned via the EAGLE 5 ISS MMI port and EPAP PDBI . The V-Flex feature utilizes VMS
and GRN Network Entity types. In addition, the Multiple Network Entities per Subscriber feature
introduces the ability to associate DN Blocks and individual DNs with up to 2 NEs. SP and RN remain
mutually exclusive, however any combination of 2 NEs per DN is allowed so long as there is only 1
of each Network Entity type.
The ASD (Additional Subscriber Data) feature enables generic data to be associated with DN and DN
Block subscriber records.
The EPAP Provisioning Blacklist feature helps prevent provisioning of protected E.164 address strings
in the EPAP G-Flex database. Provisioning a protected E.164 address string as a DN, DN Block, or
IMSI may result in unintended and incorrect routing of messages by the EAGLE 5 ISS Service Module
card. The EPAP Provisioning Blacklist feature allows the user to define a list of address strings that
cannot be provisioned as DN, DN Block or IMSI address strings. The E.164 addresses of all HLRs must
be provisioned in the provisioning blacklist.
The TIF Number Substitution feature is used to provision a new DN association for DNs and DN
Blocks. All DN and DN Block records have a subscriber type to identify them as either public or private.
Public DN and DN Block records may substitute to private DN. Likewise, private DN and DN Blocks
may substitute to a public DN. Records are public by default; this default applies to pre-existing records
and new records for which subscriber type is not explicitly defined.
The IDP A-Party Blacklist feature provides subscriber blacklisting capability on the Calling Party
(A-Party or CgPN) number in the IDP CAMEL message. The blacklisting function is achieved using
either a query-based mode, or a relay-based mode in conjunction with IDP Relay feature processing.
19
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
The blacklist data is used by the EAGLE 5 ISS to support IDP queries. If the calling party is associated
with a blacklisted flag and a GRN has been provisioned against the associated DN or DN Block, then
a connect message is sent back to the switch along with the GRN number. The GRN is then used to
re-route the call to a predetermined destination. Pre-existing DN and DN Block records have blacklisting
disabled by default.
EPAP-related features share the same Real Time Database (RTDB) database when operated together
on a single node. EIR and INP/AINPQ are mutually exclusive on a node.
Introduction to the Data Model on the Platform
The PDBA uses an object-oriented approach for data organization. The data is organized into three
independent “objects” that correspond to MSISDNs, IMSIs and SPs/RNs. These “objects” are a subset
of the database. Associations are established between an IMSI and MSISDN, IMSI and SP/RN, MSISDN
and SP/RN or IMSI, MSISDN and SP/RN through the use of pointers between the objects.
The database is created as follows:
•
When an IMSI, MSISDN or NE (that is, an SP identifier) is created, this data is added to the
corresponding object, which is a subset of the database.
•
When an IMSI, MSISDN or NE is deleted, the related data is removed from the corresponding
object.
•
When an association is established between an IMSI, MSISDN and SP/RN, pointers are set up
between the appropriate objects.
•
When an association is removed, the pointers between the objects are removed.
For example, assume that the database already contains several IMSIs, MSISDNs and SP addresses,
but that no associations have been established. The IMSIs exist in the ‘IMSI object,’ that is, the IMSI
portion of the database. Likewise, the MSISDNs exist in the ‘MSISDN object’ and the SP addresses
exist in the ‘SP object.’ When the ent_sub or upd_sub commands are used to establish an association
between an IMSI and an MSISDN, a pointer is created that points to the correct location in the ‘MSISDN
object,’ that is, the correct portion of the database where the MSISDNs reside. The same process occurs
when other associations are established, such as IMSI pointing to SP, MSISDN pointing to SP, or IMSI
pointing to MSISDN pointing to SP.
The EIR feature introduces the IMEI to the database. The IMEI for EIR may be associated with up to
8 IMSIs, but it is important to note that this IMSI has no relationship to the existing IMSI used by the
G-Port/G-Flex feature (ent_sub, upd_sub,dlt_sub, rtrv_sub) commands. In other words, IMSIs
provisioned for EIR are strictly added to the EIR database only. An IMSI may appear in both the
G-Port/G-Flex database and the EIR database, but must be provisioned by both sets of commands
(ent-eir and ent-sub).
Data Organization
MSISDN data is provisioned into two tables: a single instance table (Single DNs) and a block instance
table (DN Blocks). The database considers both Single DNs and DN Blocks as entities in their own
right. Therefore, a distinction must be made between the terms ‘DN range’ and ‘DN Block’ as they
are used in this document. A DN Block is considered to be an autonomous entity, just as a Single DN
is. A DN range is just a range of numbers. Within a specified DN range, several Single DNs and also
several DN Blocks may exist. For instance, consider the following example:
Assume the following single DNs are provisioned:
10050
20
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
Also assume the following DN blocks are provisioned:
10000-10100
10500-10800
11000-12000
Some commands accept a DN range as a requesting parameter (for example, the rtrv_sub command).
Assume the following DN ranges are used in a command:
10080-10600
10850-11500
10000-10040
10400-13000
Then the following relationships are true:
•
DN range 10080-10600 encompasses the Single DN 10080 and DN Blocks 10000-10100 and
10500-10800
•
DN range 10850-11500 encompasses the Single DN 10900 and DN Block 11000-12000
•
DN range 10000-10040 encompasses no Single DNs and DN Block 10000-10100
•
DN range 10400-13000 encompasses the Single DN 10900 and DN Blocks 10500-10800 and
11000-12000
The IMEI is also provisioned into two tables: a single instance table (Individual IMEIs) and a block
instance table (IMEI Blocks). IMEIs work the same way as the DNs and DN Blocks.
System Architecture
There are two PDBAs, one in EPAP A on each EAGLE 5 ISS. They follow an Active/Standby model.
These processes are responsible for updating and maintaining the Provisioning Database (PDB).
Customer provisioning applications connect to the Active PDBA and use PDBI request/response
messages to populate and query the PDB. The PDBA then forwards the updates to the EPAP real-time
database (RTDB). See Figure 2: PDBI System Architecture.
21
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
Figure 2: PDBI System Architecture
Updates that are sent to the active PDBA are also sent asynchronously to the standby PDBA after
being successfully committed into the active PDB. This methodology allows for provisioning to be
performed quickly from the PDBI client’s point of view because the client receives the success message
as soon as the update is committed to the active database. The client does not have to wait for the
update to be forwarded across their WAN and replicated on the standby database.
This design contains an inherent short delay between the time the active PDB receives the update and
when the standby PDB does. Because of this delay, clients only reading the database might be better
off reading from the standby PDBA. It should also be noted that both PDBA clients must be up for
the asynchronous replication to occur.
Note:
The active/standby status of the two PDBA processes can be switched through a PDBI command or
through the configuration user interface for the PDBA.
Also, the PDBA uses 5873 as its well-known listen port, although this value is modifiable through a
command line argument.
You can configure which PDBA forwards updates to an RTDB. Due to the asynchronous nature of the
PDBA replication, it is recommended that the RTDBs select the standby PDBA. This configuration
ensures that there are no problems with differing levels if the active PDBA is stopped while there are
many levels left to send to the standby PDBA. The RTDBs are guaranteed to always be on the PDBA
that has the lower level number.
System Overview and Terminology
Figure 3: MPS/EPAP System Configuration shows a block diagram of the MPS/EPAP platform. It also
shows a mated pair of EAGLE 5 ISSs. The EAGLE 5 ISSs are the large blocks at the bottom. The MPSs,
which are attached to the EAGLE 5 ISSs, are above the EAGLE 5 ISSs and contain EPAP A and EPAP
B.
An MPS system consists of two MPS servers and associated hardware, including a modem, CD-ROM,
etc. Each EAGLE 5 ISS in a mated pair has one MPS system attached. The two MPS systems are referred
22
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
to as a mated MPS system. Within one MPS system (i.e., the MPS system for one EAGLE 5 ISS), the
two MPS servers are considered mated MPS servers and are referred to as MPS A (the upper server)
and MPS B (the lower server).
The application bundle that runs G-Flex, G-Port, INP, EIR, A-Port, AINPQ, and IGM is referred to as
the EPAP. The EPAP consists of software applications needed to provision the databases, including
the Provisioning database. That is the database referred to as the PDB. In terms of G-Flex, G-Port, INP,
EIR, A-Port, AINPQ, and IS41 GSM Migration provisioning, the MPS upper and lower servers are
called simply EPAP A and EPAP B or MPS A and MPS B.
EPAP A and EPAP B are slightly different in their configuration. EPAP A runs the PDBA software
and thus holds a copy of the PDB. This is the EPAP that is accessed using the PDBI. EPAP A also holds
a copy of the RTDB for downloading to the Service Module cards. EPAP B contains a redundant copy
of the RTDB, but contains none of the PDBA software. This architecture is duplicated on the mated
MPS system on the mated EAGLE 5 ISS. Typically the redundant EAGLE 5 ISSs are called EAGLE 5
ISS A and EAGLE 5 ISS B.
The EPAPs are connected to the Service Module cards via a 10/100 BASE-T Ethernet for the
downloading of the RTDB; these Ethernet connections are called the main and backup DSM networks.
Network Connections
Connections and IP addressing for the customer (or provisioning) network, the main and DSM
networks, the RTDB, and the Dialup PPP network are described in greater detail in the EPAP
Administration Manual.
23
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
Figure 3: MPS/EPAP System Configuration
EPAP Status Reporting and Alarm Handling
Maintenance, measurements, status, and alarm information is routed from the Active EPAP to a
primary Service Module through EPAP Maintenance Blocks and Service Module Status Requests.
The status reporting, message format, and various alarm messages are discussed in detail in the EPAP
Administration Manual.
Provisioning Database Interface Description
This section describes the Provisioning Database Interface (PDBI) at a high level. The interface consists
of the definition of provisioning messages only.
24
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
The customer must write a client application that uses the PDBI request/response messages to
communicate with the PDBA. Details of the request/response messages appear in PDBI Request/Response
Messages
Socket Based Connection
The PDBI messages are sent across a TCP/IP socket. The client application is responsible for connecting
to the PDBA well-known port and being able to send and receive the defined messages. It is also the
responsibility of the customer’s provisioning system to detect and deal with socket errors. Tekelec
recommends that the TCP ‘keepalive’ interval on the customer’s socket connection be set such that a
socket disconnection problem is promptly detected and reported.
There is a limit to the number of PDBI connections; the default is 16 clients. If an attempt is made to
connect more than the current client limit, a response is returned to the client:
PDBI_TOO_MANY_CONNECTIONS. After the response is returned, the socket is automatically
closed.
Note: Although the default limit is 16 PDBI connections, Tekelec is able to configure and support up
to 128 connections. If you require more than 16 connections, contact Tekelec for information. concurrent
client
String-Based Messages
The PDBI messages (requests and responses) are NULL-terminated strings. This has several benefits.
•
It simplifies sending and receiving the messages from any language that has socket capability (for
example, Perl or Java).
•
It is easier for the PDBA to support any combination of the G-Flex, G-Port, and INP features at
previous and new levels. Because the messages are not tied to C structures, differences between
previous and new versions of the PDBI calls will not cause possible memory corruption. For
example, if a new parameter is added to the connect(…) command, a client using the previous
version of the command will simply receive a parsing error. The same change in a C structure-based
interface could result in the new C structure being filled in with wrong data.
•
It is easier for the PDBA to support any combination of the G-Flex, G-Port, INP, EIR, A-Port, AINPQ
and IGM Migration features at previous and new levels. Because the messages are not tied to C
structures, differences between previous and new versions of the PDBI calls do not cause possible
memory corruption. For example, if a new parameter is added to the connect(…) command, a
client using the previous version of the command simply receives a parsing error. The same change
in a C structure-based interface could result in the new C structure being filled in with wrong data.
•
Because the messages are user readable, debugging errors in messages is easier.
•
Messages can easily be stored in a request log for review or replay later.
Security
The PDBA maintains a list of IP addresses that are allowed to connect through the PDBI. Any connect
request coming from an IP address that is not in the list is rejected. Each IP address in the list has either
READ or READ/WRITE permission. IP addresses can be added to and removed from the list and
permissions can be modified using the EPAP user interface PDBA menu items (refer to the PDBA
Menu description in the EPAP Administration Manual).
25
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
Remote Port Forwarding
Remote Port Forwarding refers to the SSH tunneling approach where the SSH tunnel is created from
the client side of the tunnel towards the server side. The CPA machine is the server and the PDBA
machine is the client.
Figure 4: SSH Tunnel Between the CPA and PDBA Machines shows an SSH tunnel on a connection between
the Customer Provisioning machine and the PDBA machine.
Figure 4: SSH Tunnel Between the CPA and PDBA Machines
The PDBA machine user specifies a particular port number (configurable from GUI) to be opened on
the CPA machine. Any data received on this port on the CPA machine is forwarded to the PDBA
machine's IP address and the port number, 5873, through the secured SSH tunnel.
Note: To implement Remote Port Forwarding to work, the CPA machine must have the OpenSSH
suite (version 3.6.1 or later) installed and the SSH daemon must be running.
Request/Response Cycle in SSH Tunnel
When an SSH tunnel is in use, a complete request and response cycle takes place as follows:
1. The CPA sends a connect request to its local port number used for creating the tunnel.
2. The SSH encrypts the request message and sends it to the PDBA machine's SSH client port.
3. On the PDBA machine, the SSH client decrypts the message and forwards it to the PDBA port.
26
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
4. The PDBA gets the request message in unencrypted form and sends an unencrypted response to
the SSH client.
5. The SSH client encrypts the response message and sends it to the SSH port on the CPA machine.
6. On the CPA machine, the SSH daemon decrypts the message and forwards it to the CPA. The CPA
receives the message unencrypted.
How to Configure the CPA for Connecting to the PDBA
This section describes the parameters that must be defined on a CPA (Customer Provisioning
Application) machine to allow it to connect to the PDBA. The parameters used to configure a CPA
machine for connecting to the PDBA depend on whether SSH tunneling is to be used.
How to Configure the CPA When SSH Tunneling Is Not Used
If SSH tunneling is not to be used, configure the CPA with the following parameters:
•
IP address of the PDBA
•
PDBA port number 5873
How to Configure the CPA When SSH Tunneling Is Used
If SSH tunneling is to be used, the OpenSSH suite (version 3.6.1 or later) must be installed on the CPA,
the sshd daemon must be running, and the following parameters configured on the CPA machine:
•
IP address: either 127.0.0.1 or localhost
•
Port number: Use the same port number as is configured through the EPAP GUI (for more
information, refer to the EPAP Administration Manual.)
In addition, provide the following information to the EPAP administrator:
•
Port number on the CPA to be used for tunneling (this port number should be the same as the port
number specified on the CPA machine)
•
Username and password of the CPA machine
Note: The password is not stored by the EPAP software. It is used only one time for setting up the
SSH tunnel.
Transaction-Oriented API
The PDBI is a transaction-oriented API. This means that all subscription-related commands are sent
within the context of a transaction. Two transaction modes are supported, normal and single.
Normal Transaction Mode
The normal transaction mode is the default method and has two main benefits:
•
Many updates can be sent in a large transaction, and written to the database all at once when the
transaction is completed. This results in a much faster rate of updates per second.
•
It provides transaction integrity by allowing updates to be aborted or rolled back if there is an
unexpected failure of some kind before the transaction is completed. Updates are not committed
to the database until the end_txn command is issued. If an unexpected failure occurs or if the
transaction is manually aborted, the database is maintained in the state before the start of the
transaction (seer Command Atomicity ).
27
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
Single Transaction Mode
When sending a series of single-update transactions in normal transaction mode, considerable overhead
is required for sending transaction boundary tags. Because some clients want to send only one update
per transaction, an alternative PDBI connection type is available, called 'single transaction mode.'
When using this connection type, PDBI clients can send updates outside of the 'begin' and 'end'
transaction delimiters. The PDB treats each single transaction mode update as being its own transaction.
However, transaction delimiters are not ignored in 'single mode'. If the PDBI client issues these
delimiters, the series of updates encapsulated by them are treated as one transaction, as they are been
under the default normal transaction mode. For details on the PDBI connect options, refer to the
Connect command on and the txnmode parameter.
Batch-Oriented/Bulk Load
The system can also accept batch files via FTP (File Transfer Protocol) or removable media (that is,
MO, CD-R). The preferred method is FTP.
The format of the batch file looks like a series of normal PDBI commands, such as ent_sub, dlt_sub,
etc. However, the connect/disconnect request and transaction begin/end commands are not included.
During a batch file import, transactions are handled in the same manner as with individual commands:
the write transaction must be released by the client doing the batch file import before a new write
transaction may be granted. Read transactions are always available, assuming the customer's interface
network is available. The import file can contain as many commands as the storage media used to
hold the batch file allows. The PDBA does not have a limit on the number of commands allowed.
The batch file is committed in stages; several transactions are opened to import the entire file. There
is one commit for approximately every 200 entries. Therefore, it is impossible to rollback or abort a
transaction after the import is complete. This also means that the dblevel returned at the end of the
import may be increased by several levels since each transaction would increment it. The time needed
to complete an import of a batch file depends upon several variables, including the size of the file.
Although the import is processed as a series of transactions, the write transaction is unavailable to
other clients for the entire duration of the import, that is until all transactions related to the import
have been processed.
Command Atomicity
Commands are atomic, that is, they cannot be interrupted. Once a command is begun, it is performed
completely or not at all; an atomic command cannot be partly performed or partly completed.
Consequently, if one command in a transaction fails, the results of that one command are not committed
to the database upon execution of the end_txn command. However, all the other commands in the
transaction that did execute successfully are committed upon execution of the end_txn command.
Provisioning Ranges of Subscriber Numbers
Currently, there is no method directly accessible from the PDBI for provisioning ranges of IMSIs (only
individual IMSIs are supported), but provisioning MSISDNs Blocks and IMEIs Blocks is supported.
Note that the EPAP GUI provides menus to provision IMSI Ranges, however these are not equivalent
to MSISDN Blocks or IMEI Blocks. These IMSI Ranges are not provisioned via PDBI and are not
downloaded to the EPAP RTDBs or Service Module RTDBs.
28
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
Transparency of Redundant Systems
The network operator is responsible for provisioning to only one PDBA. Once the active PDB is
provisioned, the system automatically passes down the data to the active and standby RTDBs on that
EAGLE 5 ISS. At the same time, the data is also passed, asynchronously, to the standby PDB and
subsequently to the mated RTDBs on the mated EAGLE 5 ISS. Provisioning of redundant systems,
therefore, is transparent to the user.
When the active PDBA becomes unavailable, the standby PDBA does not automatically switch to
active. The PDBA client must send a switchover command to tell the standby PDBA to become active.
Logs
Several logs are available to the user, including a Command Log, which contains a trace of the
commands sent to the PDBA, and an Error Log, which contains a trace of all errors encountered during
provisioning, in addition to several other options.
Crash Recovery
If a crash occurs while a transaction is in process and does not cause database corruption, the database
remains in the state before the crash after the reboot.
In the event of a catastrophic failure or corruption of a database, several options exist for reloading
the data. For more information, refer to the EPAP Administration Manual.
Request IDs
Each request has an ID, called the ‘iid’, as its first element. Its purpose is to allow responses to be
matched up with requests as they arrive back at the client. Its value is an integer between 1 and
4294967295, expressed as a decimal number in ASCII.
The iid is optional. If an iid is not provided on a request, the corresponding response also does not
have one. The iid is selected by the client when a command is sent and the selected value is returned
by the PDBA in the subsequent response. A different iid could be selected for each request.
Multiple Session Connectivity
Multiple information systems can be connected via the PDBI simultaneously. All systems can open
read transactions, but only one system at a time can open a write transaction. If more than one system
requests a write transaction, contention for write access is handled as follows:
•
The first user to submit a write request is granted access, if it is authorized for write access.
•
If a second user submits a write request while the first transaction is still open, the second user is
either immediately rejected or is queued for a specified timeout period.
•
The time out period can be specified by the user in the write request as a value from 0 to 3600
seconds. If the value is not included or is set to 0, the second write request is immediately rejected.
•
If the time out value is set to any non-zero value, the second request is held for that time period
before being rejected. If the first user releases the write transaction before the second user time out
period has expired, the second user is then granted write access.
•
If a third user submits a write request after the second user with a specified time out period, the
third user's request is queued behind the second user's request. When the first user releases the
transaction, the second user is granted access. After the second user releases the transaction, the
29
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
third user is granted access, and so forth. Of course, whenever any user's time out period expires,
his/her request is rejected immediately.
•
If the third user sets a time out period longer than the second user and the second user's time out
period expires before the first user releases the transaction, the second user's request is dropped
from the queue. The third user subsequently moves up in the queue. Thus, if the first user releases
the transaction before the third user's time out has expired, the third user is granted access.
Request Queue Management
If multiple command requests are issued simultaneously, each request is queued and processed in
the order it was received. The user is not required to wait for a response from one command before
issuing another.
Incoming requests, whether multiple requests from a single user or requests from multiple users, are
not prioritized. Multiple requests from a single user are handled on a first-in, first-out basis. Simply
put, requests are answered in the order in which they are received. Servicing of requests from multiple
users is dependent upon traffic in the data network.
Interface Configuration and Installation
In addition to this manual, additional information concerning PDBI installation, configuration and
integration with the network operator's information system is provided in the EPAP Administration
Manual.
Transparency of Redundant Systems
The network operator is responsible for provisioning to only one PDBA. Once the active PDB is
provisioned, the system automatically passes down the data to the active and standby RTDBs on that
EAGLE 5 ISS. At the same time, the data is also passed, asynchronously, to the standby PDB and
subsequently to the mated RTDBs on the mated EAGLE 5 ISS. Provisioning of redundant systems,
therefore, is transparent to the user.
When the active PDBA becomes unavailable, the standby PDBA does not automatically switch to
active. The PDBA client must send a switchover command to tell the standby PDBA to become active.
Logs
Several logs are available to the user, including a Command Log, which contains a trace of the
commands sent to the PDBA, and an Error Log, which contains a trace of all errors encountered during
provisioning, in addition to several other options.
Crash Recovery
If a crash occurs while a transaction is in process and does not cause database corruption, the database
remains in the state before the crash after the reboot.
In the event of a catastrophic failure or corruption of a database, several options exist for reloading
the data. For more information, refer to the EPAP Administration Manual.
30
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
Each request has an ID, called the ‘iid’, as its first element. Its purpose is to allow responses to be
matched up with requests as they arrive back at the client. Its value is an integer between 1 and
4294967295, expressed as a decimal number in ASCII.
The iid is optional. If an iid is not provided on a request, the corresponding response also does not
have one. The iid is selected by the client when a command is sent and the selected value is returned
by the PDBA in the subsequent response. A different iid could be selected for each request.
Multiple Session Connectivity
Multiple information systems can be connected via the PDBI simultaneously. All systems can open
read transactions, but only one system at a time can open a write transaction. If more than one system
requests a write transaction, contention for write access is handled as follows:
•
The first user to submit a write request is granted access, if it is authorized for write access.
•
If a second user submits a write request while the first transaction is still open, the second user is
either immediately rejected or is queued for a specified timeout period.
•
The time out period can be specified by the user in the write request as a value from 0 to 3600
seconds. If the value is not included or is set to 0, the second write request is immediately rejected.
•
If the time out value is set to any non-zero value, the second request is held for that time period
before being rejected. If the first user releases the write transaction before the second user time out
period has expired, the second user is then granted write access.
•
If a third user submits a write request after the second user with a specified time out period, the
third user's request is queued behind the second user's request. When the first user releases the
transaction, the second user is granted access. After the second user releases the transaction, the
third user is granted access, and so forth. Of course, whenever any user's time out period expires,
his/her request is rejected immediately.
•
If the third user sets a time out period longer than the second user and the second user's time out
period expires before the first user releases the transaction, the second user's request is dropped
from the queue. The third user subsequently moves up in the queue. Thus, if the first user releases
the transaction before the third user's time out has expired, the third user is granted access.
Request Queue Management
If multiple command requests are issued simultaneously, each request is queued and processed in
the order it was received. The user is not required to wait for a response from one command before
issuing another.
Incoming requests, whether multiple requests from a single user or requests from multiple users, are
not prioritized. Multiple requests from a single user are handled on a first-in, first-out basis. Simply
put, requests are answered in the order in which they are received. Servicing of requests from multiple
users is dependent upon traffic in the data network.
31
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
Interface Configuration and Installation
In addition to this manual, additional information concerning PDBI installation, configuration and
integration with the network operator's information system is provided in the EPAP Administration
Manual.
File Formats
All file formats described in this section are text files.
The EPAP menu items for importing files to the PDB and exporting files from the PDB are described
in the PDBA menu section of the EPAP Administration Manual.
Debug Log
The debug log format varies from process to process. Most entries contain a timestamp followed by
a description of the logged event and some relevant data.
The EPAP menu for viewing the PDBA debug log is described in the PDBA menu section of the EPAP
Administration Manual.
Import/Export Files
The Import and Export files use the PDBI create command format (see Create Subscription and
Create Network Entity ). A carriage return separates each command in the file.
Import File
To achieve faster loading rates, large numbers of PDBI commands can be placed together in a file and
loaded into the PDB through the Import option on the EPAP user interface. (For more information,
refer to the EPAP Administration Manual.) The format of the commands in the file is exactly the same
as the PDBI commands specified in this document.
rtrv_sub([iid XXXXX,] dn XXXXX, [data ]
CAUTION: Do not use tabs instead of spaces in the commands. Using tabs causes the
command and replication to the standby PDB to fail.
The valid import file commands are:
•
ent_sub
•
upd_sub
•
dlt_sub
•
ent_entity
•
upd_entity
•
dlt_entity
•
ent_eir
32
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
Note: Do not include rtrv_sub, rtrv-entity, or rtrv_eir commands in an import file. The
inclusion of rtrv commands causes an import to take a very long time to complete. During an import,
a write transaction lock is in place for the entire import for a manual import, and intermittently in
place for an automatic import. While the write transaction lock is in place during an import, no other
updates to the database can be made.
Data can be imported manually or automatically, as described in the following sections:
•
Manual Import
•
Automatic Import
The syntax of the imported file data is described in Import File Syntax.
Manual Import
The manual import mode is used to import data typically on a one-time basis or as needed and is
configured by the Import File to PDB Screen. The selected file is processed immediately. A manual
import locks the PDB write transaction; other users will not be able to obtain the write transaction
until the import operation is complete.
Automatic Import
As long as the PDB is active, the automatic import searches the/var/TKLC/epap/free/pdbi_import directory
for new files on a remote system for import every 5 minutes. If a file exists in the directory and it is
not being modified or in the process of being transferred when it is polled, the import will run
automatically at that time. If the file is being modified or is in the process of being transferred, the
automatic import tries again after five minutes. Delaying when a file is being modified or in the process
of being transferred prevents the import of incomplete files.
The automatic import option can import up to 16 files at a time. This is limited by the available number
of PDBI connections. If more than 16 files exist in the directory, as soon as one file completes, another
file is started until all files have completed. The results of the import are automatically exported to
the remote system specified by the Configure File Transfer Screen (described in the EPAP Administration
Manual).
Once the import is complete, the data file is automatically removed and a results file is automatically
transferred back to the remote system. An automatic import obtains the PDB write transaction and
processes several of the import file commands. Then the write transaction is released, allowing other
connections to provision data. An automatic import obtains the write transaction repeatedly until all
the import file commands have been processed.
Automatic import is also called "Batch-oriented/bulk load" (see Batch-Oriented/Bulk Load).
Import File Syntax
There is no need to place any other commands, such as begin_txn, in the file. If the PDBI user interface
is used to send the import command, the user interface automatically handles establishing a connection
with an open write transaction. Because the import operation has the write operation throughout
its entire duration, normal updates from other PDBI users cannot obtain the write transaction until
the import operation is finished.
33
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
Any errors encountered while processing the file are logged in the error log file of the PDBA. The
processing of the import file continues. When the file is completely processed, the user interface
displays a warning that errors were encountered. The error log file of the PDBA can then be viewed
through the EPAP user interface. (For more information, refer to the EPAP Administration Manual.)
Commands in the import file are handled as though they were received across a normal PDBI
connection. It is important that dependencies are listed in the file in the correct order. For example, if
a DN is to be created and assigned to a specific NE (either SP/RN), that NE must exist before the DN
can be created. The NE could either already exist in the database before the import file was sent, or it
could be created in the import file before any DNs that need it.
Since there is limit to the number of commands that can be contained in a single transaction (see
Transaction Too Big Response), the PDBA may have to break up the import into several separate
transactions. This is handled internally in the PDBA. The user may notice only that the database level
has grown by more than one.
Blank lines and lines beginning with the '#' character are skipped.
If any PDBI commands other than the six mentioned above are placed in an import file, each occurrence
generates a BAD_IMPORT_CMD error internally while parsing the file. The total import error count is
incremented, and the processing of the import file continues with the next line. The BAD_IMPORT_CMD
return code never actually is returned to the PDBI client, but it may be seen in the PDBA error log file.
Export File
It is possible to export the contents of the PDB to an ASCII file. Perform this through the Export option
on the EPAP user interface. (For more information, refer to the EPAP Administration Manual.) The
data can be formatted in two ways, either as PDBI commands or as raw delimited ASCII.
Three modes of export are supported in the EPAP software. Depending on the mode of export selected,
the EPAP may be blocked from performing database updates or allowed to provision new data and
data retrieve operations on the EPAP provisioning database PDB) during the export.
EPAP provides the following modes of operation:
•
Blocking mode
The Blocking mode blocks write requests to the EPAP database during a database export. Writes
will not be allowed until the export completes.
•
Snapshot mode
Note: This mode causes the server to run increasingly slower as updates are received on the other
connections.
The Snapshot mode allows write operations on the database during a database export. This mode
provides the exported database as a complete snapshot of the database at the time the export started.
This implies that changes to the database after the export started are not reflected in the exported
database. This allows for a logically complete export file.
•
Real Time mode
The Real Time mode allows write operations during a database export, and provides the export
file in real-time fashion rather than as a snapshot. Changes to the DB after the export has started
may or may not be reflected in the export file, depending whether the changes are to an area of the
DB that has already been exported. This mode also provides a file that could be imported back into
the database later, but is less than ideal, since it is not a complete snapshot of a given time. As an
34
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
additional point of data, the level of the database when the export finished is placed at the end of
the export file.
PDBI Format
Formatting the output as PDBI commands allows the resulting file to be used as an import file. The
format of the commands in the file is exactly the same as the PDBI commands specified in this document.
Commands placed in the export file may not be the actual commands that originally created the
instances. For example, if a DN was created originally on SP1 and subsequently updated to move to
SP2, there would only be one command that creates the DN on SP2.
If the Number Prefix feature is turned on in the EPAP user interface, the generated PDBI commands
follow the Number Prefix rules described in the Number Prefix section.
The file is ordered as follows:
1. Network Entities
2. IMSIs (with associated DNs if any exist and DN updates for individualized data)
3. Single DNs (that are not associated with any IMSI)
4. DN Blocks
5. IMEIs (with associated IMSIs)
6. IMEI blocks
7. Update DNs (with information like TIF Number Substitution)
Raw Delimited ASCII Format
Formatting the output as raw delimited ASCII creates a file that can easily be read by other client
applications. The delimiter can be chosen on the EPAP user interface from a short list of possible
delimiter types (for example, comma, pipe, space). The resulting file contains six separate sections.
Each of the following sections corresponds to a data type, as follows:
•
Network Entities
•
IMSIs
•
Single DNs
•
DN Blocks
•
Single IMEIs
•
IMEI Blocks
The start of each section has a comment line (line starting with #) as its header. The content of the data
lines depends on the section. In an effort to keep the resulting file as small as possible, fields whose
values come from enum-like list of strings use only the first character of the choice.
Network Entities
The first section in the file contains all of the Network Entities. The data on each line is similar to the
data that can be provided on a ent_entity command.
,,,,,,,,,, ,
,
Where:
35
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
Identifier for this Network Entity
ID
Values:
1 to 15 hexadecimal digits expressed using ASCII characters
Type of Network Entity
Type
Values:
S - Signal Point
R - Routing Number
V - Voicemail Server
G - Generic Routing Number
Specifies the type of the point code. The absence of a value in this field means that the
NE did not have a point code.
PCType
Values:
i - ITU international point code in the form zone-area-id (z-aaa-i).
n - ITU national point code in the form of ITU number (nnnnn).
a - ANSI point code in the form of network-cluster-member (nnn-ccc-mmm).
The point code value. The valid values depend on the PCType parameter. If the PCType
field did not have a value, then this field also does not have a value.
PC
Values:
For PCType of i (intl) the format is zone-area-id [(s-)z-aaa-i].
s - Optional spare point code indicator
z - 0 - 7
aaa - 0 - 255.
i - 0 - 7
Note:
The value 0-0-0 is not valid
For PCType of n (natl) the format is number [(s-)nnnnn].
s - Optional spare point code indicator
nnnnn - 0 - 16383
For PCType of a (ANSI), the format is network-cluster-member (nnn-ccc-mmm).
nnn= 1 - 255
ccc= 1 - 255 (if network = 1 - 5)
= 0 - 255 (if network = 6 - 255)
mmm= 0 - 255
36
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
(Optional) Group Code. This optional parameter is part of the point code value for
ITU Duplicate Point Code Support feature.
GC
Values:
aa - zz
Routing Indicator. This parameter indicates whether a subsequent global title
translation is required.
RI
Values:
G = Global Title. Indicates that a subsequent translation is required.
S = Subsystem Number. Indicates that no further translation is required.
(Optional) New subsystem number. This parameter identifies the subsystem address
that is to receive the message.
SSN
Values:
0, 2 - 255
(Optional) Cancel Called Global Title.
CCGT
Values:
y or n (default)
(Optional) New translation type. This parameter identifies the translation type value
to replace the received translation type value.
NTT
Values:
0 - 255
(Optional) New nature of address.
NNAI
Values:
0 - 127
(Optional) New numbering plan.
NNP
Values:
0 - 15
(Optional) Digit action. The parameter specifies what changes, if any, to apply to the
Called Party GTA.
DA
Values:
37
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
r- Replace Called Party GTA with the entity id
p - Prefix Called Party GTA with the entity id
I - Insert Entity Id after country code
4 - Delete the country code
5 - Delete the country code and prepend with entity id
6 - Send a digit action of 6 to the EAGLE
7 - Send a digit action of 7 to the EAGLE
(Optional) The IMSI returned by a SRF indicating the Subscription Network of the
subscriber. This parameter is only used by the G-Port features and only for RNs.
SRFIMSI
Values:
a string with 5 to 15 characters where each character must be a number from 0 to
F.
Example Network Entity Entry:
101010,s,a,2-2-2,g,100,,,,,,r,
IMSIs
The second section contains the IMSI data. For the raw delimited format, any DNs that an IMSI has
are not listed with the IMSI. There is a field on the DN entry that points to the IMSI. This leaves only
three pieces of data for the IMSI entries.
,
Where:
(Optional) Specifies which SP the DN is on. The SP and RN fields do not both have values
at the same time.
SP
Values:
1 to 15 hexadecimal digits expressed using ASCII characters.
Example IMSI Entry:
1234567890,101010
Since it is not possible to have an IMSI without an SP, at least one field must be populated.
Single DNs
The third section in the export file contains the single DNs. The data in the entries is similar to the
data in the ent_sub command.
,,,, ,, ,, ,,,
Where:
A DN (specified in international format).
DN
38
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
a string with 5 to 15 characters where each character must be a number from 0 to F.
The IMSI to which the DN is associated. This field does not have a value if the DN is not
associated with any IMSI.
IMSI
Values:
a string with 5 to 15 characters where each character must be a number from 0 to F.
(Optional) The portability type for the created DN. This field is only used by G-Port, IS41
GSM Migration, A-Port, and PPSMS. For G-Port and A-Port, it controls number Portability
PT
Status encoding in SRI acks. For IS41 GSM Migration, it identifies whether a subscriber
has or has not migrated from IS41 to GSM, (maintaining a single GSM handset). For
PPSMS, it identifies a DN as one of thirty-two types needing PPSMS intercept.
Values:
none– no status (default = none)
0 – not known to be ported, migrated to IS41 or non-migrated IS41 sub (used for IS41
GSM Migration)
1 – own number ported out (used for G-Port and A-Port)
2 – foreign number ported to foreign network (used for G-Port and A-Port)
3 – prepaid 1 (used by PPSMS)
4 – prepaid 2 (used by PPSMS)
5 – migrated to GSM (used for IS41 GSM Migration)
6 – prepaid 3 (used by PPSMS)
7 – prepaid 4 (used by PPSMS)
8 – prepaid 5 (used by PPSMS)
9 – prepaid 6 (used by PPSMS)
10 – prepaid 7 (used by PPSMS)
11 – prepaid 8 (used by PPSMS)
12 – prepaid 9 (used by PPSMS)
13 – prepaid 10 (used by PPSMS)
14 – prepaid 11 (used by PPSMS)
15 – prepaid 12 (used by PPSMS)
16 – prepaid 13 (used by PPSMS)
17 – prepaid 14 (used by PPSMS)
18 – prepaid 15 (used by PPSMS)
19 – prepaid 16 (used by PPSMS)
20 – prepaid 17 (used by PPSMS)
21 – prepaid 18 (used by PPSMS)
22 – prepaid 19 (used by PPSMS)
23 – prepaid 20 (used by PPSMS)
24 – prepaid 21 (used by PPSMS)
25 – prepaid 22 (used by PPSMS)
39
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
26 – prepaid 23 (used by PPSMS)
27 – prepaid 24 (used by PPSMS)
28 – prepaid 25 (used by PPSMS)
29 – prepaid 26 (used by PPSMS)
30 – prepaid 27 (used by PPSMS)
31 – prepaid 28 (used by PPSMS)
32 – prepaid 29 (used by PPSMS)
33 – prepaid 30 (used by PPSMS)
34 – prepaid 31 (used by PPSMS)
35 – prepaid 32 (used by PPSMS)
36 – not identified to be ported
(Optional) Specifies which SP the DN is on. The SP and RN fields do not both have values
at the same time.
SP
Values:
1 to 15 hexadecimal digits expressed using ASCII characters.
(Optional) Specifies which RN the DN is on. The SP and RN fields do not both have values
at the same time.
RN
Values:
1 to 15 hexadecimal digits expressed using ASCII characters.
(Optional) Specifies which Voicemail Server the DNs are on. Corresponds to the E.164
address of the voicemail server. The VMS must correspond to an existing VMS entity.
Values:
VMS
1 to 15 hexadecimal digits expressed using ASCII characters.
(Optional) Specifies which Generic Routing Number the DNs are on. Corresponds to the
E.164 address used when the Eagle “NE Query Only Option” has been turned on. The
GRN must correspond to an existing GRN entity.
Values:
GRN
1 to 15 hexadecimal digits expressed using ASCII characters.
(Optional) Specifies the Additional Subscriber Data that is associated with this DN.
Leading zeros are significant.
ASD
1 to 10 hexadecimal digits expressed using ASCII characters. Leading
zeros are significant.
Values
(Optional) The subscriber type for created DNs.
ST
40
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
A decimal number in the range
Values
0 - public
1 - private
A TIF Number Substitution DN (specified in international format).
NSDN
Values:
a string with 5 to 15 characters where each character must be a number from 0 to F.
(Optional) IDP calling party blacklist.
CGBL
yes - IDP calling party blacklist is enabled
Values
Note: The cgbl parameter will only be listed in the export file if its value is yes.
(Optional) IDP called party blacklist.
CDBL
yes - IDP called party blacklist is enabled
Values
Note: The cdbl parameter will only be listed in the export file if its value is yes.
Example DN Entry:
12345,1234567890,,101010,,202020,,,,,,
DN Blocks
The fourth section in the export file contains the DN Blocks. The data in the entries are similar to the
data in the ent_sub command.
,,,, , ,, ,,,
Where:
The beginning DN (specified in international format).
BDN
5 to 15 hexadecimal digits expressed in the decimal format using
ASCII characters.
Values:
The ending DN (specified in international format).
EDN
a string with 5 to 15 characters where each character must be a
number from0 toF.
Values:
(Optional) The portability type for the created DN. This field is only used by G-Port, IS41
GSM Migration, A-Port, and PPSMS. For G-Port and A-Port, it controls number Portability
PT
Status encoding in SRI acks. For IS41 GSM Migration, it identifies whether a subscriber
41
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
has or has not migrated from IS41 to GSM, (maintaining a single GSM handset). For
PPSMS, it identifies a DN as one of thirty-two types needing PPSMS intercept.
Values:
none– no status (default = none)
0 – not known to be ported
migrated to IS41 or non-migrated IS41 sub (used for IS41 GSM Migration)
1 – own number ported out (used for G-Port and A-Port)
2 – foreign number ported to foreign network (used for G-Port and A-Port)
3 – prepaid 1 (used by PPSMS)
4 – prepaid 2 (used by PPSMS)
5 – migrated to GSM (used for IS41 GSM Migration)
6 – prepaid 3 (used by PPSMS)
7 – prepaid 4 (used by PPSMS)
8 – prepaid 5 (used by PPSMS)
9 – prepaid 6 (used by PPSMS)
10 – prepaid 7 (used by PPSMS)
11 – prepaid 8 (used by PPSMS)
12 – prepaid 9 (used by PPSMS)
13 – prepaid 10 (used by PPSMS)
14 – prepaid 11 (used by PPSMS)
15 – prepaid 12 (used by PPSMS)
16 – prepaid 13 (used by PPSMS)
17 – prepaid 14 (used by PPSMS)
18 – prepaid 15 (used by PPSMS)
19 – prepaid 16 (used by PPSMS)
20 – prepaid 17 (used by PPSMS)
21 – prepaid 18 (used by PPSMS)
22 – prepaid 19 (used by PPSMS)
23 – prepaid 20 (used by PPSMS)
24 – prepaid 21 (used by PPSMS)
25 – prepaid 22 (used by PPSMS)
26 – prepaid 23 (used by PPSMS)
27 – prepaid 24 (used by PPSMS)
28 – prepaid 25 (used by PPSMS)
29 – prepaid 26 (used by PPSMS)
30 – prepaid 27 (used by PPSMS)
31 – prepaid 28 (used by PPSMS)
32 – prepaid 29 (used by PPSMS)
33 – prepaid 30 (used by PPSMS)
34 – prepaid 31 (used by PPSMS)
35 – prepaid 32 (used by PPSMS)
36 – not identified to be ported
42
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
(Optional) Specifies which SP the DN is on. The SP and RN fields do not both have values
at the same time.
SP
Values:
1 to 15 hexadecimal digits expressed using ASCII characters.
(Optional) Specifies which RN the DN Block is on. The SP and RN fields do not both
have values at the same time.
RN
Values:
1 to 15 hexadecimal digits expressed using ASCII characters.
(Optional) Specifies which Voicemail Server the DNs are on. Corresponds to the E.164
address of the voicemail server. The VMS must correspond to an existing VMS entity.
Values:
VMS
1 to 15 hexadecimal digits expressed using ASCII characters.
(Optional) Specifies which Generic Routing Number the DNs are on. Corresponds to the
E.164 address used when the Eagle “NE Query Only Option” has been turned on. The
GRN must correspond to an existing GRN entity.
Values:
GRN
1 to 15 hexadecimal digits expressed using ASCII characters.
(Optional) Specifies the Additional Subscriber Data that is associated with this DN.
Leading zeros are significant.
ASD
1 to 10 hexadecimal digits expressed using ASCII characters. Leading
zeros are significant.
Values
(Optional) The subscriber type for created DNs.
ST
A decimal number in the range
Values
0 - public
1 - private
A TIF Number Substitution DN (specified in international format).
NSDN
Values:
a string with 5 to 15 characters where each character must be a number from 0 to F.
43
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
(Optional) IDP calling party blacklist.
CGBL
yes - IDP calling party blacklist is enabled
Values
Note: The cgbl parameter wil only be listed in the export file if its value is yes.
(Optional) IDP called party blacklist.
CDBL
yes - IDP called party blacklist is enabled
Values
Note: The cdbl parameter wil only be listed in the export file if its value is yes.
(Optional) DN Block splitting ability
SPLIT
yes - DN Block splitting is enabled
Values
no - DN Block splitting is disabled
Note: The split parameter will be listed in the export file only if its value is no
Example DN Block Entry:
9195550000,919555ffff,0,,e1e10,,,,,,,
Single IMEIs
The 5th section in the export file contains the single IMEIs. The data in the entries are similar to the
data in the ent_eir command. 8 IMSIs can be provided. If 8 IMSIs are not provisioned for that IMEI,
then a NULL value is supplied.
,,,,,,….,
Where:
Specifies the IMEI
IMEI
Values:
a string with 14 characters where each character is a number from 0 to F.
(Optional) Specifies the Software Version Number
SVN
Values:
A 2 digit number (0-99)
(Optional) Specifies a List Type of White
White
Values:
yes or no
(Optional) Specifies a List Type of Gray
GRAY
44
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
yes or no
(Optional) Specifies a List Type of Black
BLACK
Values:
yes or no
The IMSI to which the IMEI is associated. This field will not have a value if the
IMEI is not associated with any IMSI.
IMSI
a string with 5 to 15 characters where each character must
be a number from0 toF.
Values:
IMEI Blocks
The 6th section in the export file contains the block IMEIs. The data in the entries are similar to the
data in the ent_eir command.
,,,,
Where:
Specifies the beginning of the IMEI block
BIMEI
Values:
a string with 14 characters where each character is a number from 0 to F.
Specifies the ending of the IMEI block
EiMEI
Values:
a string with 14 characters where each character is a number from 0 to F.
(Optional) Specifies a List Type of White
WHITE
Values:
yes or no
(Optional) Specifies a List Type of Gray
GRAY
Values:
yes or no
(Optional) Specifies a List Type of Black
BLACK
45
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
yes or no
46
910-6022-001 Revision A, March 2011
Functional Description
Provisioning Database Interface Manual
PDBI Request/Response Messages
This chapter describes available requests and the
possible responses for PDBI request/response
messages.
Topics:
•
Overview.....48
•
Messages.....53
47
910-6022-001 Revision A, March 2011
This chapter defines the Database Interface (PDBI) request and response messages. The messages are
listed in alphabetical order.
Provisioning
Provisioning clients connect to the EAGLE Provisioning Application Processors (EPAPs) through the
PDBI. The PDBI consists of commands and their parameters, which allow you to define the messages
that provision the G-Flex, G-Port, INP, EIR, A-Port, and/or IS41 GSM Migration features and allow
the retrieval of feature data.
PDBI messages are sent across a TCP/IP socket. The client application (defined by the customer) is
responsible for connecting to the Provisioning Database Application (PDBA) well-known port and
being able to send and receive the defined messages.
Note:
The customer must write his own client application that uses the PDBI to communicate with the PDBA.
PDBI messages (requests and responses) are NULL-terminated strings, which allows sending and
receiving the messages from any language that has socket capability (for example, Perl or Java).
Message Definitions
Each message definition consists of one request and one or more responses. A request is a message
sent by the client to the client application to invoke a service. A response is a message returned to the
client by the client application to confirm that the a requested service has been invoked, the transaction
has been completed, or a connection has been established.
Request IDs
Each request has an integer identification (iid) as its first element. The client can use the iid to match
returned responses with the original requests The integer is expressed as a decimal number in ASCII
and has a range from 1 to 4294967295. The iid is optional. If an iid is not provided on a request, the
corresponding response also does not have one.
Optional Parameters
Optional parameters are surrounded by square brackets [ ] in the syntax examples. If you want to omit
an optional parameter from the request command, omit the entire field including the label, value, and
following comma. Do not leave a comma in as a place holder. The parameter labels in the fields that
are sent on the request provide enough information to determine which parameters were omitted.
However, the field labels must be present on all specified parameters.
48
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
For example, examine the following syntax:
sample_msg(field1 #, field2 #, [field3 ], field4 <0..255>)
If you want to omit the field3 parameter of a request, you might enter the request command using
the following syntax:
sample_msg(field1 123, field2 456, field4 128)
Common Response Format
Responses use the same basic format.
If an integer identification (iid) was provided in the request, the response iid corresponds to the
iid of the original request. A return code indicates either success (zero) or failure (non-zero). See
PDBI Message Error Codes, for a mapping between the return code labels described in this section and
the real integer value.
Additionally, an optional data element returns request-specific return information.
Each defined response declares the errors it returns (with their meanings) and what the data section
should look like for each error. If a response does not require a data section (meaning it is just a simple
ACK or NAK), the data section does not appear at all. In that case, the last item in the response is the
return code (rc).
The following example shows the syntax of the common response format. This format applies to all
response messages described in this chapter unless stated otherwise.
rsp ([iid ,] rc , [data (. . .)])
The format of each command response is shown in this chapter. The response information for each
command is described in detail in the Commands Manual.
Number Prefixes
The PDBA has the concept of default number prefixes. These are PDBA parameters that are configurable
from the EPAP Administration Manual. There are two number prefixes, one for DNs and DN Blocks
and the other for IMSIs. They are completely separate and can be set or not set independently. When
set, the number prefix values are automatically prepended to all DNs and DN Blocks or IMSIs
(depending on the prefix type) in PDBI requests. The values are also stripped off of the DNs, DN
Blocks and IMSIs in PDBI responses.
For example, if the DN Prefix is set to “34” in the UI and then an ent_sub request is sent to create
DN 12345, the actual DN stored in the database and sent to the EAGLE 5 ISS is “3412345”. If a PDBI
query is done for DN “12345” while the number prefix is still “34”, the “3412345” is found in the
database, but only the DN value “12345” is returned in the PDBI response.
It is possible to override a default number prefix. The symbol ‘#’ at the beginning of a DN, DN Block,
or IMSI means that it is the actual value and that no number prefix should be applied. This can occur
in both requests and responses.
For example, if the PDBI client sends a value “#12345” in a request, it means that he literally means
the value “12345”, not “3412345” (assuming that “34” is the that type's number prefix). If a PDBI
response comes back with a “#12345”, it means that the DN, DN Block or IMSI literally had the value
“12345”, not “3412345” (still assuming that “34” is the Number Prefix). A response with a “#” value
is returned if a DN, DN Block or IMSI is found in the database that did not match its type's number
prefix.
49
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
It is important to note that the “#” number prefix override is only valid for DNs, DN Blocks, and IMSIs.
The “#” symbol at the beginning of any other parameter value does not parse.
Since the number prefix and the number prefix override apply to all requests and responses that have
DNs, DN Blocks or IMSIs, it is not mentioned on each command separately.
The Number Prefix must conform to syntax rules for DN, NSDN, and DN Block values. Prefix lengths
must not exceed 10 digits.
Common Responses
The response code examples given for each message indicate those codes that are specific for that
message. Other response codes may apply, such as the more general error responses like
PDBI_NOT_CONNECTED, PDBI_NO_ACTIVE_ TXN, PDBI_NOT_FOUND, PDBI_BAD_ARGS.
These are not repeated for each message for simplicity.
No command can be issued until a connection has been established by issuing the connect request to
a PDBA. This restriction includes data provisioning commands such as ent_sub, rtrv_sub, etc., as
well as query commands such as status, dump_conn, etc.
Common Response Messages
Because the PDBI is a string-based API, all requests can return a Parse Failed response message or a
Bad Argument response message.
Parse Failed Response
The Parse Failed response message is identified by return code PARSE_FAILED. This response message
indicates a syntactical problem with the command received and can have a data section present to
provide more information about the parse failure. Table 2: Parse Failure Reasons lists possible reasons
for parse failures.
If the data section exists, two optional parameters are possible. The first parameter is a reason text
string stating explicitly what was wrong with the request. The second parameter is a location string
containing the place where the error occurs and, surrounded by curly braces, the portion of the original
request that contained the error. If no specific information is available, the data section is not present
in the response.
The following example shows the syntax of a Parse Failed response message:
data ([reason “Missing comma”], [location “XXXXXXX{} dn XXXXXXXXX”])
Table 2: Parse Failure Reasons
Description
Reason
The request verb did not match any of the known commands.
Unknown request verb
A white space character was missing after some element of the
request.
Space required
An opening or closing parenthesis was missing.
Missing paren
50
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
An invalid value was provided for one of the parameters.
Invalid value
Some mandatory parameter was missing.
parameter expected
Multiple occurrences of a parameter were found that does not allow
multiple occurrences.
Multiple
found
An unknown parameter was found.
Unknown parameter
A comma was missing after a parameter.
Missing comma
A parameter label was found with no value following it.
Value expected
A parameter that should have occurred only once was found more
than once.
Duplicate parameter
The value specified for a numeric parameter specified a number
greater than the maximum integer.
Numeric value too large
Bad Arguments Response
The Bad Arguments response message is identified by return code BAD_ARGS. This response message
indicates a semantic problem with the command received (for example, missing mandatory parameters
or invalid parameter combinations). The data section of a Bad Arguments response message has a
reason string that indicates what problem was encountered.
The following example shows the syntax of a Bad Arguments response message:
data (reason "No version provided")
Transaction Too Big Response
The internal EAGLE 5 ISS RTDB imposes a transaction size limit on the PDBA. In order to ensure that
the PDBA and the EAGLE 5 ISS databases are truly equivalent, this limit must be propagated by the
PDBA onto the PDBI clients. As a result, all database changing commands that occur within a write
transaction have the potential to fail with a TXN_TOO_BIG error.
The transaction size limit is 200. It limits the number of modifications to the EAGLE 5 ISS database.
The limit is 200 EAGLE 5 ISS RTDB updates. Unfortunately, this may not have a one to one correlation
to the PDBI update commands. This is because a single PDBI command can result in several changes
to the underlying database.
For example, a single PDBI command ent_sub, which contains IMSI 12345, DN 67890, DN 67891,
and SP 101010, is performed by two EAGLE 5 ISS database commands, one for the IMSI and one for
the DNs. The worst case number of EAGLE 5 ISS database commands that can occur due to one PDBI
51
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
command is nine if the force parameter is not used. If the force parameter is set to yes, the highest
possible number of EAGLE 5 ISS database commands in a single PDBI command is 17.
Multiple Segmented Responses
For some responses, it is possible that all of the data cannot be returned in one response. In this case,
multiple responses for the same request are returned. The first through (N-1)th response have a return
code of PARTIAL_SUCCESS to indicate that there should be more following them. The Nth response
has the return code SUCCESS to indicate that it is the final response. Multiple responses also use the
segment parameter at the beginning of the data section to allow the client to know that no responses
have been missed. The segment parameter value starts at one for the first response and is incremented
by 1 in each subsequent response for that request up to and including the final response that contains
the SUCCESS return code. For consistency, the segment parameter is also present in single message
responses with the value of 1.
Errors Not Returned to Client
Two return codes are not returned to a PDBI client. They are PDBI_INTERRUPTED and
PDBI_UNIMPLEMENTED.
•
PDBI_INTERRUPTED is used internally to cancel requests that are in progress if the PDBI client
abnormally disconnects. Since the return value is only used when the connection is broken, obviously
the return code cannot be returned to the client.
•
PDBI_UNIMPLEMENTED is used during development of new features and commands to allow
a valid return from commands that have been defined but are not implemented yet. Since the PDBA
currently implements all of the commands described in this specification, the return code cannot
be returned to the client.
Service Module Card Report
The PDBA keeps track of the status of the Service Module cards that it has connectivity to in the
customer's network. Each card reports its information to the PDBA at regular intervals. The PDBA
makes this information available to the PDBI clients in a Service Module card Report. The Service
Module card Report can be requested by the client in several ways. These ways are spelled out in
various commands that actually do the requesting. In all cases, the content and structure of the Service
Module card Report is the same. The intent of the Service Module card Report is to inform the receiver
what percentage of Service Module cards are at a specific database level. This information can be used
by the client to determine when enough Service Module cards have a specific update to consider it
safe for traffic.
The report includes the database level being reported on, the percentage of Service Module cards that
have that level, and the total number of known Service Module cards. Also included is a list of all
Service Module cards whose level did not meet or exceed the mentioned level. For each card in this
list, the report provides the CLLI, card location, database status, and database level. If the database
status is "loading", a percent loaded status is shown.
The client can either receive this report as a response to the rtrv_dsmrpt request, or it may be
periodically received asynchronously if the client specifies the appropriate connect parameters. When
the report is sent as a response to a normal synchronous request, the message begins with the normal
rsp(…) label. However, when the report is sent as an asynchronous message, it begins with dsmrpt(…)
to help identify that this is not a response to any recent request sent.
52
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
The messages described in this section are defined by commands and their parameters defined in the
PDBI.
Connect
After a client has established a socket connection with the PDBA on its well- known port (5873), the
client must issue a Connect request message. The PDBA returns a response message that indicates
whether it is capable of accepting a new connection. There is a limit to the number of PDBI connections;
the default is 16 clients. The connect command defines the Connect message.
If an attempt is made to connect more than the current client limit, a response is returned to the client:
PDBI_TOO_MANY_CONNECTIONS. After the response is returned, the socket is automatically
closed.
Note: Although the default limit is 16 PDBI connections, Tekelec is able to configure and support up
to 128 connections. If more than 16 concurrent client connections are required, contact the Customer
Care Center for more information.
Request
The Connect request message is issued by the client to request a connection to the PDBA.
Parameters :
(Optional) Informs the PDBA of the API version this client application knows. This
parameter decides whether or not the client application can successfully communicate
with the PDBA.
version
1.0
Values:
(Optional) Allows the client to specify the maximum size in Kilobytes of responses
that the PDBA sends back. This parameter ensures that retrieve requests that result in
rspsize
a large number of instances being returned come back in manageable-sized responses
to the client.
1 – 32 (default = 4)
Values:
(Optional) Allows the client to specify what action is to be taken if the Active or Standby
status of the PDBA changes as the result of a Switchover request.
switchactn
none – No action taken (default)
Values:
close– Terminate this connection by closing the socket
53
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
(Optional) Allows the client to specify what character the PDBA uses to terminate
responses.
endchar
null – Responses terminated with a NULL (\0) character (default)
Values:
newline– Responses terminated with a newline (\n) character
(Optional) Allows the client to specify the amount of time that the connection can
remain idle before the PDBA should terminate it.
idletimeout
none – Connection is never terminated by PDBA for idleness. (default)
Values:
1 – 44640 – Terminate this connection after this many idle minutes.
[00-44640]:[00-59] – Terminate this connection after this many idle
minutes and seconds. Limit is 44640:00.
(Optional) Transaction mode allows the client to specify whether this connection
operates in single transaction or normal transaction mode. This selection determines
txnmode
whether update requests can be sent individually or require the use of begin_txn
and end_txnboundaries, to be considered write transactions on their own and allowed.
normal – All updates must be specified inside begin_txn and end_txn
boundaries, which is the ‘normal transaction mode.’ (default)
Values:
single – Individual update requests are their own transactions. The use
of begin_txn and end_txn boundary commands is not required in
single transaction mode.
(Optional) Allows the client to specify whether or not it wants to receive the
asynchronous Service Module card Report messages.
dsmrpt
no – The Service Module card Reports are not wanted (default).
Values:
yes – The Service Module card Reports are wanted.
(Optional) Allows the client to specify what percent to use in the Service Module card
Report. This overrides the system wide default Service Module card Report percent
value for this one connection.
dsmrptperc
1 – 100
Values:
(optional) Allows the client to specify how often, in seconds, that the connection wants
to receive the SM Report. This overrides the system wide default SM Report frequency
dsmrptfreq
value for this one connection. This parameter is only meaningful if dsmrpt has been
specified as yes.
54
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
Note: If a connection is configured to send asynchronously SM Reports and processes
a command that takes a long time, SM Reports will be suspended until after the long
running command is completed. For example, if a client connects with a dsmrptfreq
of 1 and then requests a retrieve of millions of DNs, the SM Reports will be suspended
until the retrieve command has completed. Once the SM Reports resume they will
continue at the configured frequency..
1 – 86400 – Send the Service Module card Report in this many
seconds.
Values:
Request syntax :
Connect([iid XXXXX,] [version 1.0], [rspsize <1..32>], [switchactn ],
[endchar ], [idletimeout ],
[txnmode ], [dsmrpt ], [dsmrptperc <1..100>],
[dsmrptfreq <1..86400>])
Note: The limit is 44640:00.
Response
The Connect response message indicates whether or not the PDBA is capable and willing to accept a
new connection. If the connection is accepted, the data section in the response indicates the connection
ID (iid) that was assigned and whether the PDBA connected to was running as the Active or Standby
PDBA.
The return codes listed in this topic indicate the result of the Connect request. See PDBI Message Error
Codes for the recommended actions to help resolve the error related return codes.
Table 3: Connect Response Return Codes
Data Section Contents
Description
Text
Return
Code
The assigned connection
id and Active status are
returned.
Everything worked.
SUCCESS
0
data (connectId
########, side
active/standby)
NONE
A connect request was sent
on a socket that already had
an established connection.
ALREADY_CONNECTED
1003
The offending field is
returned in the data
section:
One of the fields specified
had an invalid value.
INVALID_VALUE
1012
55
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
Data Section Contents
Description
Text
Return
Code
data (param )
NONE
The specified version is not
known or not supported.
UNKNOWN_VERSION
1023
Disconnect
The Disconnect message is required to disconnect from the PDBA. The disconnect command
defines the Disconnect message.
Request
The Disconnect request message is issued by the client to request a disconnect from the PDBA. This
request tells the PDBA that the client has finished and allows the PDBA to clean up any
connection-related data. If the client has a transaction open, the transaction is automatically aborted
and any updates in the transaction are backed out. All Disconnectrequests result in the connection
being broken.
Note: The PDBA behavior is the same if the client neglects to send this request and just closes the
socket, or if the client abnormally terminates and the operating system closes the socket.
Request syntax :
disconnect([iid XXXXX])
Response
The Disconnect response message indicates either that the disconnect was successful without problems
or that the disconnect was achieved through aborting a still-active transaction. Aborting an active
transaction can occur because there were issues on the PDBA while cleaning up.
The return codes listed in Table 4: Disconnect Response Return Codes indicate the result of the Disconnect
request. See PDBI Message Error Codes for the recommended actions to help resolve the error related
return codes.
Table 4: Disconnect Response Return Codes
Data Section Contents
Description
Text
Return
Code
NONE
Everything worked.
SUCCESS
0
NONE
There was a transaction still active. It
was aborted.
ACTIVE_TXN
1010
56
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
The Begin Transaction message starts a read or write transaction, which is required for all data-related
commands (to create, update, delete, or retrieve subscriptions). A client connection can only have one
transaction open at a time. The begin_txncommand defines the Begin Transaction message.
The following commands are not required to be issued from within a transaction: switchover,
status, dump_conn.
Begin Transaction Request
By opening a read transaction, the client indicates to the PDBA that only data querying requests are
sent; no database-changing requests (create, update, or delete) are sent. Any database-changing requests
sent in a read transaction return a failure. Multiple client applications can have read transactions open
at the same time. Responses from querying requests are sent back to the client immediately. There is
no need to end the read transaction until you are through sending requests. Read transactions can be
sent to either the Active or Standby PDBAs.
Take care when opening a read transaction on the standby PDBA. While two PDBAs are communicating
normally, the data on the standby is valid. However, if the connection between the two PDBAs is
broken and they cannot communicate, the information contained on the standby PDBA does not
contain the new updates written to the active PDBA while the connection was broken. Thus in this
case, data obtained from a read transaction on the standby PDBA would not be current and accurate
information.
When the connection is re-established, the standby PDB is automatically re-synched to the current
level of the active PDB. It is possible to achieve greater performance by sending read transactions to
the standby PDB and write transactions to the active PDB. However, the precautions noted above
should be considered.
By opening a write transaction, the client informs the PDBA that the database is updated in some way.
After opening a write transaction, the client can send database-changing requests. Each command is
evaluated for validity and cached locally.
Note:
The commands are not saved in the database or sent to the RTDB until the write transaction is ended.
The commands within the transaction can also be aborted (or rolled back) with an abort_txn command
any time before the transaction is ended with the end_txn command. Only one client is allowed to
open a write transaction at a time. Write transactions can be opened only on the Active PDBA. Attempts
to open a write transaction on the Standby PDBA result in an error response.
It is possible for a client to make querying requests inside a write transaction. In this case, it is important
for the client to remember that the data returned can reflect any updates that the write transaction
has made so far but not yet committed. If the write transaction is aborted, the data retrieved from the
query might no longer be valid.
The begin_txn command defines the Begin Transaction request message.
Parameters :
(Mandatory) Type of transaction to open.
type
read or write
Values:
57
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
(Optional) How many seconds to wait for the write transaction if another
connection already has it.
timeout
0 (return immediately if not available; default)
Values:
1 - 3600 seconds
Request syntax :
begin_txn([iid XXXXX,] type , [timeout <0..3600>])
Begin Transaction Response
The return codes in Table 5: Begin Transaction Response Return Codes indicate the result of the Begin
Transaction request. See PDBI Message Error Codes for the recommended actions to help resolve the
error related return codes.
Table 5: Begin Transaction Response Return Codes
Data Section
Contents
Description
Text
Return
Code
NONE
Everything worked.
SUCCESS
0
The IP address
information of the
Another client already has a write
transaction open. This is returned
WRITE_UNAVAIL
1005
client that already
only to clients who have WRITE
access permissions.
has the write
transaction.
Clients who have only READ
access receive
data (id
, ip , port
)
NONE
The PDBI client making the
connection does not have WRITE
access permissions.
NO_WRITE_PERMISSION
1006
NONE
An attempt to open a write
transaction occurred on the
Standby PDBA.
STANDBY_SIDE
1008
NONE
A read or write transaction is
already open on this connection.
ACTIVE_TXN
1010
58
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
The offending field
is returned in the
data section:
One of the fields specified had an
invalid value.
INVALID_VALUE
1012
data (param
)
End Transaction
The End Transaction message completes a read or write transaction. The behavior depends on whether
the active transaction was a read or write transaction. The end_txn command defines the End
Transaction message.
End Transaction Request
For a read transaction, the End Transaction request message informs the PDBA that it is done making
queries. There are no database commitment.
For a write transaction that had successful updates, the End Transaction request message causes the
database changes to be committed and sent to the RTDB. The new database level is returned in the
data section of the response. The updates are not committed to the PDB until the end_txn command
is received.
If none of the updates was successful, a NO_UPDATES code is returned, and the dblevel does not
change. If any one of the commands was successful, a SUCCESS code is returned, and the dblevel is
incremented. Note that the dblevel is incremented to the same value following a transaction with
successful updates regardless of whether all updates were successful or only one.
The dblevel indicates the database level of the destination after the database action has occurred. It is
incremented after every write transaction. The level is incremented by one after each successful write
transaction, regardless of how many commands are sent in the transaction or whether the commands
are creates or deletes. This value is used by the Service Module cards to check consistency with
the RTDB.
Request syntax :
end_txn([iid XXXXX])
End Transaction Response
The End Transaction response message signals that the database update is done. This response does
not imply anything about whether or not the updates have made it to the RTDB yet. If the response
contains the SUCCESS return code, then the update was successfully committed in the PDB. If any
failure response is returned, the database commit failed. The end_txn request causes the transaction
to end regardless of whether any updates were actually made to the PDB.
The return codes listed in Table 6: End Transaction Response Return Codes indicate the result of the End
Transaction request. See PDBI Message Error Codes for the recommended actions to help resolve the
error related return codes.
59
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
Table 6: End Transaction Response Return Codes
Data Section Contents
Description
Text
Return
Code
If the transaction type was
write, the new database level is
returned.
Database update was successful.
SUCCESS
0
data (dblevel #######)
NONE
There was no currently active
transaction for this connection.
NO_ACTIVE_TXN
1009
NONE
The write transaction had no
successful updates. No database
NO_UPDATES
1017
change occurs, and no new database
level is returned.
NONE
An unexpected exception was
thrown during the database commit.
DB_EXCEPTION
1031
The entire transaction was rolled
back to ensure predicable behavior.
Contact Tekelec.
Abort Transaction
The Abort Transaction message aborts a currently executing read or write transaction. If the transaction
was a read transaction, the transaction is simply closed. The abort_txn command defines the Abort
Transaction message.
Request
This request aborts the currently executing transaction. If the current transaction is a write transaction,
any updates are rolled back.
Note:
Sending an abort transaction request while receiving responses from a query request does not cause
the query responses to stop.
Request syntax :
abort_txn([iid XXXXX])
Response
The return codes listed in Table 7: Abort Transaction Response Return Code indicates the result of the
Abort Transaction request. See PDBI Message Error Codes for the recommended actions to help resolve
the error related return codes.
60
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
Table 7: Abort Transaction Response Return Code
Data Section Contents
Description
Text
Return
Code
NONE
Abort successful.
SUCCESS
0
NONE
There was no currently active
transaction for this connection.
NO_ACTIVE_TXN
1009
Create Subscription
Create Subscription messages define different combinations of subscriptions by using the ent_sub
command with a different set of parameters. The following subscriptions can be created:
•
Subscription containing a single IMSI with no DNs
•
Subscription containing an IMSI and one to eight DNs
•
One or more DNs on the same NE with no IMSI
•
Subscription porting a block of DNs
When a request to create a subscription fails due to provisioning checks added for the EPAP
Provisioning Blacklist feature, the beginning (bprovbl) and ending (eprovbl) address string of the
conflicting EPAP Provisioning Blacklist will be returned in the response.
Subscription Containing a Single IMSI with No DNs
This command attempts to create an IMSI record that contains no DNs. By default, if the IMSI already
exists, the command is rejected. Using the optionalforce parameter changes the default behavior to
overwrite an existing IMSI. If the existing IMSI that is overwritten has DNs, those DNs are deleted. If
the IMSI conflicts with an entry in the EPAP Provisioning Blacklist table, the command will be rejected
and use of the optional force parameter will not override this function.
Note:
Only the G-Flex feature uses this type of subscription data.
The ent_sub command defines the request message for a subscription containing a single IMSI with
no DNs.
Parameters :
A single IMSI.
imsi
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
Specifies which SP the IMSI is on. The sp must correspond to an existing SP entity.
sp
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
61
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
(Optional) Indicates whether the client wants existing instances to be overwritten.
force
yes or no (default = no).
Values:
(Optional) Specify the number of seconds to wait for the write transaction if another
connection already has it. Clients waiting for the write transaction with this mechanism
timeout
are processed in the order that their requests were received. This option is only allowed
if the client used the txnmode single option on its connect request.
0 (return immediately if not available; default)
Values:
1 - 3600 seconds
Rules :
1. Using the force parameter cannot override conflicts with a provisioning blacklist entry.
Request syntax :
ent_sub([iid XXXXX,] imsi XXXXX , sp XXXXX
[, force yes/no] [, timeout <0..3600>])
Subscription Containing an IMSI and One to Eight DNs
This command attempts to create a subscription with one IMSI and up to eight DNs. If the IMSI already
exists and none of the DNs specified in the request exists as a stand-alone DN or on another IMSI, the
request adds the specified DNs to the existing IMSI. If the number of DNs currently existing on the
IMSI and the number of DNs specified in the request total more than eight, the request is rejected. If
any of the DNs in the request match a DN already existing on the specified IMSI, it is not counted
twice toward the eight-DN limit.The optional force parameter allows the client to change the default
behavior and overwrite existing entries. If any of the DNs in the request conflict with a DN Block
marked ineligible for splitting, the request is rejected. The use of optional force parameter would not
change this behavior. If the IMSI already existed, it is deleted and recreated with the data in the request.
This means that if the existing IMSI had DNs, those DNs are also deleted. If any of the DNs specified
in the request already exist, those existing DNs are changed to point to the new IMSI and removed
from the existing EPAP Provisioning Blacklist. If removing the DNs results in the previous IMSI having
no DNs, the IMSI with no DN is not deleted. If the IMSI or any of the DNs specified conflicts with an
entry in the EPAP table, the command will be rejected and use of the optional force parameter will
not override this function.
Note:
This type of subscription data is used only by the G-Flex feature.
The ent_sub command defines the request message for a subscription containing one IMSI and one
to eight DNs.
Parameters :
A single IMSI.
imsi
62
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
A DN (specified in international format) to be associated with the specified IMSI. There
can be up to eight DNs specified.
dn
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
Specifies which SP the IMSI and DNs are on. The sp must correspond to an existing
SP entity.
sp
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Indicates whether the client wants existing instances to be overwritten.
force
yes or no (default = no)
Values:
(Optional) Specify the number of seconds to wait for the write transaction if another
connection already has it. Clients waiting for the write transaction with this mechanism
timeout
are processed in the order that their requests were received. This option is only allowed
if the client used the txnmode single option on its connect request.
0 (return immediately if not available; default)
Values:
1 - 3600 seconds
Rules :
1. Using the force parameter cannot override conflicts with a provisioning blacklist entry.
2. When the IMSI does not already exist, the sp parameter is required. If the command specifies new
DNs for an existing, IMSI, the sp parameter is not required and the existing sp is not changed.
Request syntax :
ent_sub([iid XXXXX,] imsi XXXXX, dn XXXXX, …, dn XXXXX
, sp XXXXX, [, force yes/no] [, timeout <0..3600>])
One or More DNs on the Same NE with no IMSI
This command attempts to create up to eight single DNs without associating any of them with an
IMSI. They are all stand-alone DNs. Specifying more than one DN per request is only for performance
reasons. When the request is complete, there is no relationship between them.
By default, if any of the specified DNs conflicts with an existing single DN, the entire command is
rejected (including the DNs without conflict). The optional force parameter allows you to change
the default behavior to overwrite existing DNs.
63
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
If any of the DNs specified conflicts with an entry in the EPAP Provisioning Blacklist table or with a
DN Block marked ineligible for splitting, the command will be rejected and use of the optional force
parameter will not override this function.
Stand-alone DNs might or might not be associated with a network entity, but they cannot be associated
with both an SP and an RN at the same time.
If the newly created DN falls in the middle of an existing DN block, the new DN is considered to be
an exception to the block. The block is still kept intact; it is not split into separate blocks around the
new single DN, and the enter will succeed.
Guidelines for using the TIF Number Substitution parameter nsdn and st can be found in TIF Number
Substitution Relationships . The default value for subscriber type st is Public. The rtrv_sub() command
will not list st in its response for records that have the default value Public.
The IDP calling and called party blacklist parameters (cgbl/cdbl) are optional and have a default
value of no. The GRN entity can optionally be associated with the DN. The GRN is used as redirection
digits if either the calling or called party blacklist parameters are set to yes. The IDP Blacklist feature
is not related to the EPAP Provisioning Blacklist feature.
The (pt) parameter also defines the prepaid type. The prepaid type (portability type value of 3 or 4)
determines which IN platform the short message is directed to. The pt parameter can be specified
only for DNs; it cannot be specified when an IMSI is in the command.portability type (
For example, if a single ent_sub request specifies both an IMSI and a DN, you cannot specify pt.
However, you can use the upd_sub request to add a pt to the DN. To add a DN and pt in one
request, theent_sub must not specify an IMSI.
The pt values are mutually exclusive, that is, a single subscription cannot have simultaneously a
value 1 (ported out) and also 3 (prepaid 1). However, there is no effect on the G-Port function if pt
type 3 through 35 is specified. In these cases, if a message is being processed for G-Port and the DN
block matches with a pt type 3 through 35, G-Port considers it the same as if the pt type = none.
The ent_sub command defines the request message for one or more DNs on the same NE with no
IMSI.
Parameters :
A DN (specified in international format). There can be up to eight DNs specified.
dn
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) The portability type for the created DN. This field is only used by G-Port, A-Port,
IS41 GSM Migration, and PPSMS. For G-Port and A-Port, it controls number Portability
pt
Status encoding in SRI acks. For IS41 GSM Migration, it identifies whether a subscriber
has or has not migrated from IS41 to GSM, (maintaining a single GSM handset). For PPSMS,
it identifies a DN as one of two types needing PPSMS intercept.
none – no status (default = none)
Values:
0 – not known to be ported, migrated to IS41 or non-migrated IS41 sub (used for
IS41 GSM Migration)
1 – own number ported out (used for G-Port and A-Port)
2 – foreign number ported to foreign network (used for G-Port and A-Port)
64
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
3 – prepaid 1 (used by PPSMS)
4 – prepaid 2 (used by PPSMS)
5 – migrated to GSM (used for IS41 GSM Migration)
6 – prepaid 3 (used by PPSMS)
7 – prepaid 4 (used by PPSMS)
8 – prepaid 5 (used by PPSMS)
9 – prepaid 6 (used by PPSMS)
10 – prepaid 7 (used by PPSMS)
11 – prepaid 8 (used by PPSMS)
12 – prepaid 9 (used by PPSMS)
13 – prepaid 10 (used by PPSMS)
14 – prepaid 11 (used by PPSMS)
15 – prepaid 12 (used by PPSMS)
16 – prepaid 13 (used by PPSMS)
17 – prepaid 14 (used by PPSMS)
18 – prepaid 15 (used by PPSMS)
19 – prepaid 16 (used by PPSMS)
20 – prepaid 17 (used by PPSMS)
21 – prepaid 18 (used by PPSMS)
22 – prepaid 19 (used by PPSMS)
23 – prepaid 20 (used by PPSMS)
24 – prepaid 21 (used by PPSMS)
25 – prepaid 22 (used by PPSMS)
26 – prepaid 23 (used by PPSMS)
27 – prepaid 24 (used by PPSMS)
28 – prepaid 25 (used by PPSMS)
29 – prepaid 26 (used by PPSMS)
30 – prepaid 27 (used by PPSMS)
31 – prepaid 28 (used by PPSMS)
32 – prepaid 29 (used by PPSMS)
33 – prepaid 30 (used by PPSMS)
34 – prepaid 31 (used by PPSMS)
35 – prepaid 32 (used by PPSMS)
36 – not identified to be ported
65
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
(Optional) Specifies which SP the DN(s) are on. The sp must correspond to an existing SP
entity. Most INP-only customers do not need to use SP.
sp
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Specifies which RN the DNs are on. If the requested RN does not already exist,
a blank one with no values is automatically created. G-Flex-only customers should not
use RNs.
rn
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Specifies which Voicemail Server the DN(s) are on and corresponds to the E.164
address of the voicemail server. The VMS must correspond to an existing VMS entity.
vms
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Specifies which Generic Routing Number the DN(s) are on and corresponds to
the E.164 address used when the Eagle “NE Query Only Option” has been turned on. The
GRN must correspond to an existing GRN entity.
grn
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Additional Subscriber Data to be associated with the DN.
asd
1 to 10 hexadecimal digits expressed using ASCII characters.
Values
(Optional) The subscriber type for created DNs.
st
A decimal number in the range
Values
0 - public
1 - private
A TIF Number Substitution DN (specified in international format).
nsdn
Values:
a string with 5 to 15 characters where each character must be a number from 0 to F.
(Optional) IDP calling party blacklist.
cgbl
no - IDP calling party blacklist is disabled.
Values
yes - IDP calling party blacklist is enabled
66
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
(Optional) IDP called party blacklist.
cdbl
no - IDP called party blacklist is disabled.
Values
yes - IDP called party blacklist is enabled.
(Optional) Indicates whether the client wants existing instances to be overwritten.
force
yes or no (default = no)
Values:
(Optional) Specify the number of seconds to wait for the write transaction if another
connection already has it. Clients waiting for the write transaction with this mechanism
timeout
are processed in the order that their requests were received. This option is only allowed
if the client used the txnmode single option on its connect request.
0 (return immediately if not available; default)
Values:
1 - 3600 seconds
Rules :
1. It is not valid to specify bothsp andrn.
2. Conflicts with an EPAP Provisioning Blacklist entry and cannot be circumvented using the force
parameter.
3. It is not valid to specify more than 2 Network Entity types (sp,rn,vms,grn).
4. Total command length must not exceed 247 characters.
Note: Entering commands that exceed this length will result in the
PDBI_CMD_LENGTH_EXCEEDED error (value 1045). In order to avoid this, remove unnecessary
characters (including white space and parameters that are specified as the default value). If necessary,
consider performing this provisioning in two steps by using an enter command followed by an
update command.
5. The DN given bynsdn must exist.
6. Subscriber typest must be defined when using thensdn parameter
7. It is not legal to specify the 2 Network Entitiesasd, andnsdn.
Request syntax:
Ent_sub([iid XXXXX,] dn XXXXX, . . ., dn XXXXX, [pt ,] [st
<0/1>,] [nsdn XXXXX,][sp XXXXX,] [rn XXXXX,] [vms XXXXX,] [grn XXXXX,] [asd XXXXX,]
[cgbl ,] [cdbl ,] [force yes/no,] [timeout <0..3600>])
Subscription Porting a Block of DNs
This command attempts to create a new DN block. By default, if the new DN block conflicts with any
part of an existing DN block, the command is rejected. When the DN Block Self Healing feature is on,
if the new DN Block to be added is a subset of the existing block with different properties and the
existing DN Block has the splitting ability set to yes. The original DN Block will be split to accommodate
67
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
the new DN Block. A new parameter split is added for this purpose. The default value for split
parameter is yes.The force parameter is not supported for this command.
DN blocks might or might not be associated with a network entity, but they cannot be associated with
both an SP and an RN at the same time.
Guidelines for using the TIF Number Substitution (TIF NS) parameter nsdn and st can be found in
TIF Number Substitution Relationships . The default value for subscriber type st is Public. The
rtrv_sub() command will not list st in its response for records that have the default value Public.
Guidelines for using the DN Block Self Healing parameter split can be found in DN Block Self Healing.
The default value for the split parameter is yes. The rtrv_sub() command does not list split
in its response for records that have the default value yes.
The IDP calling and called party blacklist parameters (cgbl/cdbl) are optional and have a default
value of no. The GRN entity can optionally be associated with the DN Block. The GRN is used as
redirection digits if either the calling or called party blacklist parameters are set toyes. The IDP A-Party
Blacklist feature is not related to the EPAP Provisioning Blacklist feature.
The pt parameter is used to define the prepaid type. The prepaid type (value of 3 through 35)
determines which IN platform the short message is directed to. The pt values are mutually exclusive,
that is, a single subscription cannot have simultaneously a value 1 (ported out) and also 3 (prepaid
1). However, there is no effect on the G-Port function if pt type 3 through 35 is specified. In these
cases, if a message is being processed for G-Port and the DN block matches with a pt type 3 through
35, G-Port considers it the same as if the pt type = none. This command is used only in the G-Port
(and by extension PPSMS), V-Flex, and INP features; the portability type parameter applies only to
G-Port and PPSMS.
The ent_sub command defines the request message for a block of DNs.
Parameters :
The beginning DN (specified in international format).
bdn
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
The ending DN (specified in international format).
edn
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) The portability type for the created DN. This field is only used by G-Port,
A-Port, IS41 GSM Migration, and PPSMS. For G-Port and A-Port, it controls number
pt
Portability Status encoding in SRI acks. For IS41 GSM Migration, it identifies whether a
subscriber has or has not migrated from IS41 to GSM, (maintaining a single GSM handset).
For PPSMS, it identifies a DN as one of two types needing PPSMS intercept.
none – no status (default = none)
Values:
0 – not known to be ported, migrated to IS41 or non-migrated IS41 sub (used for
IS41 GSM Migration)
1 – own number ported out (used for G-Port and A-Port)
68
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
2 – foreign number ported to foreign network (used for G-Port and A-Port)
3 – prepaid 1 (used by PPSMS)
4 – prepaid 2 (used by PPSMS)
5 – migrated to GSM (used for IS41 GSM Migration)
6 – prepaid 3 (used by PPSMS)
7 – prepaid 4 (used by PPSMS)
8 – prepaid 5 (used by PPSMS)
9 – prepaid 6 (used by PPSMS)
10 – prepaid 7 (used by PPSMS)
11 – prepaid 8 (used by PPSMS)
12 – prepaid 9 (used by PPSMS)
13 – prepaid 10 (used by PPSMS)
14 – prepaid 11 (used by PPSMS)
15 – prepaid 12 (used by PPSMS)
16 – prepaid 13 (used by PPSMS)
17 – prepaid 14 (used by PPSMS)
18 – prepaid 15 (used by PPSMS)
19 – prepaid 16 (used by PPSMS)
20 – prepaid 17 (used by PPSMS)
21 – prepaid 18 (used by PPSMS)
22 – prepaid 19 (used by PPSMS)
23 – prepaid 20 (used by PPSMS)
24 – prepaid 21 (used by PPSMS)
25 – prepaid 22 (used by PPSMS)
26 – prepaid 23 (used by PPSMS)
27 – prepaid 24 (used by PPSMS)
28 – prepaid 25 (used by PPSMS)
29 – prepaid 26 (used by PPSMS)
30 – prepaid 27 (used by PPSMS)
31 – prepaid 28 (used by PPSMS)
32 – prepaid 29 (used by PPSMS)
33 – prepaid 30 (used by PPSMS)
34 – prepaid 31 (used by PPSMS)
69
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
35 – prepaid 32 (used by PPSMS)
36 – not identified to be ported
(Optional) Specifies which SP the DN(s) are on. The sp must correspond to an existing
SP entity.
sp
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Specifies which RN the DNs are on. If the requested RN does not already exist,
a blank one with no values is automatically created. G-Flex-only customers should not
use RNs.
rn
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Specifies which Voicemail Server the DN(s) are on and corresponds to the
E.164 address of the voicemail server. The VMS must correspond to an existing VMS
entity.
vms
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Specifies which Generic Routing Number the DN(s) are on and corresponds
to the E.164 address used when the Eagle “NE Query Only Option” has been turned on.
The GRN must correspond to an existing GRN entity.
grn
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Additional Subscriber Data to be associated with the DN Block.
asd
1 to 10 hexadecimal digits expressed using ASCII characters.
Values
(Optional) The subscriber type for created DNs.
st
A decimal number in the range
Values
0 - public
1 - private
A TIF NS DN (specified in international format).
nsdn
Values:
a string with 5 to 15 characters where each character must be a number from 0 to F.
70
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
(Optional) IDP calling party blacklist.
cgbl
no - IDP calling party blacklist is disabled.
Values
yes - IDP calling party blacklist is enabled
(Optional) IDP called party blacklist.
cdbl
no - IDP called party blacklist is disabled.
Values
yes - IDP called party blacklist is enabled.
(Optional) Specifies whether a DN Block is eligible for splitting.
split
yes – splitting is enabled for DN Block self heal (default= yes).
Values
no – splitting is disabled for DN Block self heal.
(Optional) Indicates whether the client wants existing instances to be overwritten.
force
yes or no ( default=no)
Values
(Optional) Specify the number of seconds to wait for the write transaction if another
connection already has it. Clients waiting for the write transaction with this mechanism
timeout
are processed in the order that their requests were received. This option is only allowed
if the client used the txnmode single option on its connect request.
0 (return immediately if not available; default)
Values:
1 - 3600 seconds
Rules :
1. The bdn and edn parameter values must have the same number of digits.
2. It is not valid to specify bothsp andrn.
3. It is not valid to specify more than 2 Network Entity types (sp,rn,vms,grn).
4. The DN given by nsdn must exist.
5. Subscriber type st must be defined when using the nsdn parameter
6. It is not legal to specify the 2 Network Entitiesasd, andnsdn.
The DN given by nsdn must exist. The DN given by nsdn must exist.
Request syntax :
Ent_sub([iid XXXXX,] dn XXXXX, . . ., dn XXXXX, [pt ,] [st
<0/1>,] [nsdn XXXXX,][sp XXXXX,] [rn XXXXX,] [vms XXXXX,] [grn XXXXX,] [asd XXXXX,]
71
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
[cgbl ,] [cdbl ,] [spilt ] [force yes/no,] [timeout
<0..3600>])
Create Subscription Responses
The return codes in Table 8: Create Subscription Response Return Codes might result from the Create
Subscription request. See PDBI Message Error Codes for the recommended actions to help resolve the
error related return codes.
Table 8: Create Subscription Response Return Codes
Data Section Contents
Description
Text
Return
Code
NONE
Everything worked.
SUCCESS
0
The offending field is returned
in the data section:
One of the fields specified had
an invalid value.
INVALID_VALUE
1012
data (param )
NONE
The create command was
sent on a read transaction.
WRITE_IN_READ_TXN
1011
The offending existing element
is returned. The type depends
on the type of request.
An entry was found already
in database matching an
element of this request. If
CONFLICT_FOUND
1014
force yes parameter is
data (dn XXXXX)
used and this option is
data (imsi XXXXX)
supported for this dta type,
this error is not returned.
data (bdn XXXXX, edn
XXXXX)
Rather, existing instances are
overwritten.
data (bprovbl XXXX, eprovBL
XXXX)
NONE
The specified NE does not
exist.
NE_NOT_FOUND
1021
NONE
The addition of DNs specified
in request would cause IMSI
to have more than eight DNs
IMSI_DN_LIMIT
1027
NONE
This request would cause
current transaction to be
larger than limit.
TXN_TOO_BIG
1029
72
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
Data Section Contents
Description
Text
Return
Code
NONE
The database already contains
data in request. No update
was necessary.
NO_UPDATES
1017
NONE
There was no currently active
transaction for this
connection.
NO_ACTIVE_TXN
1009
NONE
The PDBI client making
request does not have write
access permissions.
NO_WRITE_PERMISSION
1006
IP address information of
client that already has the
write transaction.
Another client already has a
write transaction open.
WRITE_UNAVAIL
1005
data (id , ip , port
)
NONE
The database to exceeds the
global limit of unique ASD
records.
MAX_ASD_LIMIT
1046
The offending existing element
will be returned. data (nsdn
XXXXX)
The DN specified by nsdn
does not exist.
DN_NOT_FOUND
1047
NONE
There are too many network
entities for a DN or DN Block.
SUB_NE_LIMIT
1044
NONE
This request contains too
many associations for a DN
MAX_ASSOCIATIONS
1048
or DN Block. The error is
raised when TIF Number
Substitution is combined with
other associations and distinct
from SUB_NE_LIMIT.
When using force to enter a
pre-existing IMSI that has a
This record is referred to by
other records.
UNRESOLVED_DEPENDENCY
1049
DN with unresolved
dependencies, the DN and the
count of each dependency are
returned. If more than one DN
has unresolved dependencies,
only one will be returned in
73
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
Data Section Contents
Description
Text
Return
Code
this error. Data (dn XXXXX,
counts([nsdn #####]))
The ST value of NSDN will be
returned in the data section
data (st <0/1>)
The specified ST value
conflicts with the ST value of
NSDN.
INCOMPATIBLE_ST
1050
The GRN value for the ASD
will be returned in the data
section. data (grn #####)
The GRN ROP value conflicts
with the GMT value for the
specified ASD.
INCOMPATIBLE_ROP
1051
The bdn and edn of conflicting
block will be returned.
The new DN Block requested
by the operator is a subset of
an existing block with same
properties.
DNB_SAME_PROPERTIES
1052
NONE
The new DN Block could not
be added to the database as
MULTI_DNB_CONFLICT
1053
multiple conflicting DN
Blocks were found within
given bdn-edn.
The bdn and edn of conflicting
block will be returned.
The new DN Block tries to
split an existing DN Block
that is not allowed to be split
DNB_SPLIT_NOT_ALLOWED
1054
or a new individual DN is
entered within an existing DN
Block that is not allowed to be
split.
Update Subscription
Update Subscription
This command modifies existing subscription data. Specific scenarios are described in the usage
variations below. Although all of the usage variations are called upd_sub , the existence of certain
parameters changes what is meant.
Modify the SP for a Specific IMSI
This command attempts to modify the sp field for a specific IMSI. If the IMSI has any DNs associated
with it, the DNs are modified to use the specified SP.
Note:
This type of subscription data is used only by the G-Flex feature.
Parameters:
A single IMSI.
imsi
74
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
Specifies which SP the IMSI is being moved to. The SP must correspond to an existing
SP entity.
sp
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Specify the number of seconds to wait for the write transaction if another
connection already has it. Clients waiting for the write transaction with this mechanism
timeout
are processed in the order that their requests were received. This option is only allowed
if the client used the txnmode single option on its connect request.
0 (return immediately if not available; default)
Values:
1 - 3600 seconds
Rules :
1. Thesp parameter must be specified.
Request syntax :
upd_sub([iid XXXXX,] imsi XXXXX, sp XXXXX,
[timeout <0..3600>])
Modify the Subscription Data of a Single DN
This command attempts to modify the Network Entity (SP, RN, VMS,or GRN) and portability type
fields of a specific DN. If the DN is a stand-alone DN, the fields are simply modified. If the DN is
associated with an IMSI and a new NE was specified in the request, the DN is removed from the IMSI
and changed to use the specified NE directly.
If a DN has a NE association and an update command specifies a new NE of the same NE type, a
replacement is attempted. Updating a DN by setting a NE type (sp/rn/vms/grn) to the value none,
results in a DN that is no longer associated with that NE. If a DN has an existing NE association and
an update command specifies a NE of a different NE type, will attempt to add a new NE association.
To replace a NE association with a new NE association of a different type, remove the old NE (specifying
value none) and enter the new NE. This is done in a single request or as two separate requests (one
command to remove the old NE and one command to add the new NE). Any update in which a
Network Entity type is specified is only allowed if the DN has not reached its maximum of 2 NEs.
Guidelines for using the TIF Number Substitution parameter nsdn and st can be found in TIF Number
Substitution Relationships . The default value for subscriber type st is Public. The rtrv_sub() command
will not list st in its response for records that have the default value Public.
The IDP calling and called party blacklist parameters (cgbl/cdbl) are optional and have a default
value of no. The GRN entity can optionally be associated with the DN. The GRN is used as redirection
digits if either the calling or called party blacklist parameters are set to yes. The IDP A-Party Blacklist
feature is not related to the EPAP Provisioning Blacklist feature.
75
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
This command is used for G-Flex, G-Port, and INP features, although some of the specific parameters
are only meaningful on specific features.
Parameters:
A single DN (specified in international format).
dn
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) The portability type for the created DN. This field is only used by G-Port, A-Port,
IS41 GSM Migration, and PPSMS. For G-Port and A-Port, it controls number Portability
pt
Status encoding in SRI acks. For IS41 GSM Migration, it identifies whether a subscriber
has or has not migrated from IS41 to GSM, (maintaining a single GSM handset). For PPSMS,
it identifies a DN as one of two types needing PPSMS intercept.
none – no status (default = none)
Values:
0 – not known to be ported, migrated to IS41 or non-migrated IS41 sub (used for
IS41 GSM Migration)
1 – own number ported out (used for G-Port and A-Port)
2 – foreign number ported to foreign network (used for G-Port and A-Port)
3 – prepaid 1 (used by PPSMS)
4 – prepaid 2 (used by PPSMS)
5 – migrated to GSM (used for IS41 GSM Migration)
6 – prepaid 3 (used by PPSMS)
7 – prepaid 4 (used by PPSMS)
8 – prepaid 5 (used by PPSMS)
9 – prepaid 6 (used by PPSMS)
10 – prepaid 7 (used by PPSMS)
11 – prepaid 8 (used by PPSMS)
12 – prepaid 9 (used by PPSMS)
13 – prepaid 10 (used by PPSMS)
14 – prepaid 11 (used by PPSMS)
15 – prepaid 12 (used by PPSMS)
16 – prepaid 13 (used by PPSMS)
17 – prepaid 14 (used by PPSMS)
18 – prepaid 15 (used by PPSMS)
19 – prepaid 16 (used by PPSMS)
20 – prepaid 17 (used by PPSMS)
21 – prepaid 18 (used by PPSMS)
76
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
22 – prepaid 19 (used by PPSMS)
23 – prepaid 20 (used by PPSMS)
24 – prepaid 21 (used by PPSMS)
25 – prepaid 22 (used by PPSMS)
26 – prepaid 23 (used by PPSMS)
27 – prepaid 24 (used by PPSMS)
28 – prepaid 25 (used by PPSMS)
29 – prepaid 26 (used by PPSMS)
30 – prepaid 27 (used by PPSMS)
31 – prepaid 28 (used by PPSMS)
32 – prepaid 29 (used by PPSMS)
33 – prepaid 30 (used by PPSMS)
34 – prepaid 31 (used by PPSMS)
35 – prepaid 32 (used by PPSMS)
36 – not identified to be ported
(Optional) Specifies which SP the DN is being moved to. The sp must correspond to an
existing SP entity. Most INP only customers do not need to use sp.
sp
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
none – Sets the sp to not point to any network entity.
(Optional) Specifies which Voicemail Server the DN(s) are on and corresponds to the E.164
address of the voicemail server. The VMS must correspond to an existing VMS entity.
vms
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Specifies which Generic Routing Number the DN(s) are on and corresponds to
the E.164 address used when the Eagle “NE Query Only Option” has been turned on. The
GRN must correspond to an existing GRN entity.
grn
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
none – Sets the rms to not point to any GRN entity.
(Optional) Specifies which RN the DN is being moved to. If the requested RN does not
already exist, a blank one with no values is automatically created. G-Flex-only customers
should not use RNs.
rn
77
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
none – Sets the rn to not point to any network entity.
(Optional) Additional Subscriber Data to be associated with the DN Block. Leading zeros
are significant.
asd
1 to 10 hexadecimal digits expressed using ASCII characters. Leading
zeros are significant.
Values
none – Removes additional subscriber data from the DN.
(Optional) The subscriber type for created DNs.
st
A decimal number in the range
Values
0 - public
1 - private
A TIF NS DN (specified in international format).
nsdn
Values:
a string with 5 to 15 characters where each character must be a number from 0 to F.
(Optional) IDP calling party blacklist.
cgbl
no - IDP calling party blacklist is disabled.
Values
yes - IDP calling party blacklist is enabled
(Optional) IDP called party blacklist.
cdbl
no - IDP called party blacklist is disabled.
Values
yes - IDP called party blacklist is enabled.
(Optional) Specify the number of seconds to wait for the write transaction if another
connection already has it. Clients waiting for the write transaction with this mechanism
timeout
are processed in the order that their requests were received. This option is only allowed if
the client used the txnmode single option on its connect request.
0 (return immediately if not available; default)
Values:
1 - 3600 seconds
Rules :
1. It is not valid to create more than 2 Network Entity associations.
78
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
2. The DN given by nsdn must exist.
3. Cannot update a DN to have the 2 Network Entities asd and nsdn together.
Request syntax :
Upd_sub([iid XXXXX,] dn XXXXX, [pt ,] [st <0/1>,] [nsdn XXXXX,]
[sp XXXXX,] [rn XXXXX,] [vms XXXXX,] [grn XXXXX,] [asd XXXXX,] [cgbl ,]
[cdbl ,] [timeout <0..3600>])
Move an existing DN to an Existing IMSI
This command is used to move an existing DN to an existing IMSI. The DN is changed to use the SP
of the IMSI.
If the DN is already associated with an IMSI, it will be removed from that IMSI and associated with
the new IMSI. The original IMSI will not be removed, even if this results in it having no DNs associated
with it.
If the DN is already associated with a vms or grn, those NE associations will be removed when the
DN is moved to the specified IMSI. IMSIs and DNs on IMSIs can only be associated with 1 NE.
Parameters :
A single DN (specified in international format).
dn
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
A single IMSI.
imsi
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Specify the number of seconds to wait for the write transaction if another
connection already has it. Clients waiting for the write transaction with this mechanism
timeout
are processed in the order that their requests were received. This option is only allowed
if the client used the txnmode single option on its connect request.
0 (return immediately if not available; default)
Values:
1 - 3600 seconds
Request syntax :
upd_sub([iid XXXXX,] dn XXXXX, imsi XXXXX
[, timeout <0..3600>])
Modify the Subscription Information for a DN Block
This command modifies the subscription data for a DN block. The block specified must exactly match
an existing block. It cannot span multiple blocks or into unused DNs. It cannot be a subset of an existing
block
79
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
DN blocks might or might not be associated with a network entity, but they cannot be associated with
both an SP and an RN at the same time. If a DN block has a NE association and the update command
specifies a new NE of the same NE type, a replacement is attempted. Updating a DN block by setting
a NE type (sp/rn/vms/grn) to the value none, results in a DN that is no longer associated with that
NE. If a DN block has an existing NE association and the update command specifies a NE of a different
NE type, will attempt to add a new NE association. To replace a NE association with a new NE
association of a different type, remove the old NE (specifying value none) and enter the new NE. This
is done in a single request or as two separate requests (one command to remove the old NE and one
command to add the new NE). Any update in which a Network Entity type is specified is only allowed
if the DN block has not reached its maximum of 2 NEs.
Guidelines for using the Number Substitution parameter nsdn and st can be found in TIF Number
Substitution Relationships . The default value for subscriber type st is Public. The rtrv_sub() command
will not list st in its response for records that have the default value Public.
The IDP calling and called party blacklist parameters (cgbl/cdbl) are optional and have a default
value of no. The GRN entity can optionally be associated with the DN. The GRN is used as redirection
digits if either the calling or called party blacklist parameters are set to yes. The IDP A-Party Blacklist
feature is not related to the EPAP Provisioning Blacklist feature.
The DN Block Self Healing parameter (split) is optional and has a default value of yes. This parameter
can be modified by the user at any time without affecting any other attribute of the DN Block. Guidelines
for the DN Block Self Healing feature can be found in DN Block Self Healing. The rtrv_sub() command
will not list split in its response for records that have the default value yes.
Note:
DN blocks are used only in the G-Port, PPSMS, and INP features.
Parameters :
The beginning DN (specified in international format).
bdn
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
The ending DN (specified in international format).
edn
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) The portability type for the created DN. This field is only used by G-Port, A-Port,
IS41 GSM Migration, and PPSMS. For G-Port and A-Port, it controls number Portability
pt
Status encoding in SRI acks. For IS41 GSM Migration, it identifies whether a subscriber
has or has not migrated from IS41 to GSM, (maintaining a single GSM handset). For PPSMS,
it identifies a DN as one of two types needing PPSMS intercept.
none – no status (default = none)
Values:
0 – not known to be ported, migrated to IS41 or non-migrated IS41 sub (used for
IS41 GSM Migration)
1 – own number ported out (used for G-Port and A-Port)
2 – foreign number ported to foreign network (used for G-Port and A-Port)
80
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
3 – prepaid 1 (used by PPSMS)
4 – prepaid 2 (used by PPSMS)
5 – migrated to GSM (used for IS41 GSM Migration)
6 – prepaid 3 (used by PPSMS)
7 – prepaid 4 (used by PPSMS)
8 – prepaid 5 (used by PPSMS)
9 – prepaid 6 (used by PPSMS)
10 – prepaid 7 (used by PPSMS)
11 – prepaid 8 (used by PPSMS)
12 – prepaid 9 (used by PPSMS)
13 – prepaid 10 (used by PPSMS)
14 – prepaid 11 (used by PPSMS)
15 – prepaid 12 (used by PPSMS)
16 – prepaid 13 (used by PPSMS)
17 – prepaid 14 (used by PPSMS)
18 – prepaid 15 (used by PPSMS)
19 – prepaid 16 (used by PPSMS)
20 – prepaid 17 (used by PPSMS)
21 – prepaid 18 (used by PPSMS)
22 – prepaid 19 (used by PPSMS)
23 – prepaid 20 (used by PPSMS)
24 – prepaid 21 (used by PPSMS)
25 – prepaid 22 (used by PPSMS)
26 – prepaid 23 (used by PPSMS)
27 – prepaid 24 (used by PPSMS)
28 – prepaid 25 (used by PPSMS)
29 – prepaid 26 (used by PPSMS)
30 – prepaid 27 (used by PPSMS)
31 – prepaid 28 (used by PPSMS)
32 – prepaid 29 (used by PPSMS)
33 – prepaid 30 (used by PPSMS)
34 – prepaid 31 (used by PPSMS)
35 – prepaid 32 (used by PPSMS)
81
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
36 – not identified to be ported
(Optional) Specifies which SP the DN Block is being moved to. The sp must correspond
to an existing SP entity.
sp
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
none – Sets the sp to not point to any SP entity.
(Optional) Specifies which RN the DN is being moved to. If the requested RN does not
already exist, a blank one with no values is automatically created. G-Flex-only customers
should not use RNs.
rn
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
none – Sets the rn to not point to any RN entity.
(Optional) Specifies which Voicemail Server the DN(s) are on and corresponds to the E.164
address of the voicemail server. The VMS must correspond to an existing VMS entity.
vms
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
none – Sets the vms to not point to any VMS entity.
(Optional) Specifies which Generic Routing Number the DN(s) are on and corresponds to
the E.164 address used when the Eagle “NE Query Only Option” has been turned on. The
GRN must correspond to an existing GRN entity.
grn
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
none – Sets the grn to not point to any GRN entity.
(Optional) Additional Subscriber Data to be associated with the DN Block.
asd
1 to 10 hexadecimal digits expressed using ASCII characters. Leading
zeros are significant.
Values
none – Removes additional subscriber data from the DN.
(Optional) The subscriber type for created DNs.
st
A decimal number in the range
Values
0 - public
1 - private
82
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
A TIF Number Substitution DN (specified in international format).
nsdn
Values:
a string with 5 to 15 characters where each character must be a number from 0 to F.
(Optional) IDP calling party blacklist.
cgbl
no - IDP calling party blacklist is disabled.
Values
yes - IDP calling party blacklist is enabled
(Optional) IDP called party blacklist.
cdbl
no - IDP called party blacklist is disabled.
Values
yes - IDP called party blacklist is enabled.
(Optional) Specifies whether a DN Block is eligible for splitting.
split
yes – splitting is enabled for DN Block self heal (default = yes).
Values
no – splitting is disabled for DN Block self heal.
(Optional) Specify the number of seconds to wait for the write transaction if another
connection already has it. Clients waiting for the write transaction with this mechanism
timeout
are processed in the order that their requests were received. This option is only allowed
if the client used the txnmode single option on its connect request.
0 (return immediately if not available; default)
Values:
1 - 3600 seconds
Rules :
1. The bdn and edn parameter values must have the same number of digits.
2. It is not valid to create more than 2 Network Entity associations.
3. The DN given by nsdn must exist.
4. A DN Block cannot be updated to have two Network Entities, asd and nsdn, together.
5. See TIF Number Substitution Relationships for complete rules.
6. See DN Block Self Healing for complete rules.
The bdn and edn parameter values must have the same number of digits.
Request syntax :
Upd_sub([iid XXXXX,] bdn XXXXX, edn XXXXX, [pt ,] [sp XXXXX,]
[rn XXXXX,]
83
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
[vms XXXXX,] [grn XXXXX,] [asd XXXXX,] [st <0/1>,] [nsdn XXXXX,] [cgbl
Another client already has a write
transaction open.
WRITE_UNAVAIL
1005
client that
already has
write
transaction.
data (id
, ip , port
)
NONE
This request would cause the DN or
DN Block to have more than the
maximum of 2 NE associations
SUB_NE_LIMIT
1044
NONE
This request would cause the
database to exceed the global limit
of unique ASD records.
MAX_ASD_LIMIT
1046
The offending
existing
The DN specified by nsdn does not
exist.
DN_NOT_FOUND
1047
element will be
returned. data
(nsdn XXXXX)
NONE
This request contains too many
associations for a DN or DN Block.
MAX_ASSOCIATIONS
1048
The error is raised when Number
Substitution is combined with other
associations and distinct from
SUB_NE_LIMIT.
The ST value of
NSDN will be
The specified ST value conflicts with
the ST value of NSDN.
INCOMPATIBLE_ST
1050
returned in the
data section
data (st <0/1>)
When using
force to enter a
This record is referred to by other
records.
UNRESOLVED_DEPENDENCY
1049
pre-existing
IMSI that has a
DN with
unresolved
dependencies,
the DN and the
85
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
count of each
dependency
are returned. If
more than one
DN has
unresolved
dependencies,
only one will
be returned in
this error. Data
(dn XXXXX,
counts([nsdn
#####]))
Delete Subscription
This command deletes subscription records. The specific usage variations follow. Although all of the
usage variations are called dlt_sub, the existence of certain parameters change what is meant.
Delete an IMSI
This command attempts to delete the specified IMSI. If the IMSI has any DNs associated with it, the
DNs are also deleted.
Parameters :
The IMSI to delete.
imsi
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Specify the number of seconds to wait for the write transaction if another
connection already has it. Clients waiting for the write transaction with this mechanism
timeout
are processed in the order that their requests were received. This option is only allowed
if the client used the txnmode single option on its connect request.
0 (return immediately if not available; default)
Values:
1 - 3600 seconds
86
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
Request syntax :
dlt_sub([iid XXXXX,] imsi XXXXX, [timeout <0..3600>])
Delete a Single DN
This command attempts to delete a single DN. The DN is deleted even if the DN is associated with
an IMSI. The IMSI remains even if this operation results in no DNs being associated with the IMSI.
Parameters :
The single DN to delete (specified in international format).
dn
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Specify the number of seconds to wait for the write transaction if another
connection already has it. Clients waiting for the write transaction with this mechanism
timeout
are processed in the order that their requests were received. This option is only allowed
if the client used the txnmode single option on its connect request.
0 (return immediately if not available; default)
Values:
1 - 3600 seconds
Request syntax :
dlt_sub([iid XXXXX,] dn XXXXX, [timeout <0..3600>])
Delete a DN block
This command attempts to delete an existing DN block. The block specified must exactly match an
existing block. It cannot span multiple blocks or into unused DNs. It cannot be a subset of an existing
block.
If the DN Block Self Healing feature is on, an attempt to delete the subrange when master range
properties mismatch or an attempt to delete the master range itself will be rejected. Guidelines for the
DN Block Self Healing feature can be found in DN Block Self Healing.
Parameters :
The beginning DN of the block to delete (specified in international format).
bdn
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
The ending DN of the block to delete (specified in international format).
edn
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
87
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
(Optional) Specify the number of seconds to wait for the write transaction if another
connection already has it. Clients waiting for the write transaction with this mechanism
timeout
are processed in the order that their requests were received. This option is only allowed
if the client used the txnmode single option on its connect request.
0 (return immediately if not available; default)
Values:
1 - 3600 seconds
Rules :
1. The bdn and edn parameter values must have the same number of digits.
Request syntax :
dlt_sub([iid XXXXX,] bdn XXXXX, edn xxxxx, [timeout <0..3600>])
Delete Subscription Responses
The return codes listed in Table 10: Delete Subscription Response Return Codes indicate the result of the
Delete Subscription request. See PDBI Message Error Codes for the recommended actions to help resolve
the error related return codes.
Table 10: Delete Subscription Response Return Codes
Data Section
Contents
Description
Text
Return
Code
NONE
Everything worked.
SUCCESS
0
NONE
The command was sent on a read
only transaction.
WRITE_IN_READ_TXN
1011
NONE
The requested DN, DN block, or
IMSI was not found.
NOT_FOUND
1013
NONE
This request would cause current
transaction to be larger than the
limit.
TXN_TOO_BIG
1029
NONE
There is no currently active
transaction for this connection.
NO_ACTIVE_TXN
1009
NONE
PDBI client making request does
not have write access permissions.
NO_WRITE_PERMISSION
1006
IP address
information of client
Another client already has a write
transaction open.
WRITE_UNAVAIL
1005
88
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
that already has the
write transaction.
data (id
, ip , port
)
When using force to
enter a pre-existing
This record is referred to by other
records.
UNRESOLVED_DEPENDENCY
1049
IMSI that has a DN
with unresolved
dependencies, the
DN and the count of
each dependency are
returned. If more
than one DN has
unresolved
dependencies, only
one will be returned
in this error. Data
(dn XXXXX,
counts([nsdn
#####]))
The bdn and edn of
two differing master
Fragments of a master range have
differing attributes. No automated
DNB_PARENT_PROPERTY
_MISMATCH
1055
range fragments are
returned.
resolution is possible to coalesce
these records to satisfy a delete
command.
The bdn and edn of
a subrange are
returned.
Fragments of a master range
cannot be deleted while subranges
are present
DNB_DLT_NOT_ALLOWED
1056
Retrieve Subscription Data
The command allows the client to retrieve information about the existing subscription data. The specific
usage variations follow. Although all of the usage variations are called rtrv_sub, the existence of
certain parameters change what is meant.
When multiple filtering parameters are specified (pt, sp, and rn), any output data must pass ALL of
the filters specified. For example, if sp is specified, only instances referencing the specified SP values
will be returned.
89
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
Retrieve Subscription Information About a Specific DN
This command retrieves the subscription information for a specific DN. If the G-Port or INP feature
is available and the specific DN is not found, the PDBA also tries to find a DN block that the DN is in.
Parameters :
The specific DN to retrieve (specified in international format).
dn
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Lets the requester specify the type of output data to be returned. See Retrieve
Subscription Data Responses for additional information.
data
all – Return all known data for each instance. (default)
Values:
neonly – Return only the Network Element information for each
instance.
Request syntax :
rtrv_sub([iid XXXXX,] dn XXXXX, [data ]
Retrieve Subscription Information for a Range of DNs
This command retrieves all of the subscription data within a range of DNs.
Parameters :
The starting dn for the DN range (specified in international format).
bdn
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
The ending dn for the DN range (specified in international format).
edn
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Whether to report the DN blocks or the single DNs.
type
block – Searches the DN Block table. Reports only DN Blocks, regardless of
whether any provisioned Single DNs fall within the specified number range
Values:
single (default) - Searches the Single DN table. Returns only DNs that were
provisioned as Single DNs, regardless of whether the DN number falls within
the number range of a provisioned DN block)
90
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
(Optional) The portability type for the created DN. This field is only used by G-Port, A-Port,
IS41 GSM Migration, and PPSMS. For G-Port and A-Port, it controls number Portability
pt
Status encoding in SRI acks. For IS41 GSM Migration, it identifies whether a subscriber
has or has not migrated from IS41 to GSM, (maintaining a single GSM handset). For PPSMS,
it identifies a DN as one of two types needing PPSMS intercept.
none – no status (default = none)
Values:
0 – not known to be ported, migrated to IS41 or non-migrated IS41 sub (used for
IS41 GSM Migration)
1 – own number ported out (used for G-Port and A-Port)
2 – foreign number ported to foreign network (used for G-Port and A-Port)
3 – prepaid 1 (used by PPSMS)
4 – prepaid 2 (used by PPSMS)
5 – migrated to GSM (used for IS41 GSM Migration)
6 – prepaid 3 (used by PPSMS)
7 – prepaid 4 (used by PPSMS)
8 – prepaid 5 (used by PPSMS)
9 – prepaid 6 (used by PPSMS)
10 – prepaid 7 (used by PPSMS)
11 – prepaid 8 (used by PPSMS)
12 – prepaid 9 (used by PPSMS)
13 – prepaid 10 (used by PPSMS)
14 – prepaid 11 (used by PPSMS)
15 – prepaid 12 (used by PPSMS)
16 – prepaid 13 (used by PPSMS)
17 – prepaid 14 (used by PPSMS)
18 – prepaid 15 (used by PPSMS)
19 – prepaid 16 (used by PPSMS)
20 – prepaid 17 (used by PPSMS)
21 – prepaid 18 (used by PPSMS)
22 – prepaid 19 (used by PPSMS)
23 – prepaid 20 (used by PPSMS)
24 – prepaid 21 (used by PPSMS)
25 – prepaid 22 (used by PPSMS)
26 – prepaid 23 (used by PPSMS)
27 – prepaid 24 (used by PPSMS)
91
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
28 – prepaid 25 (used by PPSMS)
29 – prepaid 26 (used by PPSMS)
30 – prepaid 27 (used by PPSMS)
31 – prepaid 28 (used by PPSMS)
32 – prepaid 29 (used by PPSMS)
33 – prepaid 30 (used by PPSMS)
34 – prepaid 31 (used by PPSMS)
35 – prepaid 32 (used by PPSMS)
36 – not identified to be ported
(Optional) Filters the request to just retrieve the DNs in the range that are on the provided
SP.
sp
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
none – Filters for instances not on an SP.
(Optional) Filters the request to just retrieve the DNs in the range that are on the provided
RN.
rn
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
none – Filters for instances not on an RN.
(Optional) Specifies which Voicemail Server the DN(s) are on and corresponds to the E.164
address of the voicemail server. The VMS must correspond to an existing VMS entity.
vms
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
none – Sets the vms to not point to any network entity.
(Optional) Specifies which Generic Routing Number the DN(s) are on and corresponds to
the E.164 address used when the Eagle “NE Query Only Option” has been turned on. The
GRN must correspond to an existing GRN entity.
grn
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
none – Sets the grn to not point to any network entity.
(Optional) Additional Subscriber Data to be associated with the DN Block.
asd
1 to 10 hexadecimal digits expressed using ASCII characters. Leading
zeros are significant.
Values
92
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
none – Removes additional subscriber data from the DN.
(Optional) The subscriber type for created DNs.
st
A decimal number in the range
Values
0 - public
1 - private
A Number Substitution DN (specified in international format).
nsdn
Values:
a string with 5 to 15 characters where each character must be a number from 0 to F.
(Optional) IDP calling party blacklist.
cgbl
no - IDP calling party blacklist is disabled.
Values
yes - IDP calling party blacklist is enabled
(Optional) IDP called party blacklist.
cdbl
no - IDP called party blacklist is disabled.
Values
yes - IDP called party blacklist is enabled.
(Optional) Specifies the DN Block splitting ability. This parameter filters the request to
retrieve only those DN Blocks that have the specified split value. This parameter must be
split
specified in order to be used as a filter. If this parameter is not specified, filtering on the
split value is not performed.
no – DN Block splitting is disabled.
Values
yes – DN Block splitting is enabled.
(Optional) Lets the requester specify the type of output data to be returned. See Retrieve
Subscription Data Responses for additional information.
data
all– Return all known data for each instance (default).
Values:
neonly – Return only the Network Element information for each instance.
count – Return only a single instance count of all instances matching the
query.
(Optional) Allows the client to limit the number of items that are returned.
num
1 - 40000000
Values:
93
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
1. Specifying both sp and rn is not allowed because it would always result in no instances being
found.
2. Thetype parameter acts to filter the responses based on how the data was provisioned. For instance,
ifblock is specified, only DN blocks (that were provisioned as blocks) are returned. Ifsingle is
specified, only DNs that were provisioned as single DNs are returned.
Note:
If a substantial number of records are requested, there is a significant delay before responses start
coming back.
3. Specifying a combination of 2 Network Entity types (sp, rn, vms, grn) other than sp and rn is
allowed and will result in instances matching both associations. Only specifying 1 NE will return
all instances associated with the NE, even if instances are associated with other NEs.
There is no association between the position of a DN in the database and the chronological order in
which it is provisioned. Thus, the response to the retrieve command gives no indication of which DNs
were provisioned first and which were provisioned last. It simply returns all DNs associated with an
IMSI. Likewise, the provisioning order of DNs have no effect on where DNs are physically placed in
the database.
The instance count values are given as optional because they are not returned for every procedure
call. For instance, IMSIs are not returned for commands related to retrieval of DNs.
Request syntax :
Rtrv_sub([iid XXXXX,] bdn XXXXX, edn XXXXX, [type ,] [pt
] [st <0/1>,] [nsdn XXXXX,] [sp XXXXX,] [rn XXXXX,] [vms XXXXX,]
[grn XXXXX,] [asd XXXXX,][cgbl ,] [cdbl ,] [split ,] [data
,] [num <1..40000000>])
Retrieve Subscription Information About a Specific IMSI
This command retrieves the subscription information for a specific IMSI. If the IMSI is associated with
DNs, they are returned as well.
Parameters :
The specific IMSI to retrieve.
imsi
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Lets the requester specify the type of output data to be returned. See Retrieve
Subscription Data Responses for additional information.
data
all – Return all known data for each instance (i.e., list the DNs on each
IMSI) (default).
Values:
neonly – Return only the Network Element information for each
instance.
94
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
Request syntax :
rtrv_sub([iid XXXXX,] imsi XXXXX, [data ])
Retrieve Subscription Information for a Range of IMSIs
This command retrieves all of the subscription data within a range of IMSIs.
Parameters :
The starting IMSI for the IMSI range.
bimsi
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
The ending IMSI for the IMSI range.
eimsi
5 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Filters the request to just retrieve the DNs in the range that are on the
provided SP.
sp
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
(Optional) Lets the requester specify the type of output data to be returned. See Retrieve
Subscription Data Responses for additional information.
data
all – Return all known data for each instance (i.e., list the DNs on each
IMSI) (default).
Values:
neonly – Return only the Network Element information for each instance.
count – Return only a single instance count of all instances matching the
query.
(Optional) Allows the client to limit the number of items to be returned.
num
1 - 40000000
Values:
Note:
If a substantial number of records are requested, there is a significant delay before the responses start
coming back.
95
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
Request syntax :
rtrv_sub([iid XXXXX,] bimsi XXXXX, eimsi XXXXX, [sp XXXXX,]
[data ,] [num <1..40000000>])
Retrieve Subscription Data Responses
The syntax of the data section of responses to a successful Retrieve Subscription Data request depends
on the type of records being returned. DN records, DN block records, IMSI records, or instance counts
can be returned. Each type of data being returned has a different syntax.
The responses that actually return instance data also have optional relationship information that can
be present. For example, in an IMSI response there is a list of the DNs that are on that IMSI. If all the
requester cares about is the IMSI-to-SP mapping, this additional DN relationship information can be
omitted from the IMSI section of the response by specifying the value neonly in the data parameter.
A data value of all returns all of the optional information that is present in the instances. The same
type of relationship information is also present in the DN section and the same parameter has the
effect of omitting it.
Note:
1. The st parameter will appear in the response only if its value differs from the system default (Public).
See TIF Number Substitution Relationships for more details about number substitution.
2. The cdbl parameter will be listed in the rtrv_sub() command response only when it’s value is
yes.
3. The cgbl parameter will be listed in the rtrv_sub() command response only when it’s value is
yes.
4. In case of DN Block, the split parameter will be listed in the rtrv_sub() command response
only when its value is no.
•
Response syntax for an IMSI query:
data ([segment XXXXX], imsis (imsi (id XXXXX,
[dns ( XXXXX, . . .),] sp XXXXX) ),
. . .
(. . .) ) )
•
Response syntax for a DN query:
data (segment XXXXX, dns (dn (id XXXXX, [imsi XXXXX,] [pt ],
[sp XXXXX,] [rn XXXXX] [vms XXXXX,] [grn XXXXX,] [asd XXXXX,] [st <1>,] [nsdn
XXXXX]), [cgbl ,] [cdbl ,]
. . .,
( . . . ) ) )
•
Response syntax for a DN block query:
data (segment XXXXX, dnblocks (dnblock (bdn XXXXX, edn XXXXX, [pt
], [sp XXXXX,] [rn XXXXX,] [vms XXXXX,] [grn XXXXX,] [asd
XXXXX,] [st <1>,] [nsdn XXXXX]), [cgbl ,] [cdbl ,] [split ,]
. . .,
( . . . ) ) )
•
Response syntax for a count query:
96
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
Requests that specify adata parameter ofcount gets just one response that contains the instance
count for the type of subscription data that they are querying. Only one of the optional counts
would be present in the response.
data (counts ([imsi #####,] [dn #####,] [dnblock #####]) )
The return codes listed in Table 11: Retrieve Subscription Data Response Return Codes indicate the result
of the Retrieve Subscription Data request. See PDBI Message Error Codes for the recommended actions
to help resolve the error related return codes.
Table 11: Retrieve Subscription Data Response Return Codes
Data Section
Contents
Description
Text
Return
Code
Depends on the
request type, etc.
The request succeeded and this is the last
(or only) response.
SUCCESS
0
Offending field is
returned in data
section:
One of the fields specified had an invalid
value.
INVALID_VALUE
1012
data (param )
Depends on the
request type, etc.
The request has succeeded, but this is only
one of many responses.
PARTIAL_SUCCESS
1016
NONE
The requested DN, DN block, or IMSI was
not found.
NOT_FOUND
1013
NONE
There is no currently active transaction
for this connection.
NO_ACTIVE_TXN
1009
NONE
An NE to filter was specified, but the NE
does not exist.
NE_NOT_FOUND
1021
Create Network Entity
The ent_entity command creates an entity object (such as an SP) and its corresponding global title
translation. There is a limit of 150,000 network entity instances.
It is valid for entities of different types to have the same id. Spare point codes, indicated by an optional
s- prefix, are supported for Network Entities with a pctype of intl and natl.
Create Network Entity Request
Parameters :
97
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
Identifier for this network entity.
id
1 to 15 hexadecimal digits expressed using ASCII characters.
Values:
Type of network entity being created.
type
SP – Signal Point
Values:
RN – Routing Number. (G-Flex only customers do not use RNs. Used
for A-Port and IS41 GSM Migration features.)
VMS – Voicemail Server. (Used for V-Flex customers.)
GRN – Generic Routing Number
Specifies the type of the point code.
pctype
intl - ITU international point code in the form zone-area-id (z-aaa-i).
Values:
natl - ITU national point code in the form of ITU number (nnnnn).
nl24 - ITU national 24-bit point code in the form of msa-ssa-sp
(mmm-sss-ppp).
ansi - ANSI point code in the form of network-cluster-member
(nnn-ccc-mmm).
none - No point code specified. (Only valid for RNs , VMSs, and GRNs.)
Point code value. The valid values depend on the pctype parameter.
pc
For pctype of intl the format is zone-area-id [(s-)z-aaa-i].
Values:
s - Optional spare point code indicator
z= 0 – 7
aaa= 0 – 255
i= 0 - 7
Note: The value 0-0-0 is not valid.
For pctype of natl the format is number [(s-)nnnnn].
nnnnn= 1 – 16383
For pctype of ansi, the format is network-cluster-member (nnn-ccc-mmm).
s - Optional spare point code indicator
nnn= 1 – 255
ccc= 1 – 255 (if network = 1 – 5)
= 0 – 255 (if network = 6 – 255)
98
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
mmm= 0 – 255
For pctype of none, the pc parameter is not allowed.
(Optional) Group code. This optional parameter is part of the point code value for ITU
Duplicate Point Code Support feature.
gc
aa - zz
Values:
Routing indicator. This parameter indicates whether a subsequent global title translation
is required.
ri
GT = Global Title. Indicates that a subsequent translation is required.
Values:
SSN = Subsystem Number. Indicates that no further translation is
required.
(Optional) New subsystem number. This parameter identifies the subsystem address
that is to receive the message.
ssn
0, 2 – 255
Values:
none (default)
(Optional) Cancel called global title.
ccgt
yes or no (default)
Values:
(Optional) New translation type. This parameter identifies the translation type value to
replace the received translation type value.
ntt
0 – 255
Values:
none (default)
(Optional) New nature of address.
nnai
0 – 127
Values:
none (default)
(Optional) New numbering plan.
nnp
0 – 15
Values:
none (default)
99
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual
(Optional) Digit action. The parameter specifies what changes, if any, to apply to the
Called Party GTA.
da
none – No change to the Called Party GTA (default)
Values:
replace – Replace Called Party GTA with the entity id
prefix – Prefix Called Party GTA with the entity id
insert – Insert entity id after country code (CC + Entity Id + NDC + SC)
delccprefix – Delete country code, then prepend the entity id.
delcc – Delete country code.
spare1 – No change to GTA. Digit action value of 6 passed to EAGLE.
spare2 – No change to GTA. Digit action value of 7 passed to EAGLE.
(Optional) The IMSI returned by a SRF indicating the Subscription Network of the
subscriber. This parameter is only used by the G-Port features and only for RNs.
srfimsi
5 to 15 hex digits expressed using ASCII characters.
Values:
(Optional) Specify the number of seconds to wait for the write transaction if another
connection already has it. Clients waiting for the write transaction with this mechanism
timeout
are processed in the order that their requests were received. This option is only allowed
if the client used the txnmode single option on its connect request.
0 (return immediately if not available; default)
Values:
1 - 3600 seconds
Rules :
1. If the pctype is none, none of the optional parameters can be specified.
2. If ri is GT , ccgt must be no.
3. Ifccgt isyes, the parameters ntt, nnai, nnp, and da cannot be set.
4. The maximum number of network entities (150,000) must not be reached.
5. Parameter gc can be specified only when pctype = natl.
Request syntax :
ent_entity([iid XXXXX,] id XXXXX, type , pctype
, [pc ,], [gc ,]
[ri ,] [ssn <0/2..255/none>,] [ccgt ,]
[ntt <0..255/none>,] [nnai <0..127/none>,] [nnp <0..15/none>,]
100
910-6022-001 Revision A, March 2011
PDBI Request/Response Messages
Provisioning Database Interface Manual