You are here: CSP API Reference > 1 EXS & SwitchKit API Messages > PPL Data Query 0x00DE

PPL Data Query 0x00DE

SwitchKit Name

PPLDataQuery

Type

EXS API and SwitchKit API message

Description

PPL Data Query 0x00DE

Use this message to query the following PPL information for a channel or slot:

PPL Configuration Bytes 1200

PPL Generic Timers

Current PPL Component State

PPL Table

Current Protocol ID

PPL Configuration Bytes 1200

PPL Configuration Bytes 201400

PPL Configuration Bytes 401600

PPL Configuration Bytes 601-800

PPL Configuration Bytes 801-1000

DTMF Timers

Sent by

Host

SwitchKit Code

C Structure

typedef struct {

UBYTE AddrInfo[30];

unsigned short ComponentID;

UBYTE Entity;

} XL_PPLDataQuery;

C Structure Response

typedef struct {

unsigned short Status;

UBYTE AddrInfo[30];

unsigned short ComponentID;

UBYTE Entity;

UBYTE ConfigData[218];

} XL_PPLDataQueryAck;

C++ Class

class XLC_PPLDataQuery : public XLC_OutboundMessage {

public:

const UBYTE *getAddrInfo() const;

UBYTE *getAddrInfo();

void setAddrInfo(UBYTE *x);

XBYTE getSpan() const;

void setSpan(XBYTE x);

UBYTE getChannel() const;

void setChannel(UBYTE x);

UBYTE getSlot() const;

void setSlot(UBYTE x);

XBYTE getV5ID() const;

void setV5ID(XBYTE x);

unsigned short getComponentID() const;

void setComponentID(unsigned short x);

UBYTE getEntity() const;

void setEntity(UBYTE x);

};

C++ Class Response

class XLC_PPLDataQueryAck : public XLC_AcknowledgeMessage {

public:

unsigned short getStatus() const;

void setStatus(unsigned short x);

const UBYTE *getAddrInfo() const;

UBYTE *getAddrInfo();

void setAddrInfo(UBYTE *x);

XBYTE getSpan() const;

void setSpan(XBYTE x);

UBYTE getChannel() const;

void setChannel(UBYTE x);

UBYTE getSlot() const;

void setSlot(UBYTE x);

XBYTE getV5ID() const;

void setV5ID(XBYTE x);

unsigned short getComponentID() const;

void setComponentID(unsigned short x);

UBYTE getEntity() const;

void setEntity(UBYTE x);

const UBYTE *getConfigData() const;

UBYTE *getConfigData();

void setConfigData(UBYTE *x);

};

Overview of message

The following table provides an overview of this message. The table following it, provides the detail for each byte.

MESSAGE (White) | RESPONSE (Gray)
Byte | Field Description | Byte | Field Description
0 | Frame (0xFE) | 0 | Frame (0xFE)
1, 2 | Length (0xNNNN) | 1, 2 | Length (0xNNNN)
3, 4 | Message Type (0x00DE) | 3, 4 | Message Type (0x00DE)
5 | Reserved (0x00) | 5 | Reserved (0x00)
6 | Sequence Number | 6 | Same Sequence Number
7 | Logical Node ID | 7 | Logical Node ID
: | AIB (starting with byte 0) | 8, 9 | Status MSB, LSB
: | PPL Component ID MSB, LSB | 10 | AIB
: | PPL Configuration Entity | : | PPL Component ID MSB, LSB
: | Data [0] (if applicable) | : | PPL Configuration Entity
: | : | : | Response Data
: | Checksum | : | :
|  | : | Checksum

EXS API Hex Format - Detailed

