summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShravan Mandava <shravan@mandava8.com>2025-12-31 01:57:36 +0000
committerShravan Mandava <shravan@mandava8.com>2025-12-31 01:57:36 +0000
commit39b49156115cef7d3914502294da40643a3ee2bf (patch)
tree3b296ce62c21ccc33a84e404fd595a7e6bae8d22 /src
parent0ad094125b8048b6c66b5d431f44e4c94c419612 (diff)
Print Track Details
Get and Print current player data from DBus
Diffstat (limited to 'src')
-rw-r--r--src/musefetch/__main__.py29
1 files changed, 28 insertions, 1 deletions
diff --git a/src/musefetch/__main__.py b/src/musefetch/__main__.py
index 73d8e8d..5c03b21 100644
--- a/src/musefetch/__main__.py
+++ b/src/musefetch/__main__.py
@@ -1,5 +1,32 @@
+import dbus
+import json
+
+
+def get_players():
+ players = []
+
+ for name in dbus.SessionBus().list_names():
+ if name.startswith("org.mpris.MediaPlayer2."):
+ players.append(name)
+
+ return players
+
+
def main():
- print("Hello World :)")
+ player = dbus.Interface(
+ dbus.SessionBus().get_object(get_players()[0], "/org/mpris/MediaPlayer2"),
+ "org.freedesktop.DBus.Properties",
+ )
+
+ playing = (
+ True
+ if player.Get("org.mpris.MediaPlayer2.Player", "PlaybackStatus") == "Playing"
+ else False
+ )
+ metadata = player.Get("org.mpris.MediaPlayer2.Player", "Metadata")
+
+ print(f"Playing: {playing}")
+ print(json.dumps(metadata, indent=4))
if __name__ == "__main__":