亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? smshelper.java

?? 一個SMS 的短信平臺的原代碼
?? JAVA
字號:
package edu.soft.buaa.message.sms;
import java.util.*;
public class SMSHelper {

	private static SMSHelper helper = null;
	private static Object initLock = new Object();
	private static Object initLock2 = new Object();
	private SMSService srv = null;
	private String comport = "com1";
	private int baud = 9600;
	private int MessageMode = SMSService.MODE_PDU;
	private String SMSCenterNo = "+8613800100500";
	private int semaphore = 1;
	public  void P() {
		
		synchronized(initLock){
			semaphore--;
		
			while(semaphore < 0) {
				try{
				Thread.sleep(5);

				}catch(Exception exs){
				
				}
			}
		}

	}

	public  void V() {


		synchronized(initLock2){
			semaphore++;
		
		
		}
		

		
		

	}

	private SMSHelper() {

	}

	private void init() {

		if (srv == null)
			srv = new SMSService(comport, baud);

	}
	public void setSMSCenterNo(String no) {
		if (!no.startsWith("+86")) {

			no = "+86" + no;

		}
		this.SMSCenterNo = no;

	}
	public void setPort(String port) {
		comport = port;

	}
	public void setBaud(int baud) {

		this.baud = baud;

	}

	public LinkedList readMessage() {
		int status;
		init();
		LinkedList ll = new LinkedList();
		LinkedList returnlist = new LinkedList();
		try {
			//	Initialize service.	
			srv.initialize();
			//	Set the cache directory.
			srv.setCacheDir(".\\");

			//	Connect to GSM device.
			status = srv.connect();
			//	Did we connect ok?
			if (status == SMSService.ERR_OK) {
				//	Set the operation mode to PDU
				srv.setOperationMode(SMSService.MODE_PDU);

				//	Request to read all messages.
				if (srv.readMessages(ll, IncomingMessage.CLASS_ALL)
					== SMSService.ERR_OK)
					//	Enumerate and print all messages.
					for (int i = 0; i < ll.size(); i++) {
						IncomingMessage msg = (IncomingMessage) ll.get(i);
						//System.out.println(msg);
						ShortMessage sm =
							new ShortMessage(
								msg.getDate(),
								msg.getOriginator(),
								msg.getRecipient(),
								msg.getText(),
								msg.getMemIndex());

						returnlist.add(sm);
					}

				// Enough for now...
				// Disconnect from GSM device.
				srv.disconnect();
			} else
				System.out.println(
					"Connection to mobile failed, error: " + status);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return returnlist;
	}
	public LinkedList receiveMessage() {
		int status;
		init();
		LinkedList ll = new LinkedList();
		LinkedList returnlist = new LinkedList();
		try {
			//	Initialize service.	
			srv.initialize();
			//	Set the cache directory.
			srv.setCacheDir(".\\");

			//	Connect to GSM device.
			status = srv.connect();
			//	Did we connect ok?
			if (status == SMSService.ERR_OK) {
				//	Set the operation mode to PDU
				srv.setOperationMode(SMSService.MODE_PDU);

				//	Request to read all messages.
				if (srv.readMessages(ll, IncomingMessage.CLASS_ALL)
					== SMSService.ERR_OK)
					//	Enumerate and print all messages.
					for (int i = 0; i < ll.size(); i++) {
						IncomingMessage msg = (IncomingMessage) ll.get(i);
						//System.out.println(msg);
						ShortMessage sm =
							new ShortMessage(
								msg.getDate(),
								msg.getOriginator(),
								msg.getRecipient(),
								msg.getText(),
								msg.getMemIndex());
						srv.deleteMessage(msg.getMemIndex());
						returnlist.add(sm);
					}

				// Enough for now...
				// Disconnect from GSM device.
				srv.disconnect();
			} else
				System.out.println(
					"Connection to mobile failed, error: " + status);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return returnlist;
	}

	public LinkedList readOldMessage() {
		int status;
		init();
		LinkedList ll = new LinkedList();
		LinkedList returnlist = new LinkedList();
		try {
			//	Initialize service.	
			srv.initialize();
			//	Set the cache directory.
			srv.setCacheDir(".\\");

			//	Connect to GSM device.
			status = srv.connect();
			//	Did we connect ok?
			if (status == SMSService.ERR_OK) {
				//	Set the operation mode to PDU
				srv.setOperationMode(SMSService.MODE_PDU);

				//	Request to read all messages.
				if (srv.readMessages(ll, IncomingMessage.CLASS_ALL)
					== SMSService.ERR_OK)
					//	Enumerate and print all messages.
					for (int i = 0; i < ll.size(); i++) {
						IncomingMessage msg = (IncomingMessage) ll.get(i);
						//System.out.println(msg);
						ShortMessage sm =
							new ShortMessage(
								msg.getDate(),
								msg.getOriginator(),
								msg.getRecipient(),
								msg.getText(),
								msg.getMemIndex());

						returnlist.add(sm);
					}

				// Enough for now...
				// Disconnect from GSM device.
				srv.disconnect();
			} else
				System.out.println(
					"Connection to mobile failed, error: " + status);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return returnlist;
	}
	public LinkedList readNewMessage() {
		int status;
		init();
		LinkedList ll = new LinkedList();
		LinkedList returnlist = new LinkedList();
		try {
			//	Initialize service.	
			srv.initialize();
			//	Set the cache directory.
			srv.setCacheDir(".\\");

			//	Connect to GSM device.
			status = srv.connect();
			//	Did we connect ok?
			if (status == SMSService.ERR_OK) {
				//	Set the operation mode to PDU
				srv.setOperationMode(SMSService.MODE_PDU);

				//	Request to read all messages.
				if (srv.readMessages(ll, IncomingMessage.CLASS_REC_UNREAD)
					== SMSService.ERR_OK)
					//	Enumerate and print all messages.
					for (int i = 0; i < ll.size(); i++) {
						IncomingMessage msg = (IncomingMessage) ll.get(i);
						//System.out.println(msg);
						ShortMessage sm =
							new ShortMessage(
								msg.getDate(),
								msg.getOriginator(),
								msg.getRecipient(),
								msg.getText(),
								msg.getMemIndex());

						returnlist.add(sm);
					}

				// Enough for now...
				// Disconnect from GSM device.
				srv.disconnect();
			} else
				System.out.println(
					"Connection to mobile failed, error: " + status);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return returnlist;
	}

	public LinkedList receiveNewMessage() {
		int status;
		init();
		LinkedList ll = new LinkedList();
		LinkedList returnlist = new LinkedList();
		try {
			//	Initialize service.	
			srv.initialize();
			//	Set the cache directory.
			srv.setCacheDir(".\\");

			//	Connect to GSM device.
			status = srv.connect();
			//	Did we connect ok?
			if (status == SMSService.ERR_OK) {
				//	Set the operation mode to PDU
				srv.setOperationMode(SMSService.MODE_PDU);

				//	Request to read all messages.
				if (srv.readMessages(ll, IncomingMessage.CLASS_REC_UNREAD)
					== SMSService.ERR_OK)
					//	Enumerate and print all messages.
					for (int i = 0; i < ll.size(); i++) {
						IncomingMessage msg = (IncomingMessage) ll.get(i);
						//System.out.println(msg);
						ShortMessage sm =
							new ShortMessage(
								msg.getDate(),
								msg.getOriginator(),
								msg.getRecipient(),
								msg.getText(),
								msg.getMemIndex());
						srv.deleteMessage(msg.getMemIndex());
						returnlist.add(sm);
					}

				// Enough for now...
				// Disconnect from GSM device.
				srv.disconnect();
			} else
				System.out.println(
					"Connection to mobile failed, error: " + status);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return returnlist;
	}
	public void deleteMessage(int memId) {
		int status;
		init();

		try {
			//	Initialize service.	
			srv.initialize();
			//	Set the cache directory.
			srv.setCacheDir(".\\");

			//	Connect to GSM device.
			status = srv.connect();
			//	Did we connect ok?
			if (status == SMSService.ERR_OK) {
				//	Set the operation mode to PDU
				srv.setOperationMode(SMSService.MODE_PDU);

				srv.deleteMessage(memId);

				// Enough for now...
				// Disconnect from GSM device.
				srv.disconnect();
			} else
				System.out.println(
					"Connection to mobile failed, error: " + status);
		} catch (Exception e) {
			e.printStackTrace();
		}

	}
	public void SendMessageList(LinkedList ll) {
		int status;
		init();
		LinkedList tmplist = new LinkedList();
		for (int i = 0; i < ll.size(); i++) {

			ShortMessage sm = (ShortMessage) ll.get(i);
			String phone = sm.getToPhone();
			String text = sm.getText();

			if (!phone.startsWith("+86")) {

				phone = "+86" + phone;

			}

			OutgoingMessage ogm = new OutgoingMessage(phone, text);
			ogm.setMessageEncoding(SMSMessage.MESSAGE_ENCODING_UNICODE);
			tmplist.add(ogm);
		}
		try {
			//	初始化機器	

			srv.initialize();
			////	Set the cache directory.
			srv.setCacheDir(".\\");

			//	Set the phonebook.
			//	srv.setPhoneBook("../misc/phonebook.xml");
			//	Connect to GSM device.
			status = srv.connect();
			//	Did we connect ok?
			if (status == SMSService.ERR_OK) {

				//	Set the operation mode to PDU - default is ASCII.
				srv.setOperationMode(MessageMode);

				// Set the SMSC number (set to default).
				srv.setSmscNumber(SMSCenterNo);

				if (srv.sendMessage(tmplist) == SMSService.ERR_OK)
					System.out.println("Message Sent Success!");
				else
					System.out.println("Message Failed!");

				// Disconnect from GSM device.
				//srv.disconnect();
			} else
				System.out.println(
					"Connection to mobile failed, error: " + status);
			V();
		} catch (Exception e) {
			e.printStackTrace();
		}

	}
	public void sendMessage(String phone, String text) {
		int status;
		init();
		if (!phone.startsWith("+86")) {

			phone = "+86" + phone;

		}
		try {
			//	初始化機器

			srv.initialize();
			//	Set the cache directory.
			srv.setCacheDir(".\\");

			//	Set the phonebook.
			//	srv.setPhoneBook("../misc/phonebook.xml");
			//	Connect to GSM device.
			status = srv.connect();
			//	Did we connect ok?
			if (status == SMSService.ERR_OK) {
				//	Set the operation mode to PDU - default is ASCII.
				srv.setOperationMode(MessageMode);

				// Set the SMSC number (set to default).
				srv.setSmscNumber(SMSCenterNo);

				//	Create a OutgoingMessage object and dispatch it.
				//	*** Please update the phone number with one of your choice ***
				OutgoingMessage msg = new OutgoingMessage(phone, text);

				//	Character set is 7bit by default - lets make it UNICODE :)
				//	We can do this, because we are in PDU mode (look at line 63). When in ASCII mode,
				//		this does not make ANY difference...
				msg.setMessageEncoding(SMSMessage.MESSAGE_ENCODING_UNICODE);

				if (srv.sendMessage(msg) == SMSService.ERR_OK)
					System.out.println(
						"Message Sent to " + phone + " Success!");
				else
					System.out.println("Message Failed!");

				// Disconnect from GSM device.
				srv.disconnect();
			} else
				System.out.println(
					"Connection to mobile failed, error: " + status);

		} catch (Exception e) {
			e.printStackTrace();
		}

	}

	public static SMSHelper getInstance() {
		if (helper == null) {
			synchronized (initLock) {
				if (helper == null) {
					try {

						helper = new SMSHelper();
					} catch (Exception ex) {
						return null;

					}

				}
			}
		}
		return helper;
	}

	public boolean openConnection() {
		init();
		srv.initialize();
		//	Set the cache directory.
		srv.setCacheDir(".\\");

		//	Connect to GSM device.
		int status = srv.connect();
		if (status == SMSService.ERR_OK) {
			return true;
		} else {
			return false;
		}
	}
	public void closeConnection() {
		srv.disconnect();
	}

	public void SendMessageListInThread(LinkedList ll) {
		int status;
		init();
		LinkedList tmplist = new LinkedList();
		for (int i = 0; i < ll.size(); i++) {

			ShortMessage sm = (ShortMessage) ll.get(i);
			String phone = sm.getToPhone();
			String text = sm.getText();

			if (!phone.startsWith("+86")) {

				phone = "+86" + phone;

			}

			OutgoingMessage ogm = new OutgoingMessage(phone, text);
			ogm.setMessageEncoding(SMSMessage.MESSAGE_ENCODING_UNICODE);
			tmplist.add(ogm);
		}
		try {

			// Set the SMSC number (set to default).
			srv.setSmscNumber(SMSCenterNo);
			P();
			if (srv.sendMessage(tmplist) == SMSService.ERR_OK)
				System.out.println("Message Sent Success!");
			else
				System.out.println("Message Failed!");
			V();

		} catch (Exception e) {
			e.printStackTrace();
		}

	}
	public LinkedList waitNewMessageInThread() {
		int status;
		init();
		LinkedList ll = new LinkedList();
		LinkedList returnlist = new LinkedList();
		try {
			//	Initialize service.	

			//	Did we connect ok?
			if (0 == SMSService.ERR_OK) {
				//	Set the operation mode to PDU
				srv.setOperationMode(SMSService.MODE_PDU);

				DeadLock : while (!ReceiveSMSThread.CLOSE_SIGNAL) {
					Thread.sleep(500);
					P();
					status = srv.waitMessages(ll);
					V();	
					//	Request to read all messages.
					if (status == SMSService.ERR_OK) {
						//	Enumerate and print all messages.
						for (int i = 0; i < ll.size(); i++) {
							IncomingMessage msg = (IncomingMessage) ll.get(i);
							//System.out.println(msg);
							ShortMessage sm =
								new ShortMessage(
									msg.getDate(),
									msg.getOriginator(),
									msg.getRecipient(),
									msg.getText(),
									msg.getMemIndex());
									P();
							srv.deleteMessage(msg.getMemIndex());
								V();
							returnlist.add(sm);
							

							break DeadLock;
						}

					} else {

					}
				}
				// Enough for now...
				// Disconnect from GSM device.

			} else
				System.out.println(
					"Connection to mobile failed, error: " + status);

		} catch (Exception e) {
			e.printStackTrace();
		}
		return returnlist;
	}

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩免费视频| 狠狠v欧美v日韩v亚洲ⅴ| 久久精品无码一区二区三区| 91精品国产麻豆| 欧美日免费三级在线| 欧美在线观看一区| 欧美日高清视频| 欧美一区二区福利在线| 日韩三级中文字幕| 欧美电影免费提供在线观看| 精品精品欲导航| 久久一区二区三区四区| 国产午夜精品久久久久久久| 久久精品男人的天堂| 国产精品色一区二区三区| 亚洲色图在线视频| 午夜精品久久久| 久久精品噜噜噜成人88aⅴ| 久久99精品国产91久久来源| 久久97超碰国产精品超碰| 国产精品一区二区在线看| 粉嫩在线一区二区三区视频| 91视视频在线直接观看在线看网页在线看| 一本一道久久a久久精品| 欧美午夜片在线看| 日韩美女天天操| 综合网在线视频| 亚洲小少妇裸体bbw| 精品一区二区精品| 91视频.com| 精品欧美一区二区在线观看| 国产精品久久久久影视| 亚洲综合一区二区| 国产精品综合一区二区| 在线观看av不卡| 国产亚洲精品资源在线26u| 一区二区三区影院| 国产一区二区三区不卡在线观看| 99久久综合国产精品| 欧美日韩国产综合一区二区三区| 国产亚洲一区二区三区在线观看| 亚洲精品一二三| 国产一区二区三区免费看| 日本道免费精品一区二区三区| 日韩一卡二卡三卡四卡| 亚洲视频中文字幕| 国产乱子伦视频一区二区三区 | 日韩欧美亚洲一区二区| 国产精品久久久久一区二区三区| 日本伊人精品一区二区三区观看方式| 国产成人av电影在线| 91精品国产一区二区| 亚洲人成网站在线| 成人动漫视频在线| 欧美电影免费提供在线观看| 亚洲综合视频在线观看| 国产99久久久久| 欧美刺激午夜性久久久久久久| 有坂深雪av一区二区精品| 国产 日韩 欧美大片| 精品日产卡一卡二卡麻豆| 日本欧美一区二区三区乱码| 色狠狠一区二区三区香蕉| 欧美激情在线看| 国产麻豆精品视频| 久久这里只有精品视频网| 奇米精品一区二区三区在线观看 | av激情亚洲男人天堂| 久久免费电影网| 九色综合狠狠综合久久| 欧美日韩在线观看一区二区 | 欧美一区二区在线视频| 亚洲一区在线播放| 欧洲中文字幕精品| 亚洲综合色网站| 欧美性猛交一区二区三区精品| 亚洲欧美日韩久久精品| 97国产精品videossex| 亚洲同性gay激情无套| eeuss鲁片一区二区三区| 一区二区中文字幕在线| 色综合婷婷久久| 亚洲精品中文在线| 欧美日韩免费观看一区二区三区 | www.日本不卡| 亚洲欧洲综合另类在线| 日本高清不卡aⅴ免费网站| 亚洲少妇屁股交4| 欧美亚洲高清一区| 日本成人超碰在线观看| 日韩精品在线一区二区| 久久99精品久久久久久动态图| 久久久久国产精品免费免费搜索| 国产剧情一区二区| 亚洲天堂a在线| 欧美精品久久天天躁| 久久成人久久爱| 国产精品国产三级国产aⅴ原创| av电影天堂一区二区在线| 日本特黄久久久高潮| 91精品福利在线一区二区三区 | 国产999精品久久久久久绿帽| 国产女人水真多18毛片18精品视频 | 99久免费精品视频在线观看| 一区二区三区在线观看欧美| 91麻豆精品国产无毒不卡在线观看 | 亚洲色图19p| 911国产精品| 成人精品在线视频观看| 亚洲一区二区三区爽爽爽爽爽| 日韩一级成人av| 不卡视频在线观看| 日本最新不卡在线| 国产精品久久久久一区| 欧美老年两性高潮| 丁香五精品蜜臀久久久久99网站| 一二三四区精品视频| 日韩免费电影一区| 色94色欧美sute亚洲线路一久| 国产在线一区观看| 夜夜嗨av一区二区三区网页| 久久免费偷拍视频| 欧美日本精品一区二区三区| av电影天堂一区二区在线观看| 日韩激情在线观看| 亚洲精品日韩综合观看成人91| 日韩午夜激情免费电影| 一道本成人在线| 国产成人精品免费网站| 日韩电影在线免费看| 亚洲精选视频免费看| 中文字幕不卡一区| 国产三级欧美三级日产三级99 | 日韩三级视频在线看| 欧美性猛交xxxx乱大交退制版 | 国产精品传媒入口麻豆| 欧美成人欧美edvon| 欧美美女直播网站| 91久久精品国产91性色tv| 成人av在线资源网站| 国产精品2024| 欧美aaa在线| 水蜜桃久久夜色精品一区的特点| 一区二区三区四区国产精品| 国产精品久久三区| 国产精品久久久久久久久久久免费看| www国产成人免费观看视频 深夜成人网| 欧美绝品在线观看成人午夜影视| 91国内精品野花午夜精品| 色欧美日韩亚洲| 欧美无乱码久久久免费午夜一区| 91看片淫黄大片一级| 91女神在线视频| av网站一区二区三区| 99视频超级精品| 不卡一区二区中文字幕| 国产成人精品www牛牛影视| 国产中文字幕一区| 国产剧情一区在线| 亚洲国产欧美另类丝袜| 亚洲国产日韩a在线播放| 亚洲成人av资源| 亚洲三级在线看| 亚洲成a人v欧美综合天堂| 午夜视频在线观看一区| 亚洲v中文字幕| 久久精品理论片| 午夜电影久久久| 久久99久久99小草精品免视看| 国产在线精品一区二区不卡了 | 欧美综合色免费| 色婷婷激情久久| 91精品蜜臀在线一区尤物| 日韩欧美国产一区二区三区| 欧美一级生活片| 欧美激情在线看| 亚洲欧洲av另类| 日本强好片久久久久久aaa| 美国十次综合导航| 国产成都精品91一区二区三| av一区二区三区在线| 色激情天天射综合网| 日韩视频国产视频| 136国产福利精品导航| 亚洲欧美aⅴ...| 奇米777欧美一区二区| 久久国产乱子精品免费女| 成人高清视频在线| 国产精品一线二线三线精华| 波多野结衣一区二区三区| 欧美日韩国产首页| 欧美大胆一级视频| 最新不卡av在线| 亚洲蜜臀av乱码久久精品| 日韩中文字幕亚洲一区二区va在线| 国产乱码字幕精品高清av| 91丨国产丨九色丨pron| 久久精品一区二区三区不卡 | 欧美大片免费久久精品三p | 亚洲美腿欧美偷拍|