Home | History | Annotate | Download | only in test-scripts
      1 #!/usr/bin/python
      2 
      3 import gobject
      4 
      5 import dbus
      6 import dbus.mainloop.glib
      7 
      8 def property_changed(name, value, path, interface):
      9     iface = interface[interface.rfind(".") + 1:]
     10     ipath = path[path.rfind("/") + 1:]
     11     if iface not in ["Service"]:
     12         return
     13     if name in ["Profiles", "Services",
     14                 "Devices", "Networks"]:
     15         val = "["
     16         for i in value:
     17             val = val + " " + i[i.rfind("/") + 1:]
     18         val = val + " ]"
     19     elif name in ["Strength", "Priority"]:
     20         val = int(value)
     21     else:
     22         val = str(value)
     23     print "{%s} [%s] %s = %s" % (iface, ipath, name, val)
     24 
     25 if __name__ == '__main__':
     26     dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
     27 
     28     bus = dbus.SystemBus()
     29 
     30     bus.add_signal_receiver(property_changed,
     31                             bus_name="org.chromium.flimflam",
     32                             signal_name = "PropertyChanged",
     33                             path_keyword="path",
     34                             interface_keyword="interface")
     35 
     36     mainloop = gobject.MainLoop()
     37     mainloop.run()
     38