seems, the code is read once upon start of frameworkd and no change is detected until restart. you could try to change the method GetInfo to something like dbus_ok( self.players["ogg"].__class__.__name__ ) or player = self.playerForFile("foo.ogg") dbus_ok( player.__class__.__name__ ) and restart frameworkd.