Fixed a lot of compiler warnings. Fixed 7tv connection.

This commit is contained in:
Tom
2025-01-17 00:54:47 +00:00
parent b8d0e8cfd8
commit 5e33d594d2
78 changed files with 314 additions and 235 deletions

View File

@@ -23,10 +23,17 @@ public class SevenApiClient
});
}
public async Task<EmoteSet?> FetchChannelEmoteSet(string twitchId)
public async Task<EmoteSet?> FetchChannelEmoteSet(long twitchId)
{
if (twitchId <= 0)
{
_logger.Warning("No valid Twitch Id was given for 7tv emotes.");
return null;
}
try
{
_logger.Debug($"Fetching 7tv information using Twitch Id [twitch id: {twitchId}]");
var details = await _web.GetJson<UserDetails>($"{API_URL}/users/twitch/" + twitchId);
return details?.EmoteSet;
}

View File

@@ -2,10 +2,10 @@ namespace TwitchChatTTS.Seven.Socket.Data
{
public class ChangeMapMessage
{
public object Id { get; set; }
public required object Id { get; set; }
public byte Kind { get; set; }
public bool? Contextual { get; set; }
public object Actor { get; set; }
public required object Actor { get; set; }
public IEnumerable<ChangeField>? Added { get; set; }
public IEnumerable<ChangeField>? Updated { get; set; }
public IEnumerable<ChangeField>? Removed { get; set; }
@@ -14,17 +14,17 @@ namespace TwitchChatTTS.Seven.Socket.Data
}
public class ChangeField {
public string Key { get; set; }
public required string Key { get; set; }
public int? Index { get; set; }
public bool Nested { get; set; }
public object OldValue { get; set; }
public object Value { get; set; }
public required object OldValue { get; set; }
public required object Value { get; set; }
}
public class EmoteField {
public string Id { get; set; }
public string Name { get; set; }
public string ActorId { get; set; }
public required string Id { get; set; }
public required string Name { get; set; }
public required string ActorId { get; set; }
public int Flags { get; set; }
}
}

View File

@@ -2,7 +2,7 @@ namespace TwitchChatTTS.Seven.Socket.Data
{
public class DispatchMessage
{
public object EventType { get; set; }
public ChangeMapMessage Body { get; set; }
public required object EventType { get; set; }
public required ChangeMapMessage Body { get; set; }
}
}

View File

@@ -3,6 +3,6 @@ namespace TwitchChatTTS.Seven.Socket.Data
public class EndOfStreamMessage
{
public int Code { get; set; }
public string Message { get; set; }
public required string Message { get; set; }
}
}

View File

@@ -2,7 +2,7 @@ namespace TwitchChatTTS.Seven.Socket.Data
{
public class ErrorMessage
{
public Exception Exception { get; set; }
public string Message { get; set; }
public Exception? Exception { get; set; }
public string? Message { get; set; }
}
}

View File

@@ -2,6 +2,6 @@ namespace TwitchChatTTS.Seven.Socket.Data
{
public class ReconnectMessage
{
public string Reason { get; set; }
public required string Reason { get; set; }
}
}

View File

@@ -2,6 +2,6 @@ namespace TwitchChatTTS.Seven.Socket.Data
{
public class ResumeMessage
{
public string SessionId { get; set; }
public required string SessionId { get; set; }
}
}

View File

@@ -3,7 +3,7 @@ namespace TwitchChatTTS.Seven.Socket.Data
public class SevenHelloMessage
{
public uint HeartbeatInterval { get; set; }
public string SessionId { get; set; }
public required string SessionId { get; set; }
public int SubscriptionLimit { get; set; }
}
}

View File

@@ -2,7 +2,7 @@ namespace TwitchChatTTS.Seven.Socket.Data
{
public class SubscribeMessage
{
public string? Type { get; set; }
public required string Type { get; set; }
public IDictionary<string, string>? Condition { get; set; }
}
}

View File

@@ -2,7 +2,7 @@ namespace TwitchChatTTS.Seven.Socket.Data
{
public class UnsubscribeMessage
{
public string Type { get; set; }
public required string Type { get; set; }
public IDictionary<string, string>? Condition { get; set; }
}
}

View File

@@ -15,7 +15,7 @@ namespace TwitchChatTTS.Seven.Socket.Handlers
return;
var code = message.Code - 4000;
await sender.DisconnectAsync(new SocketDisconnectionEventArgs(WebSocketCloseStatus.Empty.ToString(), code.ToString()));
await sender.DisconnectAsync(new SocketDisconnectionEventArgs(message.Message, code.ToString()));
}
}
}

View File

@@ -17,13 +17,13 @@ namespace TwitchChatTTS.Seven.Socket.Handlers
public Task Execute<Data>(SocketClient<WebSocketMessage> sender, Data data)
{
if (data is not ErrorMessage message || message == null)
if (data is not ErrorMessage message || message == null || message.Exception == null && message.Message == null)
return Task.CompletedTask;
if (message.Exception != null)
_logger.Error(message.Exception, message.Message);
_logger.Error(message.Exception, message.Message ?? string.Empty);
else
_logger.Error(message.Message);
_logger.Error(message.Message!);
return Task.CompletedTask;
}
}

View File

@@ -4,18 +4,18 @@ namespace TwitchChatTTS.Seven
{
public class UserDetails
{
public string Id { get; set; }
public string Platform { get; set; }
public string Username { get; set; }
public required string Id { get; set; }
public required string Platform { get; set; }
public required string DisplayName { get; set; }
public int EmoteCapacity { get; set; }
public string EmoteSetId { get; set; }
public EmoteSet EmoteSet { get; set; }
public SevenUser User { get; set; }
public required string EmoteSetId { get; set; }
public required EmoteSet EmoteSet { get; set; }
public required SevenUser User { get; set; }
}
public class SevenUser
{
public string Id { get; set; }
public string Username { get; set; }
public required string Id { get; set; }
public required string Username { get; set; }
}
}