sgipapi.h

来自「联通接收发送新程序」· C头文件 代码 · 共 139 行

H
139
字号
#ifndef SGIP_API_H_2423
#define SGIP_API_H_2423


#ifdef  __cplusplus
extern "C" {
#endif

typedef  struct  {
	unsigned char Login_Type;
	char	Login_Name[16];
	char	Login_Passwd[16];
	char	Reserve[8];
} SGIP_Bind_Body;


typedef  struct {
	unsigned char Result;
	char	Reserve[8];
} SGIP_Bind_Resp_Body;


typedef  struct {
	char		SPNumber[21];
	char		ChargeNumber[21];
	unsigned char	UserCount;
	char		UserNumber[22*100];
	char		CorpId[5];
	char		ServiceType[10];
	unsigned char FeeType;
	char		FeeValue[6];
	char		GivenValue[6];
	unsigned char AgentFlag;
	unsigned char MorelatetoMTFlag;
	unsigned char Priority;
	char		ExpireTime[16];
	char		ScheduleTime[16];
	unsigned char ReportFlag;
	unsigned char TP_pid;
	unsigned char TP_udhi;
	unsigned char MessageCoding;
	unsigned char MessageType;
	unsigned long MessageLength;
	char		MessageContent[255];
	char		Reserve[8];
}  SGIP_Submit_Body;


typedef  struct {
	unsigned char Result;
	char		Reserve[8];
} SGIP_Submit_Resp_Body;


typedef  struct {
	char		UserNumber[21];
	char		SPNumber[21];
	unsigned char TP_pid;
	unsigned char TP_udhi;
	unsigned char MessageCoding;
	char		Srcterminal_id[21];
	unsigned long Msg_Length;
	char		Msg_Content[255];
	char		Reserve[8];
}  SGIP_Deliver_Body;


typedef  struct {
	unsigned long SubmitSequenceNumber[3];
	unsigned char ReportType;
	char		UserNumber[21];
	unsigned char State;
	unsigned char ErrorCode;
	char		Reserve[8];
} SGIP_Report_Body;


typedef  struct {
	unsigned char Result;
	char		Reserve[8];
} SGIP_Deliver_Resp_Body;


typedef  struct {
	unsigned char Result;
	char		Reserve[8];
} SGIP_Report_Resp_Body;



typedef  struct {
		unsigned long Total_Length;	//total length of message
		unsigned long Command_ID;	// command type of message
		unsigned long Sequence_ID[3];	// sequence node
} SGIP_MsgHead;

typedef  union   {
	SGIP_Bind_Body			SGIP_Bind;
	SGIP_Bind_Resp_Body		SGIP_Bind_Resp;
	SGIP_Submit_Body			SGIP_Submit;
	SGIP_Submit_Resp_Body		SGIP_Submit_Resp;
	SGIP_Deliver_Body			SGIP_Deliver;
	SGIP_Deliver_Resp_Body		SGIP_Deliver_Resp;
	SGIP_Report_Body			SGIP_Report;		
	SGIP_Report_Resp_Body		SGIP_Report_Resp;
}	SGIP_MsgBody;

long initialize_msgbody( SGIP_MsgBody * body, unsigned long type);

long sendmsg_withseq (  int  socket, 
							SGIP_MsgBody * body, 
							unsigned long type,
							unsigned long sequence_id[3] );

long sendmsg_withoutseq (  int  socket,
							SGIP_MsgBody * body, 
							unsigned long type,
							unsigned long nodeid );

long recv_msghead (int socket, SGIP_MsgHead * head );

long recv_msgbody (int  socket, 
					long Msg_Length,
					SGIP_MsgBody * body, 
					unsigned long type  );

long connect_SMG (  int  * ISMG_Socket, 
char * ISMG_IP, 
unsigned short  ISMG_Port  );

#ifdef  __cplusplus
}
#endif




#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?