Socket classes for Hermes

This commit is contained in:
Tom
2024-06-24 22:31:45 +00:00
commit d8522584c4
26 changed files with 434 additions and 0 deletions

View File

@@ -0,0 +1,8 @@
namespace HermesSocketLibrary.Socket.Data
{
public class ChatterMessage
{
public long Id { get; set; }
public string Name { get; set; }
}
}

View File

@@ -0,0 +1,7 @@
namespace HermesSocketLibrary.Socket.Data
{
public class EmoteDetailsMessage
{
public Dictionary<string, string> Emotes { get; set; }
}
}

View File

@@ -0,0 +1,11 @@
namespace HermesSocketLibrary.Socket.Data
{
public class EmoteUsageMessage
{
public string MessageId { get; set; }
public DateTime DateTime { get; set; }
public long BroadcasterId { get; set; }
public HashSet<string> Emotes { get; set; }
public long ChatterId { get; set; }
}
}

View File

@@ -0,0 +1,20 @@
namespace HermesSocketLibrary.Socket.Data
{
public class ErrorMessage
{
public Exception? Exception { get; set; }
public string Message { get; set; }
public ErrorMessage(Exception exception, string message)
{
Exception = exception;
Message = message;
}
public ErrorMessage(string message)
{
Message = message;
Exception = null;
}
}
}

View File

@@ -0,0 +1,8 @@
namespace HermesSocketLibrary.Socket.Data
{
public class HeartbeatMessage
{
public DateTime DateTime { get; set; }
public bool Respond { get; set; }
}
}

View File

@@ -0,0 +1,7 @@
namespace HermesSocketLibrary.Socket.Data
{
public class HermesLoginMessage
{
public string ApiKey { get; set; }
}
}

View File

@@ -0,0 +1,8 @@
namespace HermesSocketLibrary.Socket.Data
{
public class LoginAckMessage
{
public string UserId { get; set; }
public bool AnotherClient { get; set; }
}
}

View File

@@ -0,0 +1,9 @@
namespace HermesSocketLibrary.Socket.Data
{
public class RequestAckMessage
{
public RequestMessage? Request { get; set; }
public string? Nounce { get; set; }
public object? Data { get; set; }
}
}

View File

@@ -0,0 +1,9 @@
namespace HermesSocketLibrary.Socket.Data
{
public class RequestMessage
{
public string? Type { get; set; }
public IDictionary<string, object>? Data { get; set; }
public string? Nounce { get; set; }
}
}

View File

@@ -0,0 +1,12 @@
using System.Text.Json.Serialization;
namespace HermesSocketLibrary.Socket.Data
{
public class SocketMessage
{
[JsonPropertyName("op")]
public int? OpCode { get; set; }
[JsonPropertyName("d")]
public object? Data { get; set; }
}
}