📄 dump.cpp
字号:
//#include "include.h"//#include "define.h"//#include "Decode2DbHelper.h"//#include "memcdr.h"//#include "calc.h"//#include "ConfigParser.h"//#include "Logger.h"#include <time.h>#include "oradb.h"#include "Dump.h"//using namespace UTIL;static char* Time(){ time_t t = time(0); tm* t2 = localtime(&t); static char szTime[40]; snprintf(szTime, 40, "[%04d-%02d-%02d %02d:%02d:%02d]", t2->tm_year+1900, t2->tm_mon+1, t2->tm_mday, t2->tm_hour, t2->tm_min, t2->tm_sec); return szTime;}int C_Dump::DumpOSCDR(const char *fname, S_OSCDR *p,int nNumber){ FILE * fp = fopen(fname, "a"); if (p==NULL || fname[0]==0) { return -1; } fprintf(fp,"\n S-CDR %s\n", Time()); fprintf(fp,"SeqId: %s\n", p->SeqId); fprintf(fp,"RecordType: %d\n", p->RecordType); fprintf(fp,"ServedIMSI: %s\n",p->ServedIMSI); fprintf(fp,"ServedIMEI: %s\n",p->ServedIMEI); fprintf(fp,"SGSNAddress.IPBinaryAddress: %s\n",p->SGSNIPAddress); fprintf(fp,"MSNetworkCapability: %s\n",p->MSNetworkCapability); fprintf(fp,"RoutingAreaCode: %s\n",p->RoutingAreaCode); fprintf(fp,"LocationAreaCode: %s\n",p->LocationAreaCode); fprintf(fp,"CellIdentity: %s\n",p->CellIdentity); fprintf(fp,"ChargingID: %s\n",p->ChargingID); fprintf(fp,"GGSNAddressUsed.IPBinaryAddress: %s\n",p->GGSNAddress); fprintf(fp,"AccessPointNameNI: %s\n",p->AccessPointNameNI); fprintf(fp,"PDPType: %s\n",p->PDPTypeNumber); fprintf(fp,"ServedPDPAddress.IPAddress.IPBinaryAddress: %s\n",p->ServedPDPAddress);/* fprintf(fp,"List of Traffic Volumn {\n"); for(i=0;i<nNumber;i++) { fprintf(fp," {\n"); fprintf(fp," QosRequested{\n"); fprintf(fp," QoSNUMTS: %s\n",p->ListOfTrafficVolumn[0].QoSRUMTS); fprintf(fp," Reliability: %d\n",p->ListOfTrafficVolumn[0].QoSRReliability); fprintf(fp," Delay: %d\n",p->ListOfTrafficVolumn[0].QoSRDelay); fprintf(fp," Precedence: %d\n",p->ListOfTrafficVolumn[0].QoSRPrecedence); fprintf(fp," PeakThroughput: %s\n",p->ListOfTrafficVolumn[0].QoSRPeakThrougput); fprintf(fp," MeanThroughput: %s\n",p->ListOfTrafficVolumn[0].QoSRMeanThroughput); fprintf(fp," }\n"); fprintf(fp," QosNegotiated{\n"); fprintf(fp," QoSNUMTS: %s\n",p->ListOfTrafficVolumn[0].QoSNUMTS); fprintf(fp," Reliability: %d\n",p->ListOfTrafficVolumn[0].QoSNReliability); fprintf(fp," Delay: %d\n",p->ListOfTrafficVolumn[0].QoSNDelay); fprintf(fp," Precedence: %d\n",p->ListOfTrafficVolumn[0].QoSNPrecedence); fprintf(fp," PeakThroughput: %s\n",p->ListOfTrafficVolumn[0].QoSNPeakThrougput); fprintf(fp," MeanThroughput: %s\n",p->ListOfTrafficVolumn[0].QoSNMeanThroughput); fprintf(fp," }\n"); fprintf(fp," DataVolumeGPRSUplink: %s\n",p->ListOfTrafficVolumn[0].DataVolumeGPRSUp); fprintf(fp," DataVolumeGPRSDownlink: %s\n",p->ListOfTrafficVolumn[0].DataVolumeGPRSDown); fprintf(fp," ChangeCondition: %d\n",p->ListOfTrafficVolumn[0].ChangeCondition); fprintf(fp," ChangeTime: %s\n",p->ListOfTrafficVolumn[0].ChangeTime); } fprintf(fp," }\n");*/ fprintf(fp,"RecordOpeningTime: %s\n",p->RecordOpenTime); fprintf(fp,"CallDuration: %s\n",p->CallDuration); fprintf(fp,"SGSNChange: %d\n",p->SGSNChange); fprintf(fp,"CauseForRecClosing: %s\n",p->CauseForRecClosing); fprintf(fp,"Diagnostics: %d\n",p->Diagnostics); fprintf(fp,"RecordSequenceNumber: %s\n",p->RecordSequenceNumber); fprintf(fp,"NodeID: %s\n",p->NodeID); fprintf(fp,"RecordExtensions: %s\n",p->RecordExtensions); fprintf(fp,"LocalRecordSequenceNumber: %s\n",p->LocalRecordSequeceNumnber); fprintf(fp,"APNSelectionMode: %d\n",p->APNSelectionMode); fprintf(fp,"AccessPointNameOI: %s\n",p->AccessPointNameOI); fprintf(fp,"ServedMSISDN: %s\n",p->ServedMSISDN); fprintf(fp,"ChargingCharacteristics: %s\n",p->ChargingCharacteristics); fprintf(fp,"SystemType: %d\n",p->SystemType); fprintf(fp,"CAMELInformation {\n"); fprintf(fp," SCFAddress: %s\n",p->SCFAddress); fprintf(fp," ServiceKey: %s\n",p->ServiceKey); fprintf(fp," DefaultTransactionHandling: %d\n",p->DefaultTransacHandling); fprintf(fp," CAMELAccessPointNameNI: %s\n",p->CAMELAPNNI); fprintf(fp," CAMELAccessPointNameOI: %s\n",p->CAMELAPNOI); fprintf(fp," NumberOfDPEncountered: %s\n",p->NumberOfDPEncounter); fprintf(fp," LevelOfCAMELService: %s\n",p->LevelOfCamelService); fprintf(fp," FreeFORMATData: %s\n",p->FreeFormatData); fprintf(fp," FFDAppendIndicator: %d\n",p->FFDAppendIndicator);// fprintf(fp,"}\n");// fprintf(fp,"recordSequenceNumber{\n"); fprintf(fp," GGSNAddress: %s\n",p->GGSNAddress);// fprintf(fp," {\n");// for(i=0;i<p->nRecordSequenceNumber;i++)// { fprintf(fp, " %s\n", p->RecordSequenceNumber);// }// fprintf(fp," }\n");// fprintf(fp,"}\n"); fclose(fp);}int C_Dump::DumpOGCDR(const char* fname, S_OGCDR * p,int nNumber){ FILE * fp = fopen(fname, "a"); if (p==NULL || fname[0]==0) { return -1; } fprintf(fp,"\n G-CDR %s\n", Time()); fprintf(fp,"SeqId: %s\n", p->SeqId); fprintf(fp,"RecordType: %d\n", p->RecordType ); fprintf(fp,"NetworkInitiation: %d\n", p->NetworkInitiatedPDPContext ); fprintf(fp,"ServedIMSI: %s\n", p->ServedIMSI ); fprintf(fp,"GGSNAddress: %s\n", p->GGSNAddress ); fprintf(fp,"ChargingID: %s\n", p->ChargingID ); fprintf(fp,"SGSNIPAddress: %s\n", p->SGSNIPAddress ); fprintf(fp,"AccessPointNameNI: %s\n", p->AccessPointNameNI ); fprintf(fp,"PDPType: %s\n",p->PDPTypeNumber); fprintf(fp,"ServedPDPAddress: %s\n",p->ServedPDPAddress); fprintf(fp,"DynamicAddressFlag: %d\n",p->DynamicAddressFlag);/* fprintf(fp,"List of Traffic Volumn {\n"); for(i=0;i<nNumber;i++) { fprintf(fp," {\n"); fprintf(fp," QosRequested{\n"); fprintf(fp," QoSNUMTS: %s\n",p->ListOfTrafficVolumn[0].QoSRUMTS); fprintf(fp," Reliability: %d\n",p->ListOfTrafficVolumn[0].QoSRReliability); fprintf(fp," Delay: %d\n",p->ListOfTrafficVolumn[0].QoSRDelay); fprintf(fp," Precedence: %d\n",p->ListOfTrafficVolumn[0].QoSRPrecedence); fprintf(fp," PeakThroughput: %s\n",p->ListOfTrafficVolumn[0].QoSRPeakThrougput); fprintf(fp," MeanThroughput: %s\n",p->ListOfTrafficVolumn[0].QoSRMeanThroughput); fprintf(fp," }\n"); fprintf(fp," QosNegotiated{\n"); fprintf(fp," QoSNUMTS: %s\n",p->ListOfTrafficVolumn[0].QoSNUMTS); fprintf(fp," Reliability: %d\n",p->ListOfTrafficVolumn[0].QoSNReliability); fprintf(fp," Delay: %d\n",p->ListOfTrafficVolumn[0].QoSNDelay); fprintf(fp," Precedence: %d\n",p->ListOfTrafficVolumn[0].QoSNPrecedence); fprintf(fp," PeakThroughput: %s\n",p->ListOfTrafficVolumn[0].QoSNPeakThrougput); fprintf(fp," MeanThroughput: %s\n",p->ListOfTrafficVolumn[0].QoSNMeanThroughput); fprintf(fp," }\n"); fprintf(fp," DataVolumeGPRSUplink: %s\n",p->ListOfTrafficVolumn[0].DataVolumeGPRSUp); fprintf(fp," DataVolumeGPRSDownlink: %s\n",p->ListOfTrafficVolumn[0].DataVolumeGPRSDown); fprintf(fp," ChangeCondition: %d\n",p->ListOfTrafficVolumn[0].ChangeCondition); fprintf(fp," ChangeTime: %s\n",p->ListOfTrafficVolumn[0].ChangeTime); } fprintf(fp," }\n");*/ fprintf(fp,"RecordOpeningTime: %s\n",p->RecordOpenTime); fprintf(fp,"CallDuration: %s\n",p->CallDuration); fprintf(fp,"CauseForRecClosing: %s\n",p->CauseForRecClosing); fprintf(fp,"Diagnostics: %d\n",p->Diagnostics); fprintf(fp,"RecordSequenceNumber: %s\n",p->RecordSequenceNumber); fprintf(fp,"NodeID: %s\n",p->NodeID);// fprintf(fp,"RecordExtensions: %s\n",p->RecordExtensions); fprintf(fp,"LocalRecordSequenceNumber: %s\n",p->LocalRecordSequeceNumnber); fprintf(fp,"APNSelectionMode: %d\n",p->APNSelectionMode); fprintf(fp,"ServedMSISDN: %s\n",p->ServedMSISDN); fprintf(fp,"ChargingCharacteristics: %s\n",p->ChargingCharacteristics); fprintf(fp,"recordSequenceNumber{\n"); fprintf(fp," GGSNAddress: %s\n",p->GGSNAddress);// fprintf(fp," {\n");// for(i=0;i<p->nRecordSequenceNumber;i++)// { fprintf(fp, " %s\n", p->RecordSequenceNumber);// }// fprintf(fp," }\n");// fprintf(fp,"}\n"); fclose(fp); }int C_Dump::DumpOMCDR(const char* fname, S_OMCDR* p,int nNumber){ FILE * fp = fopen(fname, "a"); if (p==NULL || fname[0]==0) { return -1; } fprintf(fp,"\n M-CDR %s\n", Time()); fprintf(fp,"SeqId: %s\n",p->SeqId); fprintf(fp,"RecordType: %d\n",p->RecordType); fprintf(fp,"ServedIMSI: %s\n",p->ServedIMSI); fprintf(fp,"ServedIMEI: %s\n",p->ServedIMEI); fprintf(fp,"SgsnAddress.IPBinaryAddress: %s\n",p->SGSNIPAddress); fprintf(fp,"MSNetworkCapability: %s\n",p->MSNetworkCapability); //fprintf(fp,"RoutingArea ::%s\n",p->r); fprintf(fp,"LocationAreaCode: %s\n",p->LocationAreaCode); fprintf(fp,"CellIdentity: %s\n",p->CellIdentity);// fprintf(fp,"ChangeOfLocation {\n");// for(i=0;i<nNumber;i++)// {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -