manager = dbus.Interface(bus.get_object("org.moblin.connman", "/"),
"org.moblin.connman.Manager")
-elements = manager.ListElements()
-
-for path in elements:
- element = dbus.Interface(bus.get_object("org.moblin.connman", path),
- "org.moblin.connman.Element")
-
- try:
- properties = element.GetProperties()
- if (properties["Type"] != "network"):
- continue
-
- if (properties["Enabled"] == dbus.Boolean(1)):
- print "Disabling %s" % (path)
- element.Disable()
- except:
- pass
+properties = manager.GetProperties()
+
+for path in properties["Devices"]:
+ device = dbus.Interface(bus.get_object("org.moblin.connman", path),
+ "org.moblin.connman.Device")
+
+ properties = device.GetProperties()
+
+ print "[ %s ]" % (path)
+
+ for path in properties["Networks"]:
+ network = dbus.Interface(bus.get_object("org.moblin.connman", path),
+ "org.moblin.connman.Network")
+
+ properties = network.GetProperties()
+
+ if (properties["Connected"] == dbus.Boolean(1)):
+ print "Disconnecting %s" % (path)
+ network.Disconnect()
manager = dbus.Interface(bus.get_object("org.moblin.connman", "/"),
"org.moblin.connman.Manager")
-elements = manager.ListElements()
+properties = manager.GetProperties()
-for path in elements:
- element = dbus.Interface(bus.get_object("org.moblin.connman", path),
- "org.moblin.connman.Element")
+for path in properties["Devices"]:
+ device = dbus.Interface(bus.get_object("org.moblin.connman", path),
+ "org.moblin.connman.Device")
- properties = element.GetProperties()
- if (properties["Type"] != "network"):
- continue
+ properties = device.GetProperties()
- if (properties["Enabled"] == dbus.Boolean(1)):
- continue
+ print "[ %s ]" % (path)
- if (properties["WiFi.Name"] == sys.argv[1]):
- print "Enabling %s" % (path)
- element.Enable()
+ for path in properties["Networks"]:
+ network = dbus.Interface(bus.get_object("org.moblin.connman", path),
+ "org.moblin.connman.Network")
+
+ properties = network.GetProperties()
+
+ if (properties["Connected"] == dbus.Boolean(1)):
+ continue
+
+ if (properties["WiFi.Name"] == sys.argv[1]):
+ print "Connecting %s" % (path)
+ network.Connect()