MESSAGE (White) | RESPONSE (Gray)
Byte | Field Description | Byte | Field Description
0 | Frame (0xFE) | 0 | Frame (0xFE)
1, 2 | Length (0xNNNN) | 1, 2 | Length (0xNNNN)
3, 4 | Message Type (0x00DE) | 3, 4 | Message Type (0x00DE)
5 | Reserved (0x00) | 5 | Reserved (0x00)
6 | Sequence Number | 6 | Same Sequence Number
7 | Logical Node ID | 7 | Logical Node ID
: | AIB Address Element Depends on the component being addressed. See PPL Component Addressing in the API Reference. | 8, 9 | Status MSB, LSB
Number of AEs to follow
AE Depends on the component being addressed.
: | PPL Component ID MSB, LSB See PPL Component IDs in the API Reference. | 10 | AIB Same as message
: | PPL Configuration Entity 0x01 PPL Configuration Bytes 1200 0x02 PPL Generic Timers 0x03 Current PPL Component State 0x04 PPL Table 0x05 Current PPL Component Extended State 0x06 Current Protocol ID 0x07 DTMF Timers 0x08 GK Status 0x10 PPL Configuration Bytes 1200 0x11 PPL Configuration Bytes 201400 0x12 PPL Configuration Bytes 401600 0x13 PPL Configuration Bytes 601-800 0x14 PPL Configuration Bytes 801-1000 NOTE: Use values 0x10 0x14 for ANSI and ITU L3P CIC components. Use the value 0x01 for all other components. | : | PPL Component ID MSB, LSB
: | Data This field applies to the PPL Table entity only. 0x04 PPL Table Data[0] Table Type 0x03 Route Table 0x04 Resource Group Table Data[1] Table ID 0x010x0A Data[2, 3] Start of Range (MSB, LSB) Route Table ID: 11024 Resource Group ID: 1256 Complete table: 0xFFFF | : | PPL Configuration Entity 0x01 PPL Configuration Bytes 1200 0x02 PPL Generic Timers If the Entity is 0x02 the data following are in two byte pairs starting with timer 1-100. Refer to appropriate Developers Guide for the timers. 0x03 Current PPL Component State 0x04 PPL Table 0x06 Current Protocol ID 0x07 DTMF Timers 0x08 GK Status: 0x00 - undiscovered 0x01 - discovered, unregistered - response includes IP address (4 bytes) and port (2 bytes) 0x02 - registered - response includes IP address (4 bytes) and port (2 bytes) 0xFF - invalid 0x10 PPL Configuration Bytes 1200 0x11 PPL Configuration Bytes 201400 0x12 PPL Configuration Bytes 401600 0x13 PPL Configuration Bytes 601-800 0x14 PPL Configuration Bytes 801-1000 NOTE: Values 0x10 0x14 are used for ANSI and ITU L3P CIC components. The value 0x01 is used for all other components.
: | Checksum
: | Response continued below. 0x03 Current PPL Component State 0x00 OOS & Span Dead 0x02 TEI Assign Wait (Waiting for Terminal Endpoint Identifier assigned event.) 0x03 D Channel Alive Wait (Try to bring the link up, but network is not responding.) 0x04 Alive 0x05 Wait for Layer 1 Alive 0x06 Wait for D Dead Event (Waiting for D channel OOS event.) 0x04 PPL Table Data[0] Table Type Data [1] Table ID 0x01-0x0A 0x03 Route Table 0x04 Resource Group Table* NOTE: If Data[1] is 0x04 Resource Group Table, see farther down this table for information If Data[1] is 0x03 Route Table, Data[2-7] are as immediately follows: Data[2, 3] Start of Range (MSB, LSB) Route Table ID: 0x010x400 Resource Group ID: 0x010x100 Complete Table: 0xFFFF Data[4, 5] Number of Entries Data[6] Entry 1 Length Data[7] Entry 1 Data Data[00 01] Route Number Data[02 03] Route Property 0x0001 Mask 0x0002 Range Data[04 05] Route Group ID Data[06 07] Criteria Type
| Criteria Type All but Universal Data[00 08] Criteria Data Length Data[variable] Criteria data ( actual .rte table data, "0" is dont care) Byte[:] See NOTE 1 for Data & Mask calcula-tions IF Route Property = 0x01, Byte[a] = number of bytes in Data Byte[b] = number of bytes in Mask IF Route Property = 0x02, Byte[x] = number of bytes in Start Range Byte[y] = number of bytes in End Range Byte[z] = number of bytes in Mask Data[:] TLV Count (Number of TLV entries) Data[:] TLV Tag See TLV Formats Data[:] TLV Length Data[:] TLV Value : Data[:] Entry N Length Data[:] Entry N Data Criteria Type Universal Data[00 08] Criteria Data Length Data[variable] Criteria data ( actual .rte table data, "0" is dont care) Byte[1] Univ data format 0x01 Raw Bytes 0x02 ASCII Bytes 0x03 BCD Data Byte[2] Univ data offset Byte[3-6] Reserved, should be 0 Byte[:] See NOTE 2 for Data & Mask calcula-tions IF Route Property = 0x01 Byte[a] = number of bytes in Data Byte[b] = number of bytes in Mask IF Route Property = 0x02, Byte[x] = number of bytes in Start Range Byte[y] = number of bytes in End Range Byte[z] = number of bytes in Mask Data[:] TLV Count Data[:] TLV Tag See TLV Formats in the TLV chapter Data[:] TLV Length Data[:] TLV Value : Data[:] Entry N Length Data[:] Entry N Data
| *0x04 Resource Group Table NOTE: If Data[1] is 0x04 Resource Group Table, Data[2-7] are as follows: Data[2, 3] Start of Range (MSB, LSB) Route Table ID: 0x010x400 Resource Group ID: 0x010x100 Complete Table: 0xFFFF Data[4, 5] Number of Entries Data[6] Entry 1 Length Data[7] Entry 1 Data Data[00 01] Resource Group ID Data[02 03] Special Instruction (see special instruc. TLV [0x001D]) Data[variable] AIB See AIB Types : Data[:] Entry N Length Data[:] Entry N Data Data 0x05 Data[0, 1] Current State (MSB, LSB)
: | Checksum

