new app server and database + added hub and controller of user profile

This commit is contained in:
Artemy
2025-11-04 11:41:06 +07:00
parent 1d442d037c
commit a5a5fc4758
62 changed files with 1760 additions and 2543 deletions
+10 -5
View File
@@ -51,7 +51,7 @@ public class ChatsHub : Hub
await base.OnConnectedAsync();
}
public override async Task OnDisconnectedAsync(Exception? exception)
public override async Task OnDisconnectedAsync(Exception exception)
{
var userId = _userAccessor.GetUserId(Context, true);
if (userId != Guid.Empty)
@@ -87,7 +87,7 @@ public class ChatsHub : Hub
public async Task<HubResult<UserMessageResponse>> Send(MessageRequest request)
{
var senderId= _userAccessor.GetUserId(Context);
var senderId = _userAccessor.GetUserId(Context);
if (string.IsNullOrWhiteSpace(request.EncryptedContent) &&
(request.MediaAttachments == null || !request.MediaAttachments.Any()))
@@ -96,6 +96,12 @@ public class ChatsHub : Hub
return HubResult<UserMessageResponse>.BadRequest("Message must contain content or media.");
}
if (request.EncryptedContent.Length > 50_000)
{
_logger.LogWarning("User {SenderId} tried to send a too long message (length: {Length})", senderId, request.EncryptedContent.Length);
return HubResult<UserMessageResponse>.BadRequest("Message cannot exceed 50,000 characters.");
}
_logger.LogInformation("Sending message from {SenderId} to {RecipientId} ({RecipientType})",
senderId, request.RecipientId, request.RecipientType);
@@ -143,7 +149,6 @@ public class ChatsHub : Hub
}
}
public async Task<HubResult<MessageRemovedResponse>> Remove(RemoveMessageRequest request)
{
var removerId = _userAccessor.GetUserId(Context);
@@ -183,7 +188,6 @@ public class ChatsHub : Hub
}
}
public async Task<HubResult<MessageEditResponse>> Edit(EditMessageRequest request)
{
var editor = _userAccessor.GetUserId(Context);
@@ -232,7 +236,7 @@ public class ChatsHub : Hub
}
}
#region common
private UserMessageResponse BuildUserMessageResponse(Message message, Guid? replyToId)
{
return new UserMessageResponse
@@ -305,4 +309,5 @@ public class ChatsHub : Hub
_logger.LogWarning(ex, "{Msg}: {UserId} -> {TargetId}", msg, userId, targetId);
return HubResult<T>.NotFound("Message not found.");
}
#endregion
}