Eric 2 years ago
parent
commit
337ae1a861
1 changed files with 24 additions and 10 deletions
  1. 24 10
      mec-im/src/main/java/com/ym/controller/RoomController.java

+ 24 - 10
mec-im/src/main/java/com/ym/controller/RoomController.java

@@ -8,10 +8,12 @@ import com.ym.service.MessageService;
 import com.ym.service.RoomService;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
+import org.joda.time.DateTime;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.List;
+import java.util.Objects;
 
 @RestController
 @RequestMapping("/room")
@@ -109,19 +111,31 @@ public class RoomController{
     @PostMapping(value = "/statusSyncTencent")
     public void statusSyncTencent(@RequestBody TencentData.TRTCEventInfo eventInfo) {
         try {
+            if (Objects.isNull(eventInfo.getEventInfo())) {
+                log.warn("statusSyncTencent eventInfo is null, time={}", DateTime.now().toString("yyy-MM-dd HH:mm:ss"));
+                return;
+            }
             log.info("statusSyncTencent: {}", eventInfo.jsonString());
             String roomId = eventInfo.getEventInfo().getRoomId();
-            String userId = eventInfo.getEventInfo().getUserId();
-            switch (eventInfo.getEventType()){
-                case EVENT_TYPE_ENTER_ROOM:
-                    //成员加入
-                    roomService.joinRoomSuccess(roomId, userId,null);
-                    break;
-                case EVENT_TYPE_EXIT_ROOM:
-                    //成员退出
-                    roomService.leaveRoomSuccess(roomId, userId,null);
-                    break;
+
+            // 网络教室回调整消息
+            if (roomId.startsWith("S") || roomId.startsWith("I")) {
+                // 进出用户信息
+                String userId = eventInfo.getEventInfo().getUserId();
+                switch (eventInfo.getEventType()){
+                    case EVENT_TYPE_ENTER_ROOM:
+                        //成员加入
+                        roomService.joinRoomSuccess(roomId, userId,null);
+                        break;
+                    case EVENT_TYPE_EXIT_ROOM:
+                        //成员退出
+                        roomService.leaveRoomSuccess(roomId, userId,null);
+                        break;
+                }
             }
+
+            // 直播回调整消息, roomId.startsWith("LIVE")
+
         }catch (Exception e){
             log.error("statusSyncTencent event={}", eventInfo.jsonString(), e);
         }