Table of Contents

Class ChatHub

Namespace
EchoHub.Server.Hubs
Assembly
EchoHub.Server.dll
[Authorize]
public class ChatHub : Hub<IEchoHubClient>, IDisposable
Inheritance
ChatHub
Implements
Inherited Members

Constructors

ChatHub(EchoHubDbContext, ILogger<ChatHub>, PresenceTracker)

public ChatHub(EchoHubDbContext db, ILogger<ChatHub> logger, PresenceTracker presenceTracker)

Parameters

db EchoHubDbContext
logger ILogger<ChatHub>
presenceTracker PresenceTracker

Methods

GetChannelHistory(string, int)

public Task<List<MessageDto>> GetChannelHistory(string channelName, int count = 50)

Parameters

channelName string
count int

Returns

Task<List<MessageDto>>

GetOnlineUsers(string)

public Task<List<UserPresenceDto>> GetOnlineUsers(string channelName)

Parameters

channelName string

Returns

Task<List<UserPresenceDto>>

JoinChannel(string)

public Task<List<MessageDto>> JoinChannel(string channelName)

Parameters

channelName string

Returns

Task<List<MessageDto>>

LeaveChannel(string)

public Task LeaveChannel(string channelName)

Parameters

channelName string

Returns

Task

OnConnectedAsync()

public override Task OnConnectedAsync()

Returns

Task

OnDisconnectedAsync(Exception?)

public override Task OnDisconnectedAsync(Exception? exception)

Parameters

exception Exception

Returns

Task

SendMessage(string, string)

public Task SendMessage(string channelName, string content)

Parameters

channelName string
content string

Returns

Task

UpdateStatus(UserStatus, string?)

public Task UpdateStatus(UserStatus status, string? statusMessage)

Parameters

status UserStatus
statusMessage string

Returns

Task