# Interface IChatBroadcaster | EchoHub Documentation

# Interface IChatBroadcaster

Namespace
  EchoHub.Core.Contracts

Assembly
  EchoHub.Core.dll

    public interface IChatBroadcaster

## Methods

### SendChannelUpdatedAsync(ChannelDto, string?)

    Task SendChannelUpdatedAsync(ChannelDto channel, string? channelName = null)

#### Parameters

`channel` ChannelDto
`channelName` string

#### Returns

Task

### SendErrorAsync(string, string)

    Task SendErrorAsync(string connectionId, string message)

#### Parameters

`connectionId` string
`message` string

#### Returns

Task

### SendMessageToChannelAsync(string, MessageDto)

    Task SendMessageToChannelAsync(string channelName, MessageDto message)

#### Parameters

`channelName` string
`message` MessageDto

#### Returns

Task

### SendUserJoinedAsync(string, string, string?)

    Task SendUserJoinedAsync(string channelName, string username, string? excludeConnectionId = null)

#### Parameters

`channelName` string
`username` string
`excludeConnectionId` string

#### Returns

Task

### SendUserLeftAsync(string, string)

    Task SendUserLeftAsync(string channelName, string username)

#### Parameters

`channelName` string
`username` string

#### Returns

Task

### SendUserStatusChangedAsync(List<string>, UserPresenceDto)

    Task SendUserStatusChangedAsync(List<string> channelNames, UserPresenceDto presence)

#### Parameters

`channelNames` List<string>
`presence` UserPresenceDto

#### Returns

Task