mirror of
https://github.com/RedWizardsLab/EchoHub.git
synced 2026-09-04 00:26:07 +02:00
- Add IrcGatewayService to handle IRC connections and commands. - Create IrcMessage class for parsing IRC protocol lines. - Implement IrcMessageFormatter for formatting messages as IRC lines. - Define IrcNumericReply constants for IRC numeric replies. - Add IrcOptions class for configuration settings related to IRC. - Create IrcServiceExtensions for adding IRC services to the application. - Refactor ChannelsController to use IChatService for broadcasting messages and channel updates. - Update ChatHub to utilize IChatService for user connection and message handling. - Introduce ChatService to manage chat-related operations and interactions. - Implement SignalRBroadcaster for broadcasting messages to SignalR clients. - Update PresenceTracker to retrieve usernames for connections. - Modify appsettings.example.json to include IRC configuration options. - Update solution file to include the new IRC project.
14 lines
577 B
C#
14 lines
577 B
C#
using EchoHub.Core.DTOs;
|
|
|
|
namespace EchoHub.Core.Contracts;
|
|
|
|
public interface IChatBroadcaster
|
|
{
|
|
Task SendMessageToChannelAsync(string channelName, MessageDto message);
|
|
Task SendUserJoinedAsync(string channelName, string username, string? excludeConnectionId = null);
|
|
Task SendUserLeftAsync(string channelName, string username);
|
|
Task SendChannelUpdatedAsync(ChannelDto channel, string? channelName = null);
|
|
Task SendUserStatusChangedAsync(List<string> channelNames, UserPresenceDto presence);
|
|
Task SendErrorAsync(string connectionId, string message);
|
|
}
|