local mpd plays music.
"""
+import argparse
import os
-import sys
-import dbus
from dbus.mainloop.glib import DBusGMainLoop
from gi.repository import GObject
import mpd
+import onoff.dbusutils
+
class MpdWatcher(object):
def __init__(self, mpdclient, onoffproxy):
self.mpdclient = mpdclient
state = self.mpdclient.status()["state"]
if state == "play":
if self.activatefd is None:
- st, fd = self.onoffproxy.activatefd(3)
+ st, fd = self.onoffproxy.activatefd()
self.activatefd = fd.take()
else:
if self.activatefd is not None:
self.activatefd = None
def main():
+ parser = argparse.ArgumentParser(parents=[onoff.dbusutils.dbus_options])
+ args = parser.parse_args()
DBusGMainLoop(set_as_default=True)
- bus = dbus.SessionBus()
- proxy = bus.get_object("de.subdivi.onoff0", "/de/subdivi/onoff0/" + sys.argv[1])
+ proxy = onoff.dbusutils.get_dbus_proxy(args)
client = mpd.MPDClient()
client.connect("localhost", 6600)
watcher = MpdWatcher(client, proxy)