mas2.0 java 短信/彩信开发接口

 最近项目使用到了一个新的短信开发工具,下面是测试代码

SmsApiClient smsApiClient = null; 
		long mobile = 12312312312l;
		String content="发送API短信"; //短信内容 
		String xcode="";//短信扩展码 
		String appID="";//API插件标识ID 
		String appPwd="";//API插件密码

		int masApiPort=61616; 
		String masIP=""; 
		//SmsApiClientHandlerImpl是由自己实现的 
		SmsApiClientHandler smsHandler = new SmsApiClientHandlerImpl(); 
		try { 
			smsApiClient = new SmsApiClientImpl(smsHandler, masIP, masApiPort, appID, appPwd);
			//设置是否自动重连到服务器(可以不需要设置) 
			smsApiClient . setAutoConnect (true); 
			//设置自动重连服务器相隔时间(单位:秒), 默认为30秒(可以不需要设置) 
			smsApiClient. setReConnectInterval (60); 
			//设置与服务连接超时时长,单位:millisecond(可以不需要设置)
			smsApiClient.setConnectTimeout(100000); 
			//设置发送超时时长,单位:millisecond(可以不需要设置) 
			smsApiClient .setSendTimeout(1000000); 
			smsApiClient.start();
			//获得短信群发提交的数量限制 
			int ret = smsApiClient.getDestAddrsLimit(); 
			//获取网关连接状态(Connect:连接正常, Disconnect:断连, NotConnect:没有连接, Other:其他)
			ConnectStatus connectStatus= smsApiClient.getConnStatusIAGW(); 
			if (!ConnectStatus.Connect.equals(connectStatus)) { 
				System.out.println("网关未连接"); return; } 
			//计算短信条数和字数 
			SmsCount smsCount= smsApiClient. getSmsCount(content, MsgFmt.GB2312, SmsType.Normal); 
			//获得扩展服务代码(插件短信扩展号码+流水号)长度
			int xcodeLength= smsApiClient.getXCodeLength() ;
			 
			List<String> list = new ArrayList<String>();
			//每次群发数量不能超过最大限制数 
			for (int i = 0; i < ret ; i++) { 
				long address = mobile + i; 
				list.add(String.valueOf(address));
			}
//						/*
			//发送短信 //======构造发送短信对象开始,下面代码演示发送短信对象几个比较主要的属性值,其它的属性可以不设置,如果要设置可以参考sendSms方法中 SmsSendRequest参数=== 
			ApiSmsSendRequest smsSendRequest = new ApiSmsSendRequest();
			smsSendRequest.setAppID(appID);
			smsSendRequest.setDestAddrs(list);
			smsSendRequest.setXCode(xcode);
			smsSendRequest.setMessage(content);
			smsSendRequest.setMsgFormat(MsgFmt.GB2312);
			smsSendRequest.setType(SmsType.Normal);
			smsSendRequest.setValidTime(10000);
			smsSendRequest.setNeedReport(true);
			smsSendRequest.setPriority(0);
			//======构造发送短信对象结束=======
			ApiSmsSendResponse smsSendResponse = smsApiClient.sendSms(smsSendRequest); 
			System.out.println("提交成功,requestID:" + smsSendResponse.getRequestID()+",errcode"+smsSendResponse.getErrCode()+",desc"+smsSendResponse.getDesc()); 
			} catch (Exception e) {
				e.printStackTrace();
				System.out.println("API短信客户端调用失败:" + e.getMessage()); 
//				smsApiClient.loginOut();
				return; 
			}


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章