def __init__(self): # Load up the DBus session_bus = _dbus.SessionBus() try: self._dbus = session_bus.get_object("org.razer", "/org/razer") except _dbus.DBusException: raise DaemonNotFound("Could not connect to daemon") # Get interface for daemon methods self._dbus_daemon = _dbus.Interface(self._dbus, "razer.daemon") # Get interface for devices methods self._dbus_devices = _dbus.Interface(self._dbus, "razer.devices") self._device_serials = self._dbus_devices.getDevices() self._devices = [] self._daemon_version = self._dbus_daemon.version() for serial in self._device_serials: device = _RazerDeviceFactory.get_device(serial) self._devices.append(device)