Added release_group_mbid field to listenbrainz, fixes #416

This commit is contained in:
emeric
2024-03-02 23:47:23 +01:00
parent 9cccf33f05
commit ba180ea847
8 changed files with 30 additions and 6 deletions
@@ -131,6 +131,8 @@ namespace Scanner
release.modify()->setName(releaseInfo.name);
if (release->getSortName() != releaseInfo.sortName)
release.modify()->setSortName(releaseInfo.sortName);
if (release->getGroupMBID() != releaseInfo.groupMBID)
release.modify()->setGroupMBID(releaseInfo.groupMBID);
if (release->getTotalDisc() != releaseInfo.mediumCount)
release.modify()->setTotalDisc(releaseInfo.mediumCount);
if (release->getArtistDisplayName() != releaseInfo.artistDisplayName)
@@ -65,10 +65,12 @@ namespace Scrobbling::ListenBrainz
Wt::Json::Object additionalInfo;
additionalInfo["listening_from"] = "LMS";
additionalInfo["duration_ms"] = std::chrono::duration_cast<std::chrono::milliseconds>(track->getDuration()).count();
if (track->getRelease())
if (const auto release {track->getRelease()})
{
if (auto MBID{ track->getRelease()->getMBID() })
if (auto MBID{ release->getMBID() })
additionalInfo["release_mbid"] = Wt::Json::Value{ std::string {MBID->getAsString()} };
if (auto groupMBID{ release->getGroupMBID() })
additionalInfo["release_group_mbid"] = Wt::Json::Value{ std::string {groupMBID->getAsString()} };
}
{