diff --git a/VERSION b/VERSION index a6e7bcb..c945ef1 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -2.0.17 +2.0.18 diff --git a/api/routes.py b/api/routes.py index fc3c1ca..c944fb7 100644 --- a/api/routes.py +++ b/api/routes.py @@ -152,20 +152,54 @@ async def sonarr_webhook(request: Request, background_tasks: BackgroundTasks, de if recent_renames: # Take the most recent rename event latest_rename = recent_renames[0] + print(f"DEBUG: Latest rename event keys: {list(latest_rename.keys())}") + print(f"DEBUG: Latest rename event full structure: {latest_rename}") + + # Try different possible episode data locations episode_info = latest_rename.get("episode", {}) - season_num = episode_info.get("seasonNumber") - episode_num = episode_info.get("episodeNumber") + episode_file_info = latest_rename.get("episodeFile", {}) + data_info = latest_rename.get("data", {}) + + print(f"DEBUG: Episode info: {episode_info}") + print(f"DEBUG: EpisodeFile info: {episode_file_info}") + print(f"DEBUG: Data info: {data_info}") + + # Try to extract episode info from any available source + season_num = None + episode_num = None + episode_id = None + episode_title = None + + # Check episode object first + if episode_info: + season_num = episode_info.get("seasonNumber") + episode_num = episode_info.get("episodeNumber") + episode_id = episode_info.get("id") + episode_title = episode_info.get("title") + + # Check episodeFile object + if not season_num and episode_file_info: + season_num = episode_file_info.get("seasonNumber") + episode_num = episode_file_info.get("episodeNumber") + episode_id = episode_file_info.get("episodeId") or episode_file_info.get("id") + + # Check data object + if not season_num and data_info: + season_num = data_info.get("seasonNumber") + episode_num = data_info.get("episodeNumber") + + print(f"DEBUG: Extracted - Season: {season_num}, Episode: {episode_num}, ID: {episode_id}") if season_num and episode_num: episodes_data = [{ "seasonNumber": season_num, "episodeNumber": episode_num, - "id": episode_info.get("id"), - "title": episode_info.get("title") + "id": episode_id, + "title": episode_title }] print(f"INFO: Found recently renamed episode from history: S{season_num:02d}E{episode_num:02d}") else: - print(f"DEBUG: Recent rename event missing season/episode data") + print(f"DEBUG: Could not extract episode data from rename event") else: print(f"DEBUG: No recent rename events found in last hour") else: