java发送短信

来源:互联网 发布:赛钛客st软件下载 编辑:程序博客网 时间:2024/06/05 18:17
 
java发短信
2010-09-13 11:08


package dao;

import java.util.Date;

import mobset.*;
public class smsDemo {


public static void main(String[] avgs)
    {
    
     System.out.print("正在连接服务器...");
     System.out.print("\r\n");
     smsSDK sdk = new smsSDK();
     int iRet = sdk.Sms_Connect("218.204.216.161",100000,"test","test",30); //测试时请更改企业ID,用户名,密码
     if ( iRet==0 )//登录成功
     {
    System.out.print("连接服务器成功,正在取可用短信量...");
    System.out.print("\r\n");
    iRet = sdk.Sms_KYSms();
    if ( iRet>=0 )
    {
     System.out.print("此帐户可用短信量为:");
     System.out.print(iRet);
     System.out.print("\r\n");
    }
    else
    {
          System.out.print("取可用短信量失败,错误代码是:");
          System.out.print(iRet);
          sdk.Sms_DisConnect(); //断开与服务器的连接
          sdk = null;
          System.exit(0); // 程序结束
    }
    System.out.print("连接服务器成功,此帐号的短信实名为:");
    System.out.print(sdk.Sms_GetCM());
    System.out.print(",最大可发短信字数:");
    System.out.print(sdk.Sms_GetMaxLen());
    System.out.print("。\r\n正在发送测试短信...");
    System.out.print("\r\n");
    //测试发送2条短消息
    str_SendMsg [] sendMsg = new str_SendMsg[2];
    for ( int i=0 ; i<2 ; i++)
    {
     sendMsg[i] = new str_SendMsg();
    }
    sendMsg[0].strExNum = "001";             //扩展号码,不用扩展请留空。
    sendMsg[0].strMobile="15812636361";      //目标手机号码,测试时请更改号码。
    sendMsg[0].strMsg="这是测试短消息1";        //短信内容
    sendMsg[0].dTimer = new Date(); //定时时间,没有则为立即发送
    sendMsg[1].strExNum = "";                //扩展号码,不用扩展请留空。
    sendMsg[1].strMobile="15812636361";      //目标手机号码,测试时请更改号码。
    sendMsg[1].strMsg="这是测试短消息2";        //短信内容
   
    iRet = sdk.Sms_Send(sendMsg,1); //测试连接发2条的情况
    if ( iRet>0)
    {
     System.out.print("发送短消息成功,MsgID为:");
     System.out.print(sendMsg[0].iSmsID);
     System.out.print(",");
     System.out.print(sendMsg[1].iSmsID);
     System.out.print("\r\n");
    }
    else
    {
          System.out.print("发送短消息失败,错误代码是:");
          System.out.print(iRet);
          sdk.Sms_DisConnect(); //断开与服务器的连接
          sdk = null;
          System.exit(0); // 程序结束
    }
   
    System.out.print("正在检测接收短信.");
         for ( int i=0 ; i<60 ; i++ ) //测试60秒,看有没有收到新的短消息。实际使用应该使用线程来检测
         {
             str_RecvMsg recvMsg = new str_RecvMsg();
             iRet=sdk.Sms_Get(recvMsg); //检测看有没有接收到短信
             if ( iRet>=0 ) //有接收到短信
             {
              System.out.print("接收到短消息,信息如下:\r\n");
              System.out.print("发信人:");
              System.out.print(recvMsg.strSendNum);
              System.out.print("\r\n");
              System.out.print("短信内容:");
              System.out.print(recvMsg.strMsg);
              System.out.print("\r\n");
              //break;
             }
         
             try {
                Thread.sleep(1000);//延时1秒后再重试
             } catch(InterruptedException e) {
             }
             System.out.print(".");
         }
    sdk.Sms_DisConnect(); //断开与服务器的连接
    sdk = null;
         System.out.print("正常退出短信接口!\r\n");
     }
     else
     {
    System.out.print("连接服务器失败,错误代码是:");
    System.out.print(iRet);
    sdk = null;
    System.exit(0); // 程序结束
     }
    
    }
}

原创粉丝点击