56 lines
1.5 KiB
Python

import time
import json
import configparser
import SubSonic
import ListenBrainz
import MusicDatabase
import scrobble
def main():
config = configparser.ConfigParser()
config.read("config.ini")
conn = SubSonic.SubpyConn(
config.get("Navidrome", "user"),
config.get("Navidrome", "pass"),
config.get("Navidrome", "url")
)
now_playing = conn.getNowPlaying()
# print(json.dumps(now_playing, indent=4))
track_id = now_playing['nowPlaying']['entry'][0]['id']
track_mbid = now_playing['nowPlaying']['entry'][0]['musicBrainzId']
track_name = now_playing['nowPlaying']['entry'][0]['title']
album_id = now_playing['nowPlaying']['entry'][0]['albumId']
album_info = conn.getAlbum(album_id)
album_mbid = album_info['album']['musicBrainzId']
album_name = album_info['album']['name']
# print(json.dumps(album_info, indent=4))
artist_id = now_playing['nowPlaying']['entry'][0]['artistId']
artist_info = conn.getArtist(artist_id, raw_json=True)
artist_mbid = artist_info['artist']['musicBrainzId']
artist_name = artist_info['artist']['name']
# print(json.dumps(artist_info, indent=4))
print(f'{track_name=} {album_name=} {artist_name=}')
dummy_scrobble = ListenBrainz.ListenBrainzScrobble(artist_name, album_name, track_name)
listenBrainz_match = scrobble.get_mbid(dummy_scrobble)
print(listenBrainz_match)
print(album_mbid)
assert album_mbid == listenBrainz_match[1]
if __name__ == '__main__':
main()