From ea66280a6188d0cdb53356726ca187898f9a5d09 Mon Sep 17 00:00:00 2001 From: Hsu Still <341464@gmail.com> Date: Sat, 3 Mar 2018 01:12:52 +0800 Subject: [PATCH] Implement SpotifyGame details --- src/Discord.Net.Core/Entities/Activities/SpotifyGame.cs | 2 ++ src/Discord.Net.WebSocket/Extensions/EntityExtensions.cs | 9 ++++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/Discord.Net.Core/Entities/Activities/SpotifyGame.cs b/src/Discord.Net.Core/Entities/Activities/SpotifyGame.cs index 54725f815..0139d4025 100644 --- a/src/Discord.Net.Core/Entities/Activities/SpotifyGame.cs +++ b/src/Discord.Net.Core/Entities/Activities/SpotifyGame.cs @@ -1,3 +1,4 @@ +using System.Collections.Generic; using System.Diagnostics; namespace Discord @@ -11,6 +12,7 @@ namespace Discord public string TrackAlbum { get; internal set; } public string SyncId { get; internal set; } public string SessionId { get; internal set; } + public string[] Artists { get; internal set; } public override string ToString() => Name; private string DebuggerDisplay => $"{Name} (Spotify)"; diff --git a/src/Discord.Net.WebSocket/Extensions/EntityExtensions.cs b/src/Discord.Net.WebSocket/Extensions/EntityExtensions.cs index e0fbc8120..096e14803 100644 --- a/src/Discord.Net.WebSocket/Extensions/EntityExtensions.cs +++ b/src/Discord.Net.WebSocket/Extensions/EntityExtensions.cs @@ -7,8 +7,15 @@ namespace Discord.WebSocket // Spotify Game if (model.SyncId.IsSpecified) { - return new SpotifyGame() + var assets = model.Assets.GetValueOrDefault()?.ToEntity(); + return new SpotifyGame { + Name = model.Name, + SessionId = model.SessionId.GetValueOrDefault(), + SyncId = model.SyncId.Value, + TrackAlbum = assets?[1]?.Text, + TrackTitle = model.Details.GetValueOrDefault(), + Artists = model.State.GetValueOrDefault()?.Split(';') }; }