# Class SignalRBroadcaster | EchoHub Documentation

# Class SignalRBroadcaster

Namespace
  EchoHub.Server.Services

Assembly
  EchoHub.Server.dll

    public class SignalRBroadcaster : IChatBroadcaster

Inheritance
  object
  SignalRBroadcaster

Implements
  IChatBroadcaster

Inherited Members
  object.GetType()
  object.MemberwiseClone()
  object.ToString()
  object.Equals(object)
  object.Equals(object, object)
  object.ReferenceEquals(object, object)
  object.GetHashCode()

## Constructors

### SignalRBroadcaster(IHubContext<ChatHub, IEchoHubClient>, PresenceTracker)

    public SignalRBroadcaster(IHubContext<ChatHub, IEchoHubClient> hubContext, PresenceTracker presenceTracker)

#### Parameters

`hubContext` IHubContext<ChatHub, IEchoHubClient>
`presenceTracker` PresenceTracker

## Methods

### SendChannelUpdatedAsync(ChannelDto, string?)

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

#### Parameters

`channel` ChannelDto
`channelName` string

#### Returns

Task

### SendErrorAsync(string, string)

    public Task SendErrorAsync(string connectionId, string message)

#### Parameters

`connectionId` string
`message` string

#### Returns

Task

### SendMessageToChannelAsync(string, MessageDto)

    public Task SendMessageToChannelAsync(string channelName, MessageDto message)

#### Parameters

`channelName` string
`message` MessageDto

#### Returns

Task

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

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

#### Parameters

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

#### Returns

Task

### SendUserLeftAsync(string, string)

    public Task SendUserLeftAsync(string channelName, string username)

#### Parameters

`channelName` string
`username` string

#### Returns

Task

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

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

#### Parameters

`channelNames` List<string>
`presence` UserPresenceDto

#### Returns

Task