📄 hqgprs.java~1~
字号:
package com.gps.center.parsedata;
import java.io.*;
import java.util.regex.*;
import javax.xml.parsers.*;
import org.w3c.dom.*;
//解析命令类
public class HQGPRS extends ParseData implements ParseInterface {
public HQGPRS() {
readxml();
}
private String[] reStr;
private String[][] deviceIdPhone = null;
// private String[][] deviceIDPhone = null;
/**
* ParseMsg
* @param msg MsgObj
*/
public void ParseMsg(MsgObj msg) {
Pattern regex;
ParseInterface parseobj;
regex = Pattern.compile("[,]");
reStr = regex.split(msg.cMsg);
//102, 13954667441, NULL, 张三, 13800100500
switch (Integer.parseInt(reStr[0])) {
case 102:
FmSetMSCA102(msg);
break; //不支持
case 103:
FmSetMonitorSMSNum103(msg);
break;
case 104:
FmSetMonitorSMSNum104(msg);
break;
case 105:
FmSetDeviceID105(msg);
break; //不支持
case 106:
FmSetDevPassword106(msg);
break; //暂不支持:
case 107:
FmSetGPRSCenter107(msg);
break;
case 108:
FmSetSpeedAlarm108(msg);
break;
case 109:
FmSetTemperatureAlarm109(msg);
break;
case 110:
FmSetCurrentRail110(msg);
break; //暂不支持:
case 111:
FmSetRailAlarm111(msg);
break;
case 112:
FmSetGprsAPN112(msg);
break;
case 113:
FmSetCarTeam113(msg);
break;
// case 114:
// FmLocationInfo114(msg);
case 115:
FmRollcallDevice115(msg);
break;
case 116:
FmTimingCallDevice116(msg);
break;
case 117:
FmTimingDegreeCall117(msg);
break;
case 118:
FmCompressTimingCall118(msg);
break;
case 119:
FmRemoteControl119(msg);
break;
case 120:
FmQueryVehicleState120(msg);
break;
case 121:
FmSMSInfo121(msg);
break;
case 122:
FmStopAlarm122(msg);
break;
case 124:
FmStopTimingCallDevice124(msg);
break;
case 126:
AutoRSP126 temp = new AutoRSP126();
temp.ParseMsg(msg);
break;
case 127:
FmsetPhoneNumCondition127(msg);
break;
}
}
private void FmsetPhoneNumCondition127(MsgObj msg) {
//添加Msg到sendQueue
//cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
//4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
String sendStr = null;
HashObj hashobj = null;
String strDate = CanSend.getTime();
//String queryStr = null;
//queryStr = super.DbServer.getUserPopedom(reStr[2]);
//127, 13954667441, 京A-1234,,张三,1,112
//*HQ,0000000000,S5,130305,2,1,112#
if (super.centerMap.containsKey(reStr[1])) {
hashobj = (HashObj)super.centerMap.get(reStr[1]);
if (hashobj.cDeviceTcpUsed) {
if (CanSend.CanSendMsg(hashobj.cDateTime)) {
msg.cMsgType = TCPSENDTODEVICE;
}
}
else {
msg.cMsgType = SMSSENDTODEVICE;
}
}
else {
msg.cMsgType = SMSSENDTODEVICE;
}
sendStr = "*HQ," + reStr[1] + ",S5," + strDate + ",2," + reStr[4] + "," +
reStr[5] + "#";
msg.cPhoneNum = getPhoneNum(reStr[1]);
msg.cDeviceID = reStr[1];
msg.cMsg = sendStr;
super.addSendMsg(msg);
}
private void FmRemoteControl119(MsgObj msg) {
//添加Msg到sendQueue
//cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
//4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
String sendStr = null;
HashObj hashobj = null;
String strDate = CanSend.getTime();
//119,0000000000,京A-1234,张三,10,01062328855
if (super.centerMap.containsKey(reStr[1])) {
hashobj = (HashObj)super.centerMap.get(reStr[1]);
if (hashobj.cDeviceTcpUsed) {
if (CanSend.CanSendMsg(hashobj.cDateTime)) {
msg.cMsgType = TCPSENDTODEVICE;
}
}
else {
msg.cMsgType = SMSSENDTODEVICE;
}
}
else {
msg.cMsgType = SMSSENDTODEVICE;
}
String strCommand = reStr[5];
switch (Integer.parseInt(reStr[4])) {
case 10:
//*HQ,0000000000,R8,130305,01062926359
sendStr = new String("*HQ," + reStr[1] + ",R8," + strDate + reStr[5]);
break;
case 13:
//*HQ,0000000000,S20,130305,1,3,10,3,5,5,3,5,3,5,3,5#
sendStr = new String("*HQ," + reStr[1] + ",S20," + strDate +
",1,3,10,3,5,5,3,5,3,5,3,5#");
break;
case 14:
//*HQ,0000000000,S20,130305,1,0#
sendStr = new String("*HQ," + reStr[1] + ",S20," + strDate + ",1,0#");
break;
case 26:
//*HQ, 000000,R1,130305#
sendStr = new String("*HQ," + reStr[1] + ",R1," + strDate + "#");
break;
case 31:
//*HQ,0000000000,S13,130305,3D#
sendStr = new String("*HQ," + reStr[1] + ",S31," + strDate + "3E#");
break;
case 32:
//*HQ,0000000000,S13,130305,3D#
sendStr = new String("*HQ," + reStr[1] + ",S31," + strDate + "3D#");
break;
case 33:
//*HQ,0000000000,S13,130305,3D#
sendStr = new String("*HQ," + reStr[1] + ",S31," + strDate + "3C#");
break;
case 34:
//*HQ,0000000000,S25,130305#
sendStr = new String("*HQ," + reStr[1] + ",S25," + strDate + "#");
break;
case 35:
//*HQ,000,S33,130305,65#
sendStr = new String("*HQ," + reStr[1] + ",S33," + strDate + "," +
reStr[5] + "#");
break;
case 38:
//*HQ, 000000,R7,130305#
sendStr = new String("*HQ," + reStr[1] + ",R7," + strDate + "#");
break;
case 39:
//*HQ,0000000000,S27,130305,0#
sendStr = new String("*HQ," + reStr[1] + ",S27," + strDate + "0#");
break;
case 40:
//*HQ,0000000000,S1,130305#
sendStr = new String("*HQ," + reStr[1] + ",S1," + strDate + "#");
break;
default:
sendStr = new String("119,0," + reStr[1] + "," + reStr[2]);
msg.cMsgType = TCPRETURNTERMINAL;
}
msg.cPhoneNum = getPhoneNum(reStr[1]);
msg.cDeviceID = reStr[1];
msg.cMsg = sendStr;
super.addSendMsg(msg);
}
private void FmSetMSCA102(MsgObj msg) {
//添加Msg到sendQueue
//cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
//4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
String sendStr = null;
//102, 13954667441, 京A-1234, 张三, +8613800100500
sendStr = new String("102,2," + reStr[1] + "," + reStr[2]);
msg.cMsgType = TCPRETURNTERMINAL;
msg.cPhoneNum = getPhoneNum(reStr[1]);
msg.cMsg = sendStr;
super.addSendMsg(msg);
}
private void FmSetMonitorSMSNum103(MsgObj msg) {
String sendStr = null;
HashObj hashobj = null;
String strDate = CanSend.getTime();
//添加Msg到sendQueue
//cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
//4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
//103, 13612345678,京A-1234, 张三, 13901234567
//*HQ,0000000103,S2,130305,13812345678#
sendStr = new String("*HQ," + reStr[1] + ",S2," + strDate + "," + reStr[4] +
"#");
if (super.centerMap.containsKey(reStr[1])) {
hashobj = (HashObj)super.centerMap.get(reStr[1]);
if (hashobj.cDeviceTcpUsed) {
if (CanSend.CanSendMsg(hashobj.cDateTime)) {
msg.cMsgType = TCPSENDTODEVICE;
}
}
else {
msg.cMsgType = SMSSENDTODEVICE;
}
}
else {
msg.cMsgType = SMSSENDTODEVICE;
}
msg.cPhoneNum = getPhoneNum(reStr[1]);
msg.cDeviceID = reStr[1];
msg.cMsg = sendStr;
super.addSendMsg(msg);
}
private void FmSetMonitorSMSNum104(MsgObj msg) {
//添加Msg到sendQueue
//cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
//4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
String sendStr = null;
HashObj hashobj = null;
//104,0000000000,京A-1234, 张三, 13901234567
//*HQ,0000000000,S28,130305,13901234567#
String strDate = CanSend.getTime();
sendStr = new String("*HQ," + reStr[1] + ",S28," + strDate + "," + reStr[4] +
"#");
if (super.centerMap.containsKey(reStr[1])) {
hashobj = (HashObj)super.centerMap.get(reStr[1]);
if (hashobj.cDeviceTcpUsed) {
if (CanSend.CanSendMsg(hashobj.cDateTime)) {
msg.cMsgType = TCPSENDTODEVICE;
}
}
else {
msg.cMsgType = SMSSENDTODEVICE;
}
}
else {
msg.cMsgType = SMSSENDTODEVICE;
}
msg.cPhoneNum = getPhoneNum(reStr[1]);
msg.cDeviceID = reStr[1];
msg.cMsg = sendStr;
super.addSendMsg(msg);
}
private void FmSetDeviceID105(MsgObj msg) {
//添加Msg到sendQueue
//cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
//4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
String sendStr = null;
String queryStr = null;
// queryStr = super.DbServer.getUserPopedom(reStr[2]);
// //105, 13901234567,NULL, 张三, 13901234567
sendStr = new String("105,2," + reStr[1] + "," + reStr[2]);
msg.cMsgType = TCPRETURNTERMINAL;
msg.cPhoneNum = getPhoneNum(reStr[1]);
msg.cMsg = sendStr;
super.addSendMsg(msg);
}
private void FmSetDevPassword106(MsgObj msg) {
//添加Msg到sendQueue
//cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
//4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
String sendStr = null;
String queryStr = null;
// queryStr = super.DbServer.getUserPopedom(reStr[2]);
//106, 13954667441, 京A-1234, 张三, 1234,0000
//MCOM0004,00000102,0000,1234
sendStr = "106,2," + reStr[1] + "," + reStr[2];
msg.cMsgType = TCPRETURNTERMINAL;
msg.cPhoneNum = getPhoneNum(reStr[1]);
msg.cDeviceID = reStr[1];
msg.cMsg = sendStr;
super.addSendMsg(msg);
}
private void FmSetGPRSCenter107(MsgObj msg) {
//添加Msg到sendQueue
//cMsgtype:1--TCPMSG,2--DEVICEUDPMSG,3--SMSMSG
//4--TCPSENDTODEVICE,5--UDPSENDTODEVICE,6--SMSSENDTODEVICE,7--TCPSENDTOTERMINAL,8--TCPRETURNTERMINAL
String sendStr = null;
// HashObj hashobj = null;
// String queryStr = null;
// queryStr = super.DbServer.getUserPopedom(reStr[2]);
//107,0000000000,京A-1234, 张三, 123.123.123.123:0808
//*HQ,0000000000,S23,130305,123,123,123,123,0808,5#
String strDate = CanSend.getTime();
Pattern regex;
// ParseInterface parseobj;
regex = Pattern.compile("[.]|[:]");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -