⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sgip_api_test.cpp

📁 该接口库是用VC6.0开发的基于Windows平台上的SGIP1.2协议的实现
💻 CPP
字号:
// SGIP_API_TEST.cpp : Defines the entry point for the console application.
/**
*	说明:中国联通SGIP1.2接口库示例程序	
*	作者:PrinceToad
*	Email:princetoad@tom.com
*	Http://gmm.nease.net
*	版本:1.0 2003/09/09
*/

#include "stdafx.h"

#include "..\\sgip.h"

#pragma comment(lib, "..\\sgip.lib")

void sp_com_set_submit(sgipg_submit *ss, char *msisdn, void *sms, int sms_len)
{
	strncpy(ss->sSpNumber, "2100", 4);

	strcpy(ss->sChargeNumber, msisdn);

	ss->cUserCount = 1;

	strcpy(ss->sUserNumber, msisdn);

	strncpy(ss->sCorpId, "3010012345", 10);

	strncpy(ss->sServiceType, "9999", 4);

	ss->cFeeType = 1;

	ss->cMorelatetoMTFlag = 2;

	memcpy(ss->sMsgContent, sms, sms_len);

	ss->nMsgLen = ntohl(sms_len);

	return;
}

void PDeliver(DeliverStr  deliver);

void PReport(ReportStr report);

void PResponse(MTRespStr  response);

void PMTError(MTErrorStr mterror);

/**
*	处理Deliver消息的函数
*/
void PDeliver(DeliverStr  deliver) {
	printf("Deliver.\n");

	printf("SeqId = %d\n", deliver.nSeq );

	printf("MsgLen = %d\n", deliver.nMsgLen );

	printf("MsgContent = %s\n", deliver.sMsgContent);

	return;
}

/**
*	处理Report消息的函数
*/
void PReport(ReportStr report){
	printf("Report.\n");
	return;
}

/**
*	处理SubmitResponse消息的函数
*/
void PResponse(MTRespStr  response){
	printf("MTResponse.\n");
	return;
}

/**
*	处理MT失败的函数
*/
void PMTError(MTErrorStr mterror){
	printf("MTError.Errcode = %d\n", mterror.nErrorType);
	return;
}


int main(int argc, char* argv[])
{
//定义一个Csgip对象
	CSgip sgip;
//定义一个Submit数据包
	sgipg_submit	ss;
	ZeroMemory(&ss, sizeof(sgipg_submit));
/*启动系统,本地绑定地址默认,本地监听端口8802,远程网关地址"127.0.0.1",网关端口号8801,登录用户名口令"test",连接类型1,源节点号"3010012345",处理Deliver消息的函数指针Pdeliver,处理Report消息的函数指针Preport,处理MTResponse消息的函数指针Preponse,处理MTError消息的函数指针PMTError.*/
	if (0 != sgip.Start("", 8802, "127.0.0.1", 8801, "test", "test", 1, "3010012345",		&PDeliver, &PReport, &PResponse, &PMTError) ) {

		MessageBox(NULL, "初始化失败.", "提示", MB_ICONERROR);
		goto finished;
	}

// 用于构造submit消息包的函数
	sp_com_set_submit(&ss, "8613012345678", "test sms", 8);
//向网关提交submit消息包
	int ix;
	for (ix=0; ix<100; ix++) {
		sgip.Submit(ss);
	}
//主程序暂停,系统自动在后台运行,进行短消息的收发处理操作。
	system("pause");

finished:
//退出系统前进行系统清理工作
	sgip.Release();
	return 0;
}

⌨️ 快捷键说明

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