NOTE 1

The following information shows calculations for the number of bytes in the Data, Start/End Range, and Mask fields.The actual data within these bytes varies.

1. Convert Criteria Data Length to decimal value.

2. If Route Property = 0x01

a = number of bytes in Data = Criteria Data Length / 2

b = number of bytes in Mask = Criteria Data Length / 2

3. If Route Property = 0x02,

x = number of bytes in Start Range = Criteria Data Length / 3

y = number of bytes in End Range = Criteria Data Length / 3

z = number of bytes in Mask = Criteria Data Length / 3

NOTE 2

The following information shows calculations for the number of bytes in the Data, Start/End Range, and Mask fields.The actual data within these bytes varies.

1. Convert Criteria Data Length to decimal value.

2. If Route Property = 0x01

a = number of bytes in Data = (Criteria Data Length 6) / 2

b = number of bytes in Mask = (Criteria Data Length 6) / 2

3. If Route Property = 0x02,

x = number of bytes in Start Range = (Criteria Data Length 6) / 3

y = number of bytes in End Range = (Criteria Data Length - 6) / 3

z = number of bytes in Mask = (Criteria Data Length 6) / 3

If the response data cannot be sent by the CSP in one message, you must resend the message, incrementing the range, until a response status of 0xD7 is returned.

Criteria Type entries

0x0001 Address Digits 1

0x0002 Address Digits 2

0x0003 Address Digits 3

0x0004 Address Digits 4

0x0005 User-defined

0x0006 Route Group ID

0x0007 Incoming Span/Channel

0x0010 Incoming Resource Group

0x001A Incoming Node ID

Universal Protocol Data

A Universal Protocol is one of the options that can be used when defining a particular Criteria Type. You must distinguish between UDP and other possible entries to accurately show the data contained in the Route Tables.

0x09CE Build Index Table

0x2718 Calling Party Number (Connected Number)

0x27B0 RTP Payload Type

0x2792 Source IP Address

0x2792 Source IP Address

0x2793 Source RTP Port

0x2794 Destination IP Address

0x2795 Destination RTP Port

0x27B0 RTP Payload Type

0x27B1 RTP Payload Size

See Programmable Protocol Language.
A programmable software component that uses PPL state machines that can be modified with the PPL Tool.
The condition of a component at a given instant. The current "context" of a PPL object, such as Idle, Seizing, Answered. In PPL files, a State is represented by a circle.
A computer, attached to the Excel platform through an RS-232 or Ethernet link, from which you run the telecommunications application that controls the Excel platform.
A group of data bits in a specific format, with a flag at each end to indicate the beginning and the end of the frame.
See Address Information Block.
Most Significant Bit
Least Significant Bit
The information in an AIB that follows the header, down to the data field. An AIB can have one or more Address Elements. AEs correspond to Span, Channel, and SS7 Link.
American National Standards Institute. ANSI administers and coordinates the U.S. voluntary standardization and conformity assessment system for the
telecommunications industry. More details on these standards may be
viewed at www.ansi.org.
International Telecommunications Union (UN)
See Circuit Identification Codes.
Internet Protocol. Part of the TCP/IP family of protocols used to route messages and tracks the addresses of nodes.
Out of Service
Range of channels provided by T1 or E1 transmission service. A physical span is a group of channels taking up a single physical wire. A logical span is a group of channels taking up less than a single logical wire, or carried over more than one physical wire.
An H.323 terminal or gateway, or MCU. An endpoint can call and be called. It generates and/or terminates the information stream.
In PPL, a condition that, when met, drives a state machine (PPL Component) from one state to another, by invoking an associated Primitive. In PPL files, an Event is marked by an arrow and text.
Data channel. One of two fundamental components of an ISDN interface, it provides a path (16Kbps for BRI, 64Kbps for PRI) for carrying control signals and call data in a packet-switched mode.
Tag-Length-Value block. A standardized block that allows data to inserted in a standard way into API messages.
American Standard Code for Information Interchange