|
@@ -22,6 +22,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
+import java.util.ArrayList;
|
|
|
import java.util.Arrays;
|
|
|
import java.util.List;
|
|
|
|
|
@@ -141,6 +142,10 @@ public class UserController {
|
|
|
|
|
|
TencentData.CallbackStreamStateEvent event = TencentData.CallbackStreamStateEvent.from(body);
|
|
|
|
|
|
+ List<ImUserState> userState = new ArrayList<>();
|
|
|
+ ImUserState imUserState = new ImUserState();
|
|
|
+ userState.add(imUserState);
|
|
|
+ imUserState.setUserid(getSpeakerId(event.getStreamId()).toString());
|
|
|
// 断流事件通知
|
|
|
if (event.getEventType() == 0) {
|
|
|
|
|
@@ -149,6 +154,7 @@ public class UserController {
|
|
|
// 更新直播推流时长
|
|
|
imLiveBroadcastRoomService.updateLiveRoomPushStreamTime(event);
|
|
|
}
|
|
|
+ imUserState.setStatus("3");
|
|
|
|
|
|
// 自动关闭录制
|
|
|
imLiveBroadcastRoomService.closeLive(getRoomUid(event.getStreamId()), getSpeakerId(event.getStreamId()));
|
|
@@ -158,8 +164,11 @@ public class UserController {
|
|
|
if (event.getEventType() == 1) {
|
|
|
// 自动开启录制
|
|
|
imLiveBroadcastRoomService.startLive(getRoomUid(event.getStreamId()), getSpeakerId(event.getStreamId()), null);
|
|
|
+
|
|
|
+ imUserState.setStatus("0");
|
|
|
}
|
|
|
|
|
|
+ imLiveBroadcastRoomService.opsRoom(userState);
|
|
|
return TencentData.StreamEventCallbackResult.builder().code(0).build();
|
|
|
}
|
|
|
|