shangke 2 anni fa
parent
commit
121423bc1c

+ 1 - 0
.gitignore

@@ -1,4 +1,5 @@
 *.class
+*.log
 .metadata
 /target/
 *.classpath

+ 13 - 6
mec-im/src/main/java/com/ym/service/Impl/RoomServiceImpl.java

@@ -292,14 +292,23 @@ public class RoomServiceImpl implements RoomService {
 
         // 创建IM群聊
         this.joinImGroup(roomId, courseSchedule.getActualTeacherId(), courseSchedule);
+        // RTC服务提供方
+        roomResult.setServiceProvider(Optional.ofNullable(courseSchedule.getServiceProvider()).orElse("rongCloud"));
 
         List<CourseScheduleStudentMusicScore> scheduleStudentMusicScores = courseScheduleStudentMusicScoreDao.queryByScoreIdAndCourseId(null, courseId, null, null, null);
         Room room = roomDao.findByRid(roomId);
         String display = "";
-        if (roleEnum == RoleTeacher) {
-            display = "display://type=1?userId=" + userId + "?uri=";
-        } else if (roleEnum == RoleEnum.RoleAssistant && display.isEmpty()) {
-            display = "display://type=0?userId=" + userId + "?uri=";
+        if (roleEnum == RoleTeacher || roleEnum == RoleEnum.RoleAssistant) {
+
+            display = "display://type=" + roleEnum.ordinal() + "?userId=" + userId + "?uri=";
+            // 发送显示主屏消息
+            if (TencentCloudRTCPlugin.PLUGIN_NAME.equals(roomResult.getServiceProvider())) {
+
+                // 网络教室人员信息
+                RoomMember roomMember = roomMemberDao.findByRidAndUid(roomId, userId);
+                // 发送消息
+                sendDisplayMessage(display, roomMember);
+            }
         } else {
             ExamSongDownloadData examSongDownloadData;
             String json = courseScheduleStudentPaymentDao.getExamJsonByCourseIdAndUserId(courseId, sysUser.getId());
@@ -335,8 +344,6 @@ public class RoomServiceImpl implements RoomService {
         roomResult.setUserInfo(userResult);
         roomResult.setDisplay(display);
         roomResult.setRoomId(roomId);
-        // RTC服务提供方
-        roomResult.setServiceProvider(Optional.ofNullable(courseSchedule.getServiceProvider()).orElse("rongCloud"));
 
         // 课程人数
         {