📄 cbcbscinterfacestruct.h
字号:
#define bool unsigned char
/* operation element define */
typedef enum
{
CBSE_WRITE_REPLACE =0xa1,/* Write_Replace, */
CBSE_KILL_MESSAGE =0xa2,/* Kill_Message, */
CBSE_REPORT_SUCCESS =0xa3,/* Report_Success, */
CBSE_STATUS_CBCH_QUERY =0xa4,/* Status_CBCH, */
CBSE_STATUS_CBCH_QUERY_RESP =0xa5,/* Status_CBCH_Resp, */
CBSE_STATUS_MESSAGE_QUERY =0xa6,/* Status_Message, */
CBSE_STATUS_MESS_QUERY_RESP =0xa7,/* Status_Mess_Resp, */
CBSE_REJECT_RESPONSE =0xa8,/* Report_Failure, */
CBSE_BSC_RESTART =0xa9,/* BSC_Restart, */
CBSE_RESET =0xaa,/* Reset, */
CBSE_FAILURE_IND =0xab,/* Failure_Ind, */
CBSE_SET_DRX =0xac,
CBSE_SET_DRX_REPORT =0xad,
CBSE_VBIND =0xae,/* CBSE-VBIND-Parameters, */
CBSE_BIND_CONFIRM =0xaf,/* CBSE-BIND-CONFIRM-Parameters, */
CBSE_BIND_FAILURE =0xb0,/* CBSE-BIND-FAILURE, */
CBSE_UNBIND =0xb1 /* CBSE-UNBIND, */
}CELLBROADCAST_SERVICE_ELEMENT_e;
/* 从CBC_Proxy来的操作元素定义 */
typedef enum
{
CBCPROXY_WRITE_REPLACE =0x1,// Write_Replace,
CBCPROXY_KILL_MESSAGE =0x2,// Kill_Message,
CBCPROXY_STATUS_CBCH_QUERY =0x4,// Status_CBCH,
CBCPROXY_STATUS_CBCH_QUERY_RESP =0x5,// Status_CBCH_Resp,
CBCPROXY_STATUS_MESSAGE_QUERY =0x6,// Status_Message,
CBCPROXY_STATUS_MESS_QUERY_RESP =0x7,// Status_Mess_Resp,
CBCPROXY_REJECT_RESPONSE =0x8,// Report_Failure,
CBCPROXY_BSC_RESTART =0x9,// BSC_Restart,
CBCPROXY_RESET =0xa,// Reset,
CBCPROXY_FAILURE_IND =0xb,// Failure_Ind,
CBCPROXY_SET_DRX =0xc,// SetDRX
CBCPROXY_SET_DRX_REPORT =0xd,// SetDRX_Report
CBCPROXY_VBIND =0xe,// VBIND-Parameters,
CBCPROXY_BIND_CONFIRM =0xf,// BIND-CONFIRM-Parameters,
CBCPROXY_BIND_FAILURE =0x10,//BIND-FAILURE,
CBCPROXY_UNBIND =0x11,// UNBIND,
CBCPROXY_REPORT_WRITE =31,/* 写入消息报告 */
CBCPROXY_REPORT_REPLACE =32,/* 替换操作的报告 */
CBCPROXY_REPORT_KILL =33,/* 删除操作的报告 */
}CELLBROADCAST_PROXY_SERVICE_ELEMENT_e;
typedef enum
{
NEW_WRITE_MESSAGE =1, //新加一条消息
NEW_SCHEDUAL_MESSAGE =2, //预约一条消息
UPDATE_ALREADY_SEND_MESSAGE =3, //修改已发送消息
UPDATA_SCHEDUAL_TIME =4, //修改预约发送时间和消息
UPDATA_PENDING_SEND_MESSAGE =5 //修改预约发送消息
}WRITEREPLACE_OPERATER_TYPE_e;
//Failure_Reason
typedef enum
{
PARAMETER_NOT_RECONGNIZED =0,
PERMANENT_FAILURE =1,
PARARMETER_VALUE_INVALID =2,
VALID_CBS_MESSAGE_NOT_IDENTIFIED =3,
CELL_IDENTIFIED_NOT_VALID =4,
UNRECOGNIZED_MESSAGE =5,
MISSING_MANDATORY_ELEMENT =6,
BSS_CAPACITY_EXCEEDED =7, /* 基站系统负荷超载 */
CELL_MEMORY_EXCEEDED =8, /* 小区内存溢出 */
BSS_MEMORY_EXCEEDED =9, /*基站系统内存溢出 */
UNSPECIFIED_ERROR =10,
INCOMPATIBLE_DRX_PARAMETER =11,
UNKNOW_STATUS =20, /* BSC暂时没响应,内部定义 */
CELL_SUCCESS =21, /* 小区成功 */
TEMP_FAILURE =22 /* 暂时失败 */
}FAILURE_REASON_e;
/* Cell-Id-Disc type */
typedef enum
{
LAC_AND_CI =1,/* 2字节区域码加2字节小区识别号 */
CI_ONLY =2,/* 只填小区码 */
LAC_ONLY =5,/* 仅有2字节区域码,表示在此区域的所有小区 */
ALL_CELLS =6 /* 在该BSS中的所有小区 */
}CELL_ID_DISC_TYPE_e;
//Category type
typedef enum
{
HIGH_PRIORITY =0, /* 高优先级 */
NORMAL_PRIORITY =1, /* 普通优先级 */
BACKGROUND =2 /* 后台发送方式 */
}CATEGORY_TYPE_e;
//Parameter define
#define MESSAGEIDENTIFER 0x00
#define SERIALNUMBER 0x01
#define NOOFBROADCASTSCOMPLLIST 0xa0
#define FAILURELIST 0xa1
#define CHANNELINDICATOR 0x84
//max cell count
//If the value exceeds 256, length type(unsigned char) will be changed.
#define MAXCELLCOUNT 256
#define MESSAGE_INFO_PAGE_LEN 82
#define MESSAGE_INFO_PAGE_COUNT 15
#define DIAGNOSTIC_INFO_LEN 20
//1
typedef struct
{
bool bFlag;
unsigned short iMessageIdentifier;
}MESSAGEIDENTIFIER_t;
//2
typedef struct
{
bool bFlag;
unsigned short iSerialNumber;
}SERIALNUMBER_t;
//3
typedef struct
{
bool bFlag;
unsigned char cNumberOfPages;
}NUMBEROFPAGES_t;
//4
typedef struct
{
bool bFlag;
unsigned char cDataCodingScheme;
}DATACODINGSCHEME_t;
//5
typedef struct
{
bool bFlag;
unsigned short iRepetitionRate;
}REPETITIONRATE_t;
//6
typedef struct
{
bool bFlag;
unsigned short iNumberOfBroadcastReq;
}NOOFBROADCASTREQ_t;
//8
typedef struct
{
bool bFlag;
unsigned char cCategory;
}CATEGORY_t;
//9
typedef struct
{
bool bFlag;
unsigned char cChannelIndicator;
}CHANNELINDICATOR_t;
typedef struct
{
unsigned char cCellId[4];
}CELLID_t;
//10
typedef struct
{
bool bFlag;
unsigned short iLength;
char cCellIdDisc;
CELLID_t s_CellList[MAXCELLCOUNT];
}CELLLIST_t;
//
typedef struct
{
unsigned char cMessageInfoUsefulOctets;
char cMessageInfoPage[MESSAGE_INFO_PAGE_LEN] ;
}PAGEINF_t;
//11
typedef struct
{
bool bFlag;
unsigned char cLength;
PAGEINF_t s_CbsPageInf[MESSAGE_INFO_PAGE_COUNT];
}CBSPAGEINF_t;
typedef struct
{
char cCellIdDisc;
unsigned char cCellId[4];
}CELL_t;
typedef struct
{
CELL_t s_Cellid;
unsigned short iNoOfBroadcastsCompl;
unsigned char cNoOfBroadcastsComplType;
}NOOFBROADCASTSCOML_t;
typedef struct
{
bool bFlag;
unsigned short ilength;
NOOFBROADCASTSCOML_t s_NoOfBroadcastComl[MAXCELLCOUNT];
}NOOFBROADCASTSCOMLLIST_t;
//
typedef struct
{
bool bFlag;
unsigned char cCause;
}FAILUREREASON_t;
typedef struct
{
bool bFlag;
char cDiagnostic[DIAGNOSTIC_INFO_LEN];
}DIAGNOSTIC_t;
//
typedef struct
{
CELL_t s_Cellid;
unsigned char cCause;
char cDiagnostic[DIAGNOSTIC_INFO_LEN];
}FAILUREREPORT_t;
typedef struct
{
bool bFlag;
unsigned short iLength;
FAILUREREPORT_t s_FailureReason[MAXCELLCOUNT];
}FAILURELIST_t;
typedef struct
{
CELL_t s_Cellid;
unsigned char cCbcLoading;
/*
信道负荷 ::= 整数(0..100)
-- 注:信道负荷是用百分比的形式表明预计的短期内的负载
*/
}CBCLOADINGSTATUS_t;
typedef struct
{
bool bFlag;
unsigned short iLength;
CBCLOADINGSTATUS_t s_CbcLoadingStatus[MAXCELLCOUNT];
}CBCLOADINGSTATUSList_t;
typedef struct
{
bool bFlag;
bool bRecoveryIndicator;
}RECOVERYINDICATION_t;
typedef struct
{
bool bFlag;
unsigned char cSchedulePeriod;
}SCHEDULEPERIOD_t;
typedef struct
{
bool bFlag;
unsigned char cReservedSlots;
}RESERVEDSLOTS_t;
//小区的序列
typedef struct
{
bool bflag;
unsigned short iLength;
CELL_t s_Cell[MAXCELLCOUNT];
}SEQUENCEOFCELL_t;
/*
有关邦定的参数
*/
//operate
typedef struct
{
bool bFlag;
unsigned char clength;
char cOperator[20];
}OPERATOR_t;
//BilateralAgreem
typedef struct
{
bool bFlag;
unsigned char clength;
char cBilateralAgreem[20];
}BILATERALAGREEM_t;
//Xl2lAddress
typedef struct
{
bool bFlag;
unsigned char clength;
char cXl2lAddress[15];
}X121ADDRESS_t;
//CBS-Address
typedef struct
{
bool bFlag;
unsigned char cAddressType;
unsigned char cNumberingPlan;
unsigned char cAddressLen;
char cAddressValue[20];
}CBSADDRESS_t;
//Name
typedef struct
{
bool bFlag;
OPERATOR_t s_Operate;
BILATERALAGREEM_t s_BilateralAgreem;
X121ADDRESS_t s_DataNetWorkAddress;
CBSADDRESS_t s_CBSAddress;
}NAME_t;
//Password
typedef struct
{
bool bFlag;
unsigned char clength;
char cPassword[20];
}PASSWORD_t;
//Version
typedef struct
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -