From 8a827a17deb5cbeed5704ba5fb0502cbd607b490 Mon Sep 17 00:00:00 2001 From: barelyprofessional <150058423+barelyprofessional@users.noreply.github.com> Date: Fri, 27 Feb 2026 00:35:03 -0600 Subject: [PATCH] Handle presence updates that don't contain a username --- KfChatDotNetBot/Services/BotServices.cs | 4 ++-- KfChatDotNetBot/Services/Discord.cs | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/KfChatDotNetBot/Services/BotServices.cs b/KfChatDotNetBot/Services/BotServices.cs index b65502e..0636164 100644 --- a/KfChatDotNetBot/Services/BotServices.cs +++ b/KfChatDotNetBot/Services/BotServices.cs @@ -845,7 +845,7 @@ public class BotServices // TODO: Figure out why this never works private void DiscordOnPresenceUpdated(object sender, DiscordPresenceUpdateModel presence) { - var settings = SettingsProvider.GetMultipleValuesAsync([BuiltIn.Keys.DiscordBmjId, BuiltIn.Keys.DiscordIcon]).Result; + var settings = SettingsProvider.GetMultipleValuesAsync([BuiltIn.Keys.DiscordBmjId, BuiltIn.Keys.DiscordIcon, BuiltIn.Keys.TwitchBossmanJackUsername]).Result; if (presence.User.Id != settings[BuiltIn.Keys.DiscordBmjId].Value) { return; @@ -857,7 +857,7 @@ public class BotServices // } // _lastDiscordStatus = presence.Status; var clientStatus = presence.ClientStatus.Keys.Aggregate(string.Empty, (current, device) => current + $"{device} is {presence.ClientStatus[device]}; "); - _chatBot.SendChatMessage($"[img]{settings[BuiltIn.Keys.DiscordIcon].Value}[/img] {presence.User.GlobalName ?? presence.User.Username} has updated his Discord presence: {clientStatus}"); + _chatBot.SendChatMessage($"[img]{settings[BuiltIn.Keys.DiscordIcon].Value}[/img] {presence.User.GlobalName ?? presence.User.Username ?? settings[BuiltIn.Keys.TwitchBossmanJackUsername].Value} has updated his Discord presence: {clientStatus}"); UpdateBossmanLastSighting($"going {presence.Status} on Discord").Wait(_cancellationToken); } diff --git a/KfChatDotNetBot/Services/Discord.cs b/KfChatDotNetBot/Services/Discord.cs index f4d14d4..cd9a148 100644 --- a/KfChatDotNetBot/Services/Discord.cs +++ b/KfChatDotNetBot/Services/Discord.cs @@ -272,8 +272,7 @@ public class DiscordUserModel { [JsonPropertyName("id")] public required string Id { get; set; } - [JsonPropertyName("username")] - public required string Username { get; set; } + [JsonPropertyName("username")] public string? Username { get; set; } = null; [JsonPropertyName("global_name")] public string? GlobalName { get; set; } }