This commit is contained in:
2026-02-02 18:48:19 -05:00
parent 045c810abc
commit 2ffb769a6f

View File

@@ -1852,27 +1852,26 @@ public class JellyfinController : ControllerBase
var item = itemResult.RootElement; var item = itemResult.RootElement;
_logger.LogInformation("📦 Fetched item details for playback report"); _logger.LogInformation("📦 Fetched item details for playback report");
// Build enhanced playback start info with full item details // Build playback start info - Jellyfin will fetch item details itself
var enhancedBody = new var playbackStart = new
{ {
ItemId = itemId, ItemId = itemId,
PositionTicks = doc.RootElement.TryGetProperty("PositionTicks", out var posProp) ? posProp.GetInt64() : 0, PositionTicks = doc.RootElement.TryGetProperty("PositionTicks", out var posProp) ? posProp.GetInt64() : 0,
// Include the full item so Jellyfin can display "Now Playing" // Let Jellyfin fetch the item details - don't include NowPlayingItem
NowPlayingItem = item.Clone()
}; };
var enhancedJson = JsonSerializer.Serialize(enhancedBody); var playbackJson = JsonSerializer.Serialize(playbackStart);
_logger.LogInformation("📤 Sending enhanced playback start with item details"); _logger.LogInformation("📤 Sending playback start: {Json}", playbackJson);
var (result, statusCode) = await _proxyService.PostJsonAsync("Sessions/Playing", enhancedJson, Request.Headers); var (result, statusCode) = await _proxyService.PostJsonAsync("Sessions/Playing", playbackJson, Request.Headers);
if (statusCode == 204 || statusCode == 200) if (statusCode == 204 || statusCode == 200)
{ {
_logger.LogInformation("✓ Enhanced playback start forwarded to Jellyfin ({StatusCode})", statusCode); _logger.LogInformation("✓ Playback start forwarded to Jellyfin ({StatusCode})", statusCode);
} }
else else
{ {
_logger.LogWarning("⚠️ Enhanced playback start returned status {StatusCode}", statusCode); _logger.LogWarning("⚠️ Playback start returned status {StatusCode}", statusCode);
} }
} }
else else
@@ -1888,7 +1887,7 @@ public class JellyfinController : ControllerBase
} }
catch (Exception ex) catch (Exception ex)
{ {
_logger.LogWarning(ex, "Failed to send enhanced playback start, trying basic"); _logger.LogWarning(ex, "Failed to send playback start, trying basic");
// Fall back to basic playback start // Fall back to basic playback start
var (result, statusCode) = await _proxyService.PostJsonAsync("Sessions/Playing", body, Request.Headers); var (result, statusCode) = await _proxyService.PostJsonAsync("Sessions/Playing", body, Request.Headers);
if (statusCode == 204 || statusCode == 200) if (statusCode == 204 || statusCode == 200)