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

📄 useapi.cpp

📁 海南联通的一个SGIP协议短信API的例子程序
💻 CPP
字号:
// UseAPI.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "VASPClient.h"

int main(int argc, char* argv[])
{   
    int ret=vasp_Initialize("192.168.1.166",7900,"898001");
    if(ret!=0)
        return -1;

    unsigned int sequence[2];
    sequence[0]=0;
    sequence[1]=0;
    char *dest_id[10],usernumber[14];
    //for(int k=0;k<10;k++){
    //if(k%2==0)
         strcpy(usernumber,"13006057474");
    //else
    //      strcpy(usernumber,"13006047474");
    dest_id[0]=usernumber;

    char mes[200];
    //itoa(k,mes,10);
    strcpy(mes,"GGGGGGG");
    ret=SendSingleSubmit(sequence,"",(char)1,dest_id,"898001","8980010005","03","000005","000000",(char)2,(char)3,(char)15,(char)0,strlen(mes),mes);
    sequence[0]=0;
    sequence[1]=0;
	ret=SendSingleSubmit(sequence,"",(char)1,dest_id,"898001","8980010005","00","000000","000000",(char)0,(char)0,(char)15,(char)0,strlen(mes),mes);
    //if(ret!=0)
     //   return -1;
    //}
    printf("OK!!!!!!!\n");
    char isdeliver;
	int sn[2];
	
	char ServiceID[10];
	char SPN[21];
	unsigned char msg_type;
	char src_terminal_id[40];
    unsigned char msg_Fmt;
	unsigned char TPID,PID;
	unsigned int length;
	char msg_content[200];
	unsigned int ssn[2];
	unsigned char reporttype;
	unsigned char state;
    int ErrorCode;
    unsigned char errorcode;
    while(1){
      if ((ErrorCode = ReceiveNewDeliverOrReport(900,&isdeliver,sn,ServiceID,SPN,src_terminal_id,
           &msg_Fmt,&TPID,&PID,&msg_type,&length,msg_content,ssn,&reporttype,&state,&errorcode)) != 0)
	  {
                                 printf("Receive deliver error, error code = %d\n",ErrorCode);
                                 printf("%s\n",getErrorInfor());
	  }
	  printf("Recv: ErrCode=%d\n",ErrorCode);
	  switch(ErrorCode){

	  case -1:   //网络连接出错
                 while((ErrorCode = vasp_Initialize("192.168.1.188",7900,"898001"))!= 0){
                                        Sleep(1000);
                                        printf("%d, %s\n",ErrorCode,getErrorInfor());
                 }
                 printf("Again Initialize Success!\n");
                 break;
	  case 4:    //收到错误数据包,不作处理
		         printf("Begin to receive data again\n");
                 break;
             
      case 0:    
		         if(isdeliver == 1){//是deliver?
                     printf("The deliver information is below:\n");
					 int i;
                     for(i=0;i<2;i++){
                               printf("%s","sequencenumber is:");
                               printf(" %d",sn[i]);
                     }
                     printf("\n");
                     printf("msg_type=%d\nSPNumber=%s\nServiceID is %s\nusernumber=%s\nmsg_fmt=%d\nmsg_length=%d\nmsg_content is: %s\n",msg_type,SPN,ServiceID,src_terminal_id,msg_Fmt,length,msg_content);
                     
                     dest_id[0]=src_terminal_id;
                     sprintf(mes,"%s%s","您输入的信息是:",msg_content);
                     printf("Ret mes is %s\n",mes);
                     ret=SendSubmit(sequence,"","\0",(char)1,dest_id,"898001","8980010005","00","000000","000000",(char)0,(char)0,(char)0,"\0","\0",(char)2,(char)21,(char)0,(char)15,(char)0,strlen(mes),mes);
                 }	 
                  break;

    default:            printf("Error RecieveDate\n");
                        break;
	}                     
   }

	return 0;
}

⌨️ 快捷键说明

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