tupiefmt.hpp
来自「ABis无线接口全套资料」· HPP 代码 · 共 187 行
HPP
187 行
//
// tupiefmt.hpp
// TUP IE format, declare all TUP IE structure.
//
#ifndef _TUPIEFMT_HPP
#define _TUPIEFMT_HPP
#pragma pack(1)
struct STupIaMessageIndicators // IAM/IAI message indicator.
{
unsigned short noa : 2; // Nature of address indicator
unsigned short noc : 2; // Nature-of-circuit indicator
unsigned short cc : 2; // Continuity check indicator
unsigned short es : 1; // Echo-suppressor indicator
unsigned short iic : 1; // Incoming international call indicator
unsigned short rc : 1; // Redirected call indicator
unsigned short adpr : 1; // All-digital-path-required indicator
unsigned short sp : 1; // Signalling path indicator
unsigned short spare : 1; // Spare
// unsigned short reserved : 4; // Reserved.
unsigned short noas : 4; // Numbers of address signals.
};
// what parameters does exist.(the first indicator)
// struct STupParameterexistInd
struct STupFirstIndicator
{
unsigned char ncoufi : 1; // Network capability or user facility information indicator.
unsigned char cug : 1; // Close user group information indicator.
unsigned char acpi : 1; // Additional calling party information indicator.
unsigned char ari : 1; // Additional route information indicator.
unsigned char cli : 1; // Calling line identity indicator.
unsigned char oca : 1; // Original called address indicator.
unsigned char ci : 1; // Charging information indicator.
unsigned char spare : 1; // spare.
};
// Caller wire indicator
// struct STupCallerlnkInd_H
struct STupCallingLineIdentity_H
{
unsigned char noa : 2; // Nature of address indicator.
unsigned char clip : 1; // Calling line identity presentation indicator.
unsigned char icli : 1; // Incompleted calling line identity indicator.
unsigned char noas : 4; // Number of address signals.
// Address signal......
};
// Original callee numbers indicator
// struct STupCallernumberInd_H
struct STupOrignalCalledNumber_H
{
unsigned char noa : 2; // Nature of address indicator.
unsigned char spare : 2; // spare
unsigned char noas : 4; // Number of address signals.
// Address signal......
};
// Calling_party's language indicator
struct STupCallingPartysCatetgory
{
unsigned char cpc : 6; // Calling party category.
unsigned char spare : 2; // Spare.
};
struct STupSubsequentNumber_H
{
unsigned char spare : 4; // Spare.
unsigned char noas : 4; // Number of address signals
};
struct STupSamAddressNumber
{
unsigned char spare : 4; // Spare.
unsigned char noas : 4; // Number of address signals
};
struct STupSaoAddressNumber
{
unsigned char digit : 4; // Address signal, only include one digit.
unsigned char spare : 4; // Spare.
};
// struct STupGsmResponeInformationIndicator
struct STupResponseTypeIndicator
{
unsigned char cpc : 1; // Calling party catetgory indicator.
// 0 Calling party category not included.
// 1 Calling party category included.
unsigned char cli : 1; // Calling line identity indicator.
// 0 Calling line identity not included.
// 1 Calling line identity included.
unsigned char ittei : 1; // Incoming trunk and transit exchange: identity indicator.
// 0 incoming trunk and transit exchange identity not included.
// 1 incoming trunk and transit exchange identity included.
unsigned char oca : 1; // original called address indicator.
// 0 original called address not included.
// 1 original called address included.
unsigned char oes : 1; // outgoing echo suppressor indicator.
// 0 outgoing half echo suppressor not included.
// 1 outgoing half echo suppressor included.
unsigned char mci : 1; // malicious call identification indicator.
// 0 malicious call identification not provided.
// 1 malicious call identification provided.
unsigned char hi : 1; // hold indicator.
// 0 hold not provided.
// 1 hold provided.
unsigned char spare : 1; // Preserve
};
struct STupRequestTypeIndicator
{
unsigned char cpc : 1; // calling party category request indicator
// 0 no calling party category request
// 1 calling party category request
unsigned char cli : 1; // calling line identity request indicator
// 0 no calling line identity request
// 1 calling line identity request
unsigned char oca : 1; // original called address request
// 0 no original called address request
// 1 original called address request
unsigned char mci : 1; // malicious call identification indicator (national option)
// 0 no malicious call identification encountered
// 1 malicious call identification encountered
unsigned char hr : 1; // hold request indicator
// 0 hold not requested
// 1 hold requested
unsigned char esr : 1; // echo suppressor request indicator
// 0 no outgoing half echo suppressor requested
// 1 outgoing half echo suppressor requested
unsigned char spare : 2; // Spare
};
struct STupAcmMessageIndicator
{
unsigned char toacs : 2; // type of address-complete signal indicators
// 0 0 address-complete signal
// 0 1 address-complete signal, charge
// 1 0 address-complete signal, no charge
// 1 1 address-complete signal, payphone
unsigned char sf : 1; // subscriber-free indicator
// 0 no indication
// 1 subscriber-free
unsigned char ies : 1; // incoming echo suppressor indicator
// 0 no incoming half echo suppressor included
// 1 incoming half echo suppressor included
unsigned char cf : 1; // call forwarding indicator
// 0 call not forwarded
// 1 call forwarded
unsigned char sp : 1; // signalling path indicator
// 0 any path
// 1 all signalling system No. 7 path
unsigned char spare : 2; // spare, for national use (may be used to indicate call redirection, holding of the connection or the end-to-end signalling method to be used).
};
struct STupRangeStatus
{
unsigned char range;
unsigned char status[4]; // Maxium is 4 octets.
};
struct STupChargeInformation
{
unsigned short ci;
};
#pragma pack( )
#endif
// ------------------------------------------------------------------------
//
// Revision list.
// ==============
//
// 1.0, 2005-12-12, Wang jinquan
// Initial version.
//
// 2.0, 2005-12-25, Wu jianjin.
// Re-naming all TUP IE and fix structure error.
// -------------------------------------------------------------------
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?