import gobject
import dbus

if  getattr(dbus, "version", (0,0,0)) >= (0,41,0):
    import dbus.glib

SLUZBA   = "org.freedesktop.Hal"
OBJEKT   = "/org/freedesktop/Hal/Manager"
ROZHRANI = "org.freedesktop.Hal.Manager"

def hNoveZarizeni(halId):
    print "Nové zařízení:", halId

def hOdebranoZarizeni(halId):
    print "Odebráno zařízení:", halId

bus   = dbus.SystemBus()
proxy = bus.get_object(SLUZBA, OBJEKT)
slHal = dbus.Interface(proxy, ROZHRANI)

slHal.connect_to_signal("DeviceAdded",   hNoveZarizeni)
slHal.connect_to_signal("DeviceRemoved", hOdebranoZarizeni)

gobject.MainLoop().run()
