# Class UserPresenceDto | EchoHub Documentation

# Class UserPresenceDto

Namespace
  EchoHub.Core.DTOs

Assembly
  EchoHub.Core.dll

    public record UserPresenceDto : IEquatable<UserPresenceDto>

Inheritance
  object
  UserPresenceDto

Implements
  IEquatable<UserPresenceDto>

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

## Constructors

### UserPresenceDto(UserPresenceDto)

    protected UserPresenceDto(UserPresenceDto original)

#### Parameters

`original` UserPresenceDto

### UserPresenceDto(string, string?, string?, UserStatus, string?, ServerRole, bool)

    public UserPresenceDto(string Username, string? DisplayName, string? NicknameColor, UserStatus Status, string? StatusMessage, ServerRole Role, bool IsIrc = false)

#### Parameters

`Username` string
`DisplayName` string
`NicknameColor` string
`Status` UserStatus
`StatusMessage` string
`Role` ServerRole
`IsIrc` bool

## Properties

### DisplayName

    public string? DisplayName { get; init; }

#### Property Value

string

### EqualityContract

    protected virtual Type EqualityContract { get; }

#### Property Value

Type

### IsIrc

    public bool IsIrc { get; init; }

#### Property Value

bool

### NicknameColor

    public string? NicknameColor { get; init; }

#### Property Value

string

### Role

    public ServerRole Role { get; init; }

#### Property Value

ServerRole

### Status

    public UserStatus Status { get; init; }

#### Property Value

UserStatus

### StatusMessage

    public string? StatusMessage { get; init; }

#### Property Value

string

### Username

    public string Username { get; init; }

#### Property Value

string

## Methods

### Deconstruct(out string, out string?, out string?, out UserStatus, out string?, out ServerRole, out bool)

    public void Deconstruct(out string Username, out string? DisplayName, out string? NicknameColor, out UserStatus Status, out string? StatusMessage, out ServerRole Role, out bool IsIrc)

#### Parameters

`Username` string
`DisplayName` string
`NicknameColor` string
`Status` UserStatus
`StatusMessage` string
`Role` ServerRole
`IsIrc` bool

### Equals(UserPresenceDto?)

    public virtual bool Equals(UserPresenceDto? other)

#### Parameters

`other` UserPresenceDto

#### Returns

bool

### Equals(object?)

    public override bool Equals(object? obj)

#### Parameters

`obj` object

#### Returns

bool

### GetHashCode()

    public override int GetHashCode()

#### Returns

int

### PrintMembers(StringBuilder)

    protected virtual bool PrintMembers(StringBuilder builder)

#### Parameters

`builder` StringBuilder

#### Returns

bool

### ToString()

    public override string ToString()

#### Returns

string

## Operators

### operator ==(UserPresenceDto?, UserPresenceDto?)

    public static bool operator ==(UserPresenceDto? left, UserPresenceDto? right)

#### Parameters

`left` UserPresenceDto
`right` UserPresenceDto

#### Returns

bool

### operator !=(UserPresenceDto?, UserPresenceDto?)

    public static bool operator !=(UserPresenceDto? left, UserPresenceDto? right)

#### Parameters

`left` UserPresenceDto
`right` UserPresenceDto

#### Returns

bool