通话逻辑
This commit is contained in:
@@ -1,14 +0,0 @@
|
||||
package com.ruoyi.websocket.config;
|
||||
|
||||
import lombok.Data;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Data
|
||||
@Component
|
||||
@ConfigurationProperties(prefix = "agora")
|
||||
public class AgoraProperties {
|
||||
private String appId;
|
||||
private String key;
|
||||
private String secret;
|
||||
}
|
||||
@@ -4,6 +4,9 @@ import com.alibaba.fastjson2.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.ruoyi.cai.domain.CaiUserCall;
|
||||
import com.ruoyi.cai.service.CaiUserCallService;
|
||||
import com.ruoyi.cai.trd.ImDataRes;
|
||||
import com.ruoyi.cai.trd.ImMsgGen;
|
||||
import com.ruoyi.cai.trd.Yunxin;
|
||||
import com.ruoyi.cai.ws.bean.FdCtxData;
|
||||
import com.ruoyi.cai.ws.bean.Room;
|
||||
import com.ruoyi.cai.ws.constant.HangUpEnums;
|
||||
@@ -24,6 +27,8 @@ public class CancelMessageHandler extends AbstractMessageHandle implements IMess
|
||||
private CaiUserCallService userCallService;
|
||||
@Autowired
|
||||
private RoomService roomService;
|
||||
@Autowired
|
||||
private Yunxin yunxin;
|
||||
@Override
|
||||
public void processOn(Room room, FdCtxData fdCtxData, JSONObject map) {
|
||||
if(!fdCtxData.isCaller()){
|
||||
@@ -37,7 +42,11 @@ public class CancelMessageHandler extends AbstractMessageHandle implements IMess
|
||||
sendToCurrent(fdCtxData,WsRMsgGen.hangup("通话已取消",roomId, HangUpEnums.CANCEL.getCode()));
|
||||
sendToReceiver(roomId,WsRMsgGen.hangup("对方已取消",roomId, HangUpEnums.CANCEL.getCode()));
|
||||
roomService.closeAllFd(roomId);
|
||||
// IM TODO
|
||||
// IM
|
||||
String receiverId = room.getReceiverUserData().getId() +"";
|
||||
String callerId = room.getCallUserData().getId()+"";
|
||||
ImDataRes imDataRes = ImMsgGen.callNotice(1, callerId, receiverId, 0);
|
||||
yunxin.sendTo(receiverId,imDataRes,callerId);
|
||||
// 更新房间状态
|
||||
userCallService.update(Wrappers.lambdaUpdate(CaiUserCall.class)
|
||||
.eq(CaiUserCall::getId,roomId)
|
||||
|
||||
@@ -4,9 +4,11 @@ import com.alibaba.fastjson2.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.ruoyi.cai.domain.CaiUserCall;
|
||||
import com.ruoyi.cai.service.CaiUserCallService;
|
||||
import com.ruoyi.cai.trd.ImDataRes;
|
||||
import com.ruoyi.cai.trd.ImMsgGen;
|
||||
import com.ruoyi.cai.trd.Yunxin;
|
||||
import com.ruoyi.cai.ws.bean.FdCtxData;
|
||||
import com.ruoyi.cai.ws.bean.Room;
|
||||
import com.ruoyi.cai.ws.cache.RoomCtxCache;
|
||||
import com.ruoyi.cai.ws.cache.RoomDataCache;
|
||||
import com.ruoyi.cai.ws.constant.HangUpEnums;
|
||||
import com.ruoyi.cai.ws.constant.RoomStatusEnums;
|
||||
@@ -14,7 +16,6 @@ import com.ruoyi.cai.ws.service.RoomService;
|
||||
import com.ruoyi.websocket.dto.WsRMsgGen;
|
||||
import com.ruoyi.websocket.handler.AbstractMessageHandle;
|
||||
import com.ruoyi.websocket.handler.IMessageHandler;
|
||||
import com.ruoyi.websocket.util.RoomWebSocketUtil;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@@ -26,11 +27,11 @@ public class RefuseMessageHandler extends AbstractMessageHandle implements IMess
|
||||
@Autowired
|
||||
private RoomDataCache roomDataCache;
|
||||
@Autowired
|
||||
private RoomCtxCache roomCtxCache;
|
||||
@Autowired
|
||||
private RoomService roomService;
|
||||
@Autowired
|
||||
private CaiUserCallService userCallService;
|
||||
@Autowired
|
||||
private Yunxin yunxin;
|
||||
@Override
|
||||
public void processOn(Room room, FdCtxData fdCtxData, JSONObject map) {
|
||||
if(!fdCtxData.isReceiver() || !RoomStatusEnums.STATUS_RECEIVER_CONNECT.getCode().equals(room.getStatus())){
|
||||
@@ -44,7 +45,11 @@ public class RefuseMessageHandler extends AbstractMessageHandle implements IMess
|
||||
sendToTar(fdCtxData,WsRMsgGen.hangup("对方已拒绝",room.getRoomId(), HangUpEnums.REFUSE.getCode()));
|
||||
roomService.closeAllFd(room.getRoomId());
|
||||
|
||||
//发送IM通知 TODO
|
||||
//发送IM通知
|
||||
String receiverId = room.getReceiverUserData().getId()+"";
|
||||
String callerId = room.getCallUserData().getId()+"";
|
||||
ImDataRes imDataRes = ImMsgGen.callNotice(1, callerId, receiverId, 0);
|
||||
yunxin.sendTo(receiverId,imDataRes,callerId);
|
||||
|
||||
// 更新房间状态
|
||||
userCallService.update(Wrappers.lambdaUpdate(CaiUserCall.class)
|
||||
|
||||
Reference in New Issue
Block a user