Skip to content

Commit

Permalink
调整
Browse files Browse the repository at this point in the history
  • Loading branch information
yaphone committed Jun 22, 2017
1 parent 9b16c9a commit f1dec00
Show file tree
Hide file tree
Showing 5 changed files with 37 additions and 36 deletions.
50 changes: 26 additions & 24 deletions src/main/java/cn/zhouyafeng/itchat4j/core/MsgCenter.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
import cn.zhouyafeng.itchat4j.api.MessageTools;
import cn.zhouyafeng.itchat4j.face.IMsgHandlerFace;
import cn.zhouyafeng.itchat4j.utils.MsgCodeEnum;
import cn.zhouyafeng.itchat4j.utils.MsgKeywords;
import cn.zhouyafeng.itchat4j.utils.enums.MsgTypeEnum;
import cn.zhouyafeng.itchat4j.utils.tools.CommonTools;

Expand Down Expand Up @@ -59,8 +60,8 @@ public static JSONArray produceMsg(JSONArray msgList) {
} else {
CommonTools.msgFormatter(m, "Content");
}
if (m.getInteger("MsgType") == MsgCodeEnum.MSGTYPE_TEXT.getCode()) { // words
// 文本消息
if (m.getInteger("MsgType").equals(MsgCodeEnum.MSGTYPE_TEXT.getCode())) { // words
// 文本消息
if (m.getString("Url").length() != 0) {
String regEx = "(.+?\\(.+?\\))";
Matcher matcher = CommonTools.getMatcher(regEx, m.getString("Content"));
Expand All @@ -76,30 +77,30 @@ public static JSONArray produceMsg(JSONArray msgList) {
}
m.put("Type", msg.getString("Type"));
m.put("Text", msg.getString("Text"));
} else if (m.getInteger("MsgType") == MsgCodeEnum.MSGTYPE_IMAGE.getCode()
|| m.getInteger("MsgType") == MsgCodeEnum.MSGTYPE_EMOTICON.getCode()) { // 图片消息
} else if (m.getInteger("MsgType").equals(MsgCodeEnum.MSGTYPE_IMAGE.getCode())
|| m.getInteger("MsgType").equals(MsgCodeEnum.MSGTYPE_EMOTICON.getCode())) { // 图片消息
m.put("Type", MsgTypeEnum.PIC.getType());
} else if (m.getInteger("MsgType") == MsgCodeEnum.MSGTYPE_VOICE.getCode()) { // 语音消息
} else if (m.getInteger("MsgType").equals(MsgCodeEnum.MSGTYPE_VOICE.getCode())) { // 语音消息
m.put("Type", MsgTypeEnum.VOICE.getType());
} else if (m.getInteger("MsgType") == MsgCodeEnum.MSGTYPE_VERIFYMSG.getCode()) {// friends
// 好友确认消息
} else if (m.getInteger("MsgType").equals(MsgCodeEnum.MSGTYPE_VERIFYMSG.getCode())) {// friends
// 好友确认消息

} else if (m.getInteger("MsgType") == MsgCodeEnum.MSGTYPE_SHARECARD.getCode()) { // 共享名片
} else if (m.getInteger("MsgType").equals(MsgCodeEnum.MSGTYPE_SHARECARD.getCode())) { // 共享名片
m.put("Type", MsgTypeEnum.NAMECARD.getType());

} else if (m.getInteger("MsgType") == MsgCodeEnum.MSGTYPE_VIDEO.getCode()
|| m.getInteger("MsgType") == MsgCodeEnum.MSGTYPE_MICROVIDEO.getCode()) {// viedo
} else if (m.getInteger("MsgType").equals(MsgCodeEnum.MSGTYPE_VIDEO.getCode())
|| m.getInteger("MsgType").equals(MsgCodeEnum.MSGTYPE_MICROVIDEO.getCode())) {// viedo
m.put("Type", MsgTypeEnum.VIEDO.getType());
} else if (m.getInteger("MsgType") == MsgCodeEnum.MSGTYPE_APP.getCode()) { // sharing
// 分享链接
} else if (m.getInteger("MsgType").equals(MsgCodeEnum.MSGTYPE_APP.getCode())) { // sharing
// 分享链接

} else if (m.getInteger("MsgType") == MsgCodeEnum.MSGTYPE_STATUSNOTIFY.getCode()) {// phone
// init
// 微信初始化消息
} else if (m.getInteger("MsgType").equals(MsgCodeEnum.MSGTYPE_STATUSNOTIFY.getCode())) {// phone
// init
// 微信初始化消息

} else if (m.getInteger("MsgType") == MsgCodeEnum.MSGTYPE_SYS.getCode()) {// 系统消息
} else if (m.getInteger("MsgType").equals(MsgCodeEnum.MSGTYPE_SYS.getCode())) {// 系统消息
m.put("Type", MsgTypeEnum.SYS.getType());
} else if (m.getInteger("MsgType") == MsgCodeEnum.MSGTYPE_RECALLED.getCode()) { // 撤回消息
} else if (m.getInteger("MsgType").equals(MsgCodeEnum.MSGTYPE_RECALLED.getCode())) { // 撤回消息

} else {
LOG.info("Useless msg");
Expand All @@ -125,14 +126,16 @@ public static void handleMsg(IMsgHandlerFace msgHandler) {
if (msg.getString("Type") != null) {
try {
if (msg.getString("Type").equals(MsgTypeEnum.TEXT.getType())) {
//存在主动加好友之后的同步联系人到本地
// 存在主动加好友之后的同步联系人到本地
String text = msg.getString("Text");
if (text.contains("我通过了你的朋友验证请求,现在我们可以开始聊天了")) {
System.out.println(text);
if (text.contains(MsgKeywords.newFriendStr)) {
JSONObject userInfo = msg.getJSONObject("userInfo");
core.getContactList().add(userInfo);
}else {
} else {
String result = msgHandler.textMsgHandle(msg);
MessageTools.sendMsgById(result, core.getMsgList().get(0).getString("FromUserName"));
MessageTools.sendMsgById(result,
core.getMsgList().get(0).getString("FromUserName"));
}
} else if (msg.getString("Type").equals(MsgTypeEnum.PIC.getType())) {
String result = msgHandler.picMsgHandle(msg);
Expand All @@ -146,9 +149,8 @@ public static void handleMsg(IMsgHandlerFace msgHandler) {
} else if (msg.getString("Type").equals(MsgTypeEnum.NAMECARD.getType())) {
String result = msgHandler.nameCardMsgHandle(msg);
MessageTools.sendMsgById(result, core.getMsgList().get(0).getString("FromUserName"));
} else if (msg.getString("Type").equals(MsgTypeEnum.SYS.getType())) {
String result = msgHandler.sysMsgHandle(msg);
MessageTools.sendMsgById(result, core.getMsgList().get(0).getString("FromUserName"));
} else if (msg.getString("Type").equals(MsgTypeEnum.SYS.getType())) { // 系统消息
msgHandler.sysMsgHandle(msg);
}
} catch (Exception e) {
e.printStackTrace();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,6 @@ public interface IMsgHandlerFace {
* @param msg
* @return
*/
public String sysMsgHandle(JSONObject msg);
public void sysMsgHandle(JSONObject msg);

}
Original file line number Diff line number Diff line change
Expand Up @@ -278,21 +278,18 @@ public void run() {
continue;
} else if (selector.equals("3")) {
continue;
}else if (selector.equals("6")) {
} else if (selector.equals("6")) {
if (msgObj != null) {
try {
JSONArray msgList = new JSONArray();
msgList = msgObj.getJSONArray("AddMsgList");
JSONArray modContactList = msgObj.getJSONArray("ModContactList"); //存有删除或者新增的好友信息
JSONArray modContactList = msgObj.getJSONArray("ModContactList"); // 存有删除或者新增的好友信息
msgList = MsgCenter.produceMsg(msgList);
for (int j = 0; j < msgList.size(); j++) {

JSONObject msg = msgList.getJSONObject(j);
JSONObject userInfo = modContactList.getJSONObject(j);
msg.put("userInfo",userInfo);

msg.put("userInfo", userInfo);
core.getMsgList().add(msg);

}
} catch (Exception e) {
LOG.info(e.getMessage());
Expand Down
6 changes: 6 additions & 0 deletions src/main/java/cn/zhouyafeng/itchat4j/utils/MsgKeywords.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package cn.zhouyafeng.itchat4j.utils;

public class MsgKeywords {
public static String newFriendStr = "我通过了你的朋友验证请求";

}
Original file line number Diff line number Diff line change
Expand Up @@ -81,13 +81,9 @@ public String nameCardMsgHandle(JSONObject msg) {
}

@Override
public String sysMsgHandle(JSONObject msg) {
// TODO Auto-generated method stub
public void sysMsgHandle(JSONObject msg) { // 收到系统消息
String text = msg.getString("Content");
LOG.info(text);
String[] tmp = text.split("\"");
String answer = "欢迎" + tmp[3] + "!";
return answer;
}

}

0 comments on commit f1dec00

Please sign in to comment.