Commit 72c84f21 by 徐高华

企微托管

parent 6adcad5b
...@@ -135,7 +135,13 @@ public class QywxCallbackController extends WebBaseController { ...@@ -135,7 +135,13 @@ public class QywxCallbackController extends WebBaseController {
} }
// 6 位置 // 6 位置
// 41 名片 // 41 名片
List<String> msgList = Arrays.asList("0","2","101","6","41") ; // 40 语音视频通话时常消息通知
// 503 语音或者视频通话,未接听消息
// 16 语音消息
// 14 101 图片
// 23 103(微信) 视频消息
// 15 102(微信) 文件消息
List<String> msgList = Arrays.asList("0","2","101","6","41","40","14","16","23","103","15","102") ;
if(!msgList.contains(msgtype+"")) { if(!msgList.contains(msgtype+"")) {
logger.info("不处理的消息"); logger.info("不处理的消息");
return ; return ;
...@@ -147,7 +153,9 @@ public class QywxCallbackController extends WebBaseController { ...@@ -147,7 +153,9 @@ public class QywxCallbackController extends WebBaseController {
String content = json.getString("content") ; String content = json.getString("content") ;
String fileId = json.getString("file_id") ; String fileId = json.getString("file_id") ;
Long roomId = json.getLong("room_conversation_id") ; Long roomId = json.getLong("room_conversation_id") ;
Integer fileSize = json.getInteger("file_size") ;
OpenQwMessageDTO msg = new OpenQwMessageDTO(); OpenQwMessageDTO msg = new OpenQwMessageDTO();
msg.setFileSize(fileSize);
msg.setIsRoom(isRoom); msg.setIsRoom(isRoom);
msg.setUuid(uuid); msg.setUuid(uuid);
msg.setReceiver(receiver); msg.setReceiver(receiver);
...@@ -156,36 +164,54 @@ public class QywxCallbackController extends WebBaseController { ...@@ -156,36 +164,54 @@ public class QywxCallbackController extends WebBaseController {
msg.setRoomId(roomId); msg.setRoomId(roomId);
msg.setFileId(fileId); msg.setFileId(fileId);
msg.setSendTime(json.getLong("send_time")); msg.setSendTime(json.getLong("send_time"));
if(msgtype==101) {
msg.setAeskey(json.getString("aeskey"));
}
if(msgtype==14) {
msg.setAeskey(json.getString("aes_key"));
}
msg.setOpenimCdnAuthkey(json.getString("openim_cdn_authkey")); msg.setOpenimCdnAuthkey(json.getString("openim_cdn_authkey"));
if(msgtype==101 || msgtype==14) { if(msgtype==101 || msgtype==14) {
if(msgtype==101) {
msg.setAeskey(json.getString("aeskey"));
}
if(msgtype==14) {
msg.setAeskey(json.getString("aes_key"));
}
msg.setMsgtype(OpenQwMsgTypeEnum.IMAGE); msg.setMsgtype(OpenQwMsgTypeEnum.IMAGE);
}else if(msgtype==23 || msgtype==103){
msg.setMsgtype(OpenQwMsgTypeEnum.VIDEO);
}else if(msgtype==6) { }else if(msgtype==6) {
msg.setMsgtype(OpenQwMsgTypeEnum.LOCAL); msg.setMsgtype(OpenQwMsgTypeEnum.LOCAL);
msg.setContent(json.getString("address")); msg.setContent(json.getString("address"));
}else if (msgtype==41) { }else if (msgtype==41) {
msg.setMsgtype(OpenQwMsgTypeEnum.NAME); msg.setMsgtype(OpenQwMsgTypeEnum.NAME_CARD);
msg.setContent(json.getString("nickname"));
}else if (msgtype==40) {
msg.setMsgtype(OpenQwMsgTypeEnum.VIDEO_TEL);
msg.setContent(json.getString("nickname")); msg.setContent(json.getString("nickname"));
}else if (msgtype==15) { }else if (msgtype==15) {
msg.setMsgtype(OpenQwMsgTypeEnum.VIDEO); msg.setMsgtype(OpenQwMsgTypeEnum.VIDEO);
msg.setContent(json.getString("nickname")); msg.setContent(json.getString("nickname"));
}else if (msgtype==41) { }else if (msgtype==16) {
msg.setMsgtype(OpenQwMsgTypeEnum.NAME); msg.setMsgtype(OpenQwMsgTypeEnum.VOICE);
msg.setContent(json.getString("nickname")); msg.setContent(json.getString("语音消息"));
}else if (msgtype==41) { }else if (msgtype==40) {
msg.setMsgtype(OpenQwMsgTypeEnum.NAME); // 2语音 1视频
msg.setContent(json.getString("nickname")); int callType = json.getIntValue("invitetype") ;
}else if (msgtype==41) { if(!this.setTelType(callType,msg)) {
msg.setMsgtype(OpenQwMsgTypeEnum.NAME); return;
msg.setContent(json.getString("nickname")); }
// //1代表对方取消 5代表语音结束
int recordtype = json.getIntValue("recordtype") ;
if(recordtype==5) {
msg.setContent(json.getString("recordwording"));
}else if(recordtype==1) {
msg.setContent("对方已取消");
}
}else if (msgtype==503) {
// 2语音 1视频
int callType = json.getIntValue("invitetype") ;
if(!this.setTelType(callType,msg)) {
return;
}
int type = json.getIntValue("type") ;
//3是未接听 1是正在打电话
if(type != 3) {
return ;
}
msg.setContent(json.getString("未接通"));
} else { } else {
msg.setMsgtype(OpenQwMsgTypeEnum.text); msg.setMsgtype(OpenQwMsgTypeEnum.text);
} }
...@@ -195,7 +221,17 @@ public class QywxCallbackController extends WebBaseController { ...@@ -195,7 +221,17 @@ public class QywxCallbackController extends WebBaseController {
} catch (Exception e) { } catch (Exception e) {
logger.info("异常", e); logger.info("异常", e);
} }
}
private boolean setTelType( int callType , OpenQwMessageDTO msg) {
if(callType==1) {
msg.setMsgtype(OpenQwMsgTypeEnum.VIDEO_TEL);
}else if(callType==2) {
msg.setMsgtype(OpenQwMsgTypeEnum.VIDEO_TEL);
}else {
return false;
}
return true ;
} }
private void setSendType(int msgtype , OpenQwMessageDTO msg) { private void setSendType(int msgtype , OpenQwMessageDTO msg) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment