diff --git a/vrobbler/apps/scrobbles/models.py b/vrobbler/apps/scrobbles/models.py index 3370d6d..e4f9dc8 100644 --- a/vrobbler/apps/scrobbles/models.py +++ b/vrobbler/apps/scrobbles/models.py @@ -829,6 +829,9 @@ class Scrobble(TimeStampedModel): ) source = scrobble_data["source"] mtype = media.__class__.__name__ + playback_status = scrobble_data.get( + "mopidy_status", scrobble_data.get("jellyfin_status", None) + ) logger.info( f"[scrobbling] check for existing scrobble to update ", @@ -836,7 +839,6 @@ class Scrobble(TimeStampedModel): "scrobble_id": scrobble.id if scrobble else None, "media_type": mtype, "media_id": media.id, - "source": source, "scrobble_data": scrobble_data, "percent_played": scrobble.percent_played if scrobble @@ -854,7 +856,11 @@ class Scrobble(TimeStampedModel): ) return scrobble - if scrobble and scrobble.can_be_updated: + if ( + scrobble + and scrobble.can_be_updated + and playback_status != "stopped" + ): return scrobble.update(scrobble_data) # Discard status before creating