|
|
|
@ -35,8 +35,6 @@ namespace Yavsc.ApiControllers
|
|
|
|
logger.LogInformation("Put : " + filename);
|
|
|
|
logger.LogInformation("Put : " + filename);
|
|
|
|
if (!HttpContext.WebSockets.IsWebSocketRequest)
|
|
|
|
if (!HttpContext.WebSockets.IsWebSocketRequest)
|
|
|
|
return BadRequest("not a web socket");
|
|
|
|
return BadRequest("not a web socket");
|
|
|
|
if (!HttpContext.User.Identity.IsAuthenticated)
|
|
|
|
|
|
|
|
return new UnauthorizedResult();
|
|
|
|
|
|
|
|
var subdirs = filename.Split('/');
|
|
|
|
var subdirs = filename.Split('/');
|
|
|
|
var filePath = subdirs.Length > 1 ? string.Join("/", subdirs.Take(subdirs.Length-1)) : null;
|
|
|
|
var filePath = subdirs.Length > 1 ? string.Join("/", subdirs.Take(subdirs.Length-1)) : null;
|
|
|
|
var shortFileName = subdirs[subdirs.Length-1];
|
|
|
|
var shortFileName = subdirs[subdirs.Length-1];
|
|
|
|
@ -55,17 +53,18 @@ namespace Yavsc.ApiControllers
|
|
|
|
filename
|
|
|
|
filename
|
|
|
|
);
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
hubContext.Clients.All.SendAsync("addPublicStream", new PublicStreamInfo
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
sender = userName,
|
|
|
|
|
|
|
|
url = url,
|
|
|
|
|
|
|
|
}, $"{userName} is starting a stream!");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
string destDir = HttpContext.User.InitPostToFileSystem(filePath);
|
|
|
|
string destDir = HttpContext.User.EnsureDestinationDirectory(filePath);
|
|
|
|
logger.LogInformation($"Saving flow to {destDir}");
|
|
|
|
logger.LogInformation($"Saving flow to {destDir}");
|
|
|
|
var userId = User.GetUserId();
|
|
|
|
var userId = User.GetUserId();
|
|
|
|
var user = await dbContext.Users.FirstAsync(u => u.Id == userId);
|
|
|
|
var user = await dbContext.Users.FirstAsync(u => u.Id == userId);
|
|
|
|
logger.LogInformation("Accepting stream ...");
|
|
|
|
logger.LogInformation("Accepting stream ...");
|
|
|
|
|
|
|
|
_ = hubContext.Clients.All.SendAsync("addPublicStream", new PublicStreamInfo
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
sender = userName,
|
|
|
|
|
|
|
|
url = url,
|
|
|
|
|
|
|
|
}, $"{userName} is starting a stream!");
|
|
|
|
|
|
|
|
|
|
|
|
await liveProcessor.AcceptStream(HttpContext, user, destDir, shortFileName);
|
|
|
|
await liveProcessor.AcceptStream(HttpContext, user, destDir, shortFileName);
|
|
|
|
return Ok();
|
|
|
|
return Ok();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|