📄 swi.h
字号:
/* SWI.H : 用户数据管理系统交换机接口
Jason Chen, 97.11.18
*/
#include <time.h>
#include "commsdms.h"
#define INIFileName "swi.ini"
#define ErrLogFileName "swierr.log"
#define InfoLogFileName "swi.log"
#define WarnLogFileName "link.txt"
#define INI_LEN 128 /* INI value len */
#define MAX_PASS_LEN 20
#define MAX_STEP_LEVEL 16
#define TEL_LEN 10
#define MAX_PARA_LEN 256
#define FUNC_CODE_LEN 3
#define RTNCODE_LEN 4
#define MAX_NEWSRV_LEN 18
#define NECDELAY 2 /* Delay time after login */
#define F150DELAY 2 /* F150 delay time, 2 sec */
#define CIL_TIMEOUT 480 /* 实装统计超时时间(秒) */
/* NewSrv position */
#define DTMF 0
#define TOLL_CALL 1
#define INT_CALL 2
#define HOT_LINE_A 3
#define HOT_LINE_B 4
#define CALL_WAIT 5
#define THREE_WAY_CALL 6
#define CALL_FORWARD 7
#define WAKE_UP 8
#define CALL_FORWARD_BUSY 9
#define CALL_STORE_BUSY 10
#define NOT_DISTURB 11
#define ABSENTEE 12
#define SPEED_CALL 13
#define MALICIOUS_TRACE 14
#define CALL_RESTRICT 15
#define FJX 16
#define LDXS 17
/************* Switch Type *************/
#define SWITCH_TYPE_NUM 14
#define E10B 1
#define NEC 2
#define NECBF62 2
#define NECG30 3
#define CC08 4
#define F150V8 5
#define F150V8V5 5
#define F150V9 6
#define F150V9V5 6
#define S1240E 7
#define S1240J 8
#define _5ESS 9
#define _5ESSV5 9
#define EWSD 10
struct SwitchStru {
int SwitchType; /* F150 or NEC or S1240 or ... */
char SwitchTypeStr[32]; /* Switch type string */
int V5; /* V5=1 or V5=0 */
char Office[13]; /* Office name */
char Exk[100][8];
int ExkPtr;
char Password[MAX_PASS_LEN]; /* Password to enter switch */
char Addr[20]; /* Terminal server IP address */
char Port[8]; /* Terminal server port */
char TcpNodeName[10]; /* Use the sequence No. as the node name */
int Connect; /* Connection status, 0=disconnect, 1=connect */
int DisconnectTimes;
//----------------------
char ReqSrc[24]; /* Request source name */
char TID[64]; /* Task ID */
int Func; /* Function */
struct SwitchStru *NewSw; /* for 移机 */
int Busy; /* Switch status */
int Step[MAX_STEP_LEVEL]; /* Step stack */
int SP; /* Step stack pointer */
time_t timer;
char Tel[TEL_LEN+1];
char NewSrv[MAX_NEWSRV_LEN+3];
char Para[MAX_PARA_LEN];
char RcvBuff[MAX_TCP_STREAM_BUFFER];
int ReturnCode;
int InstLine /* Installed lines */
};
struct ExkStru {
char Exk[8];
char Office[13]; /* Office name */
char SwitchTypeStr[32]; /* Switch type string */
struct SwitchStru *SwPtr; /* Pointer to switch node */
};
/********** Function *************/
void ReadINIFile(void);
void ReadExkFile(void);
void SetupTcp(void);
void AcceptRequestPacket(char *ReqSrc);
int Send2Switch(void);
void ReturnResult(char *ReqSrc, char *TID, int ReturnCode, char *Para);
void LogErr(char *msg);
void LogWarn(void);
void LogInfo(char *msg);
int Quit(void);
char *strupr(char *str);
int GetPara(char *src, char *name, char *buff, int maxlen);
void timer(void);
void Go(int step);
void GoSub(int step);
void Rtn(void);
void Send2Warn(void);
/*==== NEC ====*/
int GetPacketNEC(void);
int GetNewSrvNEC(void);
int GetNumOfLineNEC(void);
void NECMapErrCommon(void);
void NECMapErrNEW(void);
void NECMapErrDSC(void);
void NECMapErrSPS(void);
void NECMapErrSPR(void);
void NECMapErrDNC(void);
void NECMapErrUAN(void);
void NECMapErrCLC(void);
void NECMapErrMTR(void);
/*==== NECG30 ====*/
void NECG30MapErr(void);
void GetResultNECG30CRE(void);
void GetResultNECG30VIEW(void);
void GetResultNECG30DEL(void);
void GetResultNECG30REG(void);
void GetResultNECG30CAN(void);
void GetResultNECG30CHG(void);
void GetResultNECG30MOD(void);
void GetResultNECG30REGMTR(void);
void GetResultNECG30CANMTR(void);
int GetNumOfLineNECG30(void);
/*==== F150V9 ====*/
int GetF150V9SrcErr(void);
int GetResultF150V9Login(void);
int GetResultF150V9CHASBS(void);
int GetResultF150V9DISSBS(void);
int GetResultF150V9LISSBS(void);
int GetResultF150V9DISTIP(void);
int GetResultF150V9CHATIP(void);
int GetResultF150V9STCH(void);
int GetResultF150V9SVRG(void);
int GetResultF150V9CNCH(void);
int GetResultF150V9UNCH(void);
int GetResultF150V9CANMCT(void);
int GetResultF150V9REGMCT(void);
int F150V9MapErrCommon(int SrcErr);
int F150V9MapErrCHASBS(int SrcErr);
/*==== F150V8 ====*/
int GetF150V8SrcErr(void);
int GetResultF150V8Login(void);
int GetResultF150V8CHASUB(void);
int GetResultF150V8DISSUB(void);
int GetResultF150V8STCH(void);
int GetResultF150V8SVRG(void);
int GetResultF150V8CLCH(void);
int GetResultF150V8CANMCT(void);
int GetResultF150V8REGMCT(void);
int F150V8MapErrCommon(int SrcErr);
int F150V8MapErrCHASUB(int SrcErr);
/*===== 5ESS ======*/
void GetResult5ESSNewLine(void);
void GetResult5ESSRemove(void);
void GetResult5ESSStop(void);
void GetResult5ESSRestore(void);
void GetLL5ESS(char *LL);
void GetResult5ESSNewSrv1(void);
int Get5ESSNewSrvPos(char *name);
void GetResult5ESSReadNewSrv(void);
void GetResult5ESSNewSrv2(void);
void GetResult5ESSQudb(void);
void GetResult5ESSCIL(void);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -