mirror of
https://github.com/RedWizardsLab/EchoHub.git
synced 2026-09-04 08:36:11 +02:00
feat: enhance user presence and channel interaction features
- Fix userlist not refreshing after creating a new channel. - Implement unmute timer with a background job to automatically unmute users. - Improve userlist display by filtering invisible users and ensuring proper transitions between statuses. - Add clickable usernames, @mentions, and #channels for easier navigation. - Embed theme colors from source sites for a more cohesive UI. - Introduce a stateful userlist that updates incrementally via SignalR events. - Restrict auto-opening of files to safe types only, enhancing security. - Refactor user management into a dedicated service to reduce code duplication. - Add a MuteExpirationService to handle timed mutes. - Update documentation with Mermaid diagrams for major flows.
This commit is contained in:
@@ -5,7 +5,7 @@ namespace EchoHub.Core.Contracts;
|
||||
public interface IChatBroadcaster
|
||||
{
|
||||
Task SendMessageToChannelAsync(string channelName, MessageDto message);
|
||||
Task SendUserJoinedAsync(string channelName, string username, string? excludeConnectionId = null);
|
||||
Task SendUserJoinedAsync(string channelName, string username, UserPresenceDto? presence, string? excludeConnectionId = null);
|
||||
Task SendUserLeftAsync(string channelName, string username);
|
||||
Task SendChannelUpdatedAsync(ChannelDto channel, string? channelName = null);
|
||||
Task SendUserStatusChangedAsync(List<string> channelNames, UserPresenceDto presence);
|
||||
|
||||
@@ -8,7 +8,7 @@ namespace EchoHub.Core.Contracts;
|
||||
public interface IEchoHubClient
|
||||
{
|
||||
Task ReceiveMessage(MessageDto message);
|
||||
Task UserJoined(string channelName, string username);
|
||||
Task UserJoined(string channelName, string username, UserPresenceDto? presence);
|
||||
Task UserLeft(string channelName, string username);
|
||||
Task ChannelUpdated(ChannelDto channel);
|
||||
Task UserStatusChanged(UserPresenceDto presence);
|
||||
|
||||
Reference in New Issue
Block a user