init ems server code
This commit is contained in:
155
src/accountMgr/c_program/wxc1AndWxc2ConverseTools/cdr.h
Normal file
155
src/accountMgr/c_program/wxc1AndWxc2ConverseTools/cdr.h
Normal file
@@ -0,0 +1,155 @@
|
||||
/*************************************************
|
||||
File name: cdr.h
|
||||
Author:
|
||||
Version: 9:00:00
|
||||
Date: 2002-5-7
|
||||
Description:<3A><><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>cdrCollectorģ<72><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD>ͺ<EFBFBD><CDBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<09>ṹcdr_src,cdr_def,cdr_tlv
|
||||
|
||||
|
||||
|
||||
|
||||
History:
|
||||
No.
|
||||
Author:
|
||||
Date:
|
||||
Version:
|
||||
Description:
|
||||
*************************************************/
|
||||
|
||||
#ifndef __CDR_HEAD_FILE
|
||||
#define __CDR_HEAD_FILE
|
||||
|
||||
#include "mysql.h"
|
||||
#include "errmsg.h"
|
||||
#include <dirent.h>
|
||||
#include "../../../../plat/public/src/include/asn1.h"
|
||||
#include "../../../../plat/snmp/src/include/snmp.h"
|
||||
#include "../../../omcLib/c_program/omcLib/omcLib.h"
|
||||
|
||||
#ifndef _T_DWORD
|
||||
#define _T_DWORD
|
||||
typedef unsigned int DWORD;
|
||||
#endif
|
||||
|
||||
#define CDR_DEBUG 0
|
||||
|
||||
#define CDR_LINK_DEBUG 0
|
||||
#define CDR_PORT 4968
|
||||
#define CDR_SRC_NUM 32
|
||||
#define CDR_TYPE_NUM 20
|
||||
#define CDR_OBJ_MAX 128
|
||||
#define HOST_NAME "localhost"
|
||||
#define CDRDB_NAME "CDR_DB"
|
||||
#define CSV_PATH "/usr/local/cdr"
|
||||
#define CDR_LOG_PATH "../log"
|
||||
#define CDR_LOG_FILE "cdrlog"
|
||||
|
||||
#define ST_GET_TAIL 0
|
||||
#define ST_WAIT_TAIL 1
|
||||
#define ST_CDR_IDLE 2
|
||||
#define ST_GET_CDR 3
|
||||
#define ST_WAIT_CDR 4
|
||||
#define ST_TAIL_IDLE 5
|
||||
#define ST_SET_TAIL 6
|
||||
|
||||
#define CDR_TIME_UNIT 20 //ms
|
||||
|
||||
#define CDR_T_idle 250 //5s lowest speed
|
||||
#define CDR_T_getcdr 30 //60ms
|
||||
#define CDR_T_gettail 500 //300*20=6000ms=10s
|
||||
#define CDR_T_settail 100 //2s
|
||||
|
||||
#define HEAP_SIZE_MAX 256 //1024*28
|
||||
#define HEAP_TIME_MAX 50*30 //30s
|
||||
|
||||
#define OMC_SINGLE 7
|
||||
#define OMC_MASTER 5
|
||||
|
||||
char totalCdrFileName[128];
|
||||
char cdrFileName[128];
|
||||
int cdrHour;
|
||||
//<2F>˽ṹ<CBBD><E1B9B9><EFBFBD><EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>ֶ<EFBFBD>
|
||||
typedef struct cdr_tlv {
|
||||
char tag_seq[17][20]; //16<31><36>tag<61><67>ֵ
|
||||
char field_name[30]; //<2F>ֶε<D6B6><CEB5><EFBFBD><EFBFBD><EFBFBD>
|
||||
BYTE type; //<2F>ֶε<D6B6><CEB5><EFBFBD><EFBFBD><EFBFBD>
|
||||
BOOL optional; //<2F>ֶ<EFBFBD><D6B6>Ƿ<EFBFBD><C7B7><EFBFBD>ѡ
|
||||
BYTE width; //<2F>ֶγ<D6B6><CEB3><EFBFBD>
|
||||
} cdr_tlv;
|
||||
|
||||
//<2F>˽ṹ<CBBD><E1B9B9><EFBFBD><EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1>Ķ<EFBFBD><C4B6>壬<EFBFBD><E5A3AC><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD>ֶζ<D6B6><CEB6><EFBFBD>
|
||||
typedef struct cdr_def {
|
||||
BOOL valid[17]; //tagλ<67><CEBB>ʶ
|
||||
char field_set[1024]; //ȫ<><C8AB><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>
|
||||
char field_select[1024];//ָ<><D6B8><EFBFBD>汾<EFBFBD><E6B1BE>ȫ<EFBFBD><C8AB><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>
|
||||
char create_sql[2048]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>sql<71><6C><EFBFBD><EFBFBD>
|
||||
BYTE field_count; //<2F>ֶεĸ<CEB5><C4B8><EFBFBD>
|
||||
cdr_tlv obj[CDR_OBJ_MAX];//<2F>ֶζ<D6B6><CEB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
} cdr_def;
|
||||
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD>ݽṹ<DDBD><E1B9B9><EFBFBD><EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>CDR<44><52><EFBFBD><EFBFBD>Դ
|
||||
typedef struct cdr_src {
|
||||
int loss; //<2F><><EFBFBD><EFBFBD>ͳ<EFBFBD><CDB3>
|
||||
int recv; //<2F><><EFBFBD>յİ<D5B5><C4B0>ĸ<EFBFBD><C4B8><EFBFBD>
|
||||
int recd; //<2F><>¼<EFBFBD>İ<EFBFBD><C4B0>ĸ<EFBFBD><C4B8><EFBFBD>
|
||||
|
||||
BYTE cdr_ver; //<2F>汾<EFBFBD><E6B1BE>
|
||||
WORD sysTypeNo; //ϵͳ<CFB5>豸<EFBFBD><E8B1B8>
|
||||
BYTE sysid; //ϵͳ<CFB5><CDB3>
|
||||
BYTE retry; //<2F><><EFBFBD>Դ<EFBFBD><D4B4><EFBFBD>
|
||||
|
||||
//informaion for getting cdr
|
||||
int get_timeout; //get<65><74><EFBFBD><EFBFBD>ʣ<EFBFBD><CAA3>ʱ<EFBFBD><CAB1>
|
||||
BOOL get_state; //get״̬
|
||||
DWORD instance; //ͷָ<CDB7><D6B8>
|
||||
DWORD head; //βָ<CEB2><D6B8>
|
||||
BYTE maxbind; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F3B6A8B1><EFBFBD><EFBFBD><EFBFBD>
|
||||
DWORD request_id; //get<65><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID
|
||||
|
||||
|
||||
//information for setting ptail
|
||||
int set_timeout; //set<65><74><EFBFBD><EFBFBD>ʣ<EFBFBD><CAA3>ʱ<EFBFBD><CAB1>
|
||||
BYTE set_fail; //setʧ<74>ܴ<EFBFBD><DCB4><EFBFBD>
|
||||
BOOL set_state; //set״̬
|
||||
BOOL move_flag; //βָ<CEB2><D6B8><EFBFBD>Ƿ<EFBFBD><C7B7>ı<EFBFBD>
|
||||
DWORD set_rid; //set<65><74><EFBFBD><EFBFBD>ID
|
||||
snmp_addr addr; //IP<49>Ͷ˿ڵ<CBBF>ַ
|
||||
DWORD oid[20]; //OID
|
||||
BYTE oid_len; //OID<49><44><EFBFBD><EFBFBD>
|
||||
DWORD head_oid[20]; //ͷָ<CDB7><D6B8>OID
|
||||
DWORD tail_oid[20]; //βָ<CEB2><D6B8>OID
|
||||
char record_table[30]; //<2F><><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>
|
||||
char define_table[30]; //<2F><><EFBFBD>ݶ<EFBFBD><DDB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
char csv_path[50]; //<2F><><EFBFBD><EFBFBD>·<EFBFBD><C2B7>
|
||||
int backup_max; //<2F><><EFBFBD>ݸ<F3B1B8B7><DDB8><EFBFBD>
|
||||
int buf_size; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С
|
||||
cdr_def define; //<2F><>Ӧ<EFBFBD><D3A6><EFBFBD>ֶα<D6B6><CEB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
//BOOL receive_tail;
|
||||
//BOOL receive_cdr;
|
||||
//int serial;
|
||||
} cdr_src;
|
||||
|
||||
|
||||
void converseFile();
|
||||
void cdr_timer();
|
||||
void cdr_init();
|
||||
|
||||
#if CDR_LINK_DEBUG
|
||||
void cdrdebug_init();
|
||||
#endif
|
||||
|
||||
void cdrdb_init();
|
||||
void cdr_start();
|
||||
void cdr_stop();
|
||||
BOOL cdr_status();
|
||||
void cdrdb_timer();
|
||||
void cdrlog_init();
|
||||
void cdrlog_timer();
|
||||
void cdr_log(const char *fmt, ...);
|
||||
void cdr_logmsg(BYTE * buf, int len);
|
||||
void cdr_report();
|
||||
int safe_query(MYSQL * conn, char *strquery, int retry);
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user