diff --git a/WGShare.API/Controllers/Frontend/RoomController.cs b/WGShare.API/Controllers/Frontend/RoomController.cs
index d540e62..491c4ae 100644
--- a/WGShare.API/Controllers/Frontend/RoomController.cs
+++ b/WGShare.API/Controllers/Frontend/RoomController.cs
@@ -681,6 +681,25 @@ namespace WGShare.API.Controllers.Frontend
await _hubContext.Clients.Group(roomNum).ShowUser(UId, UserName, string.Empty, string.Empty);
}
+ ///
+ /// 共享人取消共享屏幕
+ ///
+ ///
+ [HttpPost("stop-shared-screen")]
+ public async Task StopedSharedScreen([FromQuery] string roomNum)
+ {
+ if (RedisHelper.Instance.HGet(RedisKeyConstant.SessionManage.GetChannelShowUserKey(TenantId), roomNum) != ScreenShareId)
+ {
+ // 不是共享屏幕的人,不做处理
+ return;
+ }
+
+ // 设置新的共享屏幕
+ RedisHelper.Instance.HSet(RedisKeyConstant.SessionManage.GetChannelShowUserKey(TenantId), roomNum, UId);
+
+ await _hubContext.Clients.Group(roomNum).StopedSharedScreen(ScreenShareId);
+ }
+
#region 文件分享
///
/// 分享上传文件
diff --git a/WGShare.API/Hubs/IMessageClient.cs b/WGShare.API/Hubs/IMessageClient.cs
index 3095936..8aa358d 100644
--- a/WGShare.API/Hubs/IMessageClient.cs
+++ b/WGShare.API/Hubs/IMessageClient.cs
@@ -61,6 +61,12 @@ namespace WGShare.API.Hubs
///
Task ShowUser(string uid, string uname, string operUid, string operUserName);
+ ///
+ /// 共享人取消共享屏幕
+ ///
+ ///
+ Task StopedSharedScreen(string ScreenShareId);
+
///
/// 用户加入频道回调
///