#!/usr/bin/env python
# vim: ft=python

import dbus
try:
    sess = dbus.SessionBus()
    spotify = sess.get_object('org.mpris.MediaPlayer2.spotify', '/org/mpris/MediaPlayer2')
    properties = dbus.Interface(spotify, 'org.freedesktop.DBus.Properties')

    metadata = properties.Get("org.mpris.MediaPlayer2.Player", "Metadata")
    status = properties.Get("org.mpris.MediaPlayer2.Player", "PlaybackStatus")


    artist = metadata['xesam:artist'][0] if metadata['xesam:artist'] else ''
    song = metadata['xesam:title'] if metadata['xesam:title'] else ''
    album = metadata['xesam:album'] if metadata['xesam:album'] else ''

    pause_symbol = " "
    play_symbol = " "

    if (not song and not artist):
            print("")
    if (song == "Advertisement" or not artist):
        print(pause_symbol + "Advertisement")
    else:
        symbol = pause_symbol
        if status == "Playing":
            symbol = play_symbol
        print(f"{symbol} {song}: {artist}"[:25] + "...")

except dbus.exceptions.DBusException:
    print("")
