import dbus
+def extract_values(values):
+ val = "{"
+ for key in values.keys():
+ val += " " + key + "="
+ if key in ["PrefixLength"]:
+ val += "%s" % (int(values[key]))
+ else:
+ if key in ["Servers", "Excludes"]:
+ val += extract_list(values[key])
+ else:
+ val += str(values[key])
+ val += " }"
+ return val
+
+def extract_list(list):
+ val = "["
+ for i in list:
+ val += " " + str(i)
+ val += " ]"
+ return val
+
bus = dbus.SystemBus()
-manager = dbus.Interface(bus.get_object("org.moblin.connman", "/"),
- "org.moblin.connman.Manager")
+manager = dbus.Interface(bus.get_object("net.connman", "/"),
+ "net.connman.Manager")
properties = manager.GetProperties()
-def print_properties(key, value):
- if key == "Profiles":
- interface = "org.moblin.connman.Profile"
- elif key == "Devices":
- interface = "org.moblin.connman.Device"
- elif key == "Connections":
- interface = "org.moblin.connman.Connection"
- elif key == "Services":
- interface = "org.moblin.connman.Service"
- else:
- return
-
- print "%s" % (key)
- for path in value:
- print " %s" % (path)
- obj = dbus.Interface(bus.get_object("org.moblin.connman", path),
- interface)
-
- properties = obj.GetProperties()
-
- for key in properties.keys():
- if key in ["Networks", "Services"]:
- continue
-
- if key in ["Powered", "Scanning", "Connected",
- "Available", "Remember", "Default"]:
- if properties[key] == dbus.Boolean(1):
- val = "true"
- else:
- val = "false"
- elif key in ["Strength", "Priority"]:
- val = int(properties[key])
- else:
- val = str(properties[key])
-
- print " %s = %s" % (key, val)
-
- if "Networks" in properties.keys():
- list = ""
- for path in properties["Networks"]:
- val = str(path)
- list = list + val[val.rfind("/") + 1:] + " "
- print " Networks = [ %s]" % (list)
- if "Services" in properties.keys():
- list = ""
- for path in properties["Services"]:
- val = str(path)
- list = list + val[val.rfind("/") + 1:] + " "
- print " Services = [ %s]" % (list)
- if "Technologies" in properties.keys():
- list = ""
- for val in properties["Technologies"]:
- list = list + val + " "
- print " Technologies = [ %s]" % (list)
-
for key in properties.keys():
- if key in ["Profiles", "Devices", "Connections", "Services"]:
- print_properties(key, properties[key])
- elif key in ["Technologies", "EnabledTechnologies"]:
- print "%s" % (key)
- list = ""
- for val in properties[key]:
- list = list + val + " "
- print " [ %s]" % (list)
- elif key in ["OfflineMode"]:
+ if key in ["OfflineMode", "SessionMode"]:
print "%s" % (key)
if properties[key] == dbus.Boolean(1):
print " true"
else:
print "%s" % (key)
print " %s" % (properties[key])
+
+print ("Services")
+services = manager.GetServices()
+
+for (path, properties) in services:
+ print " %s" % (path)
+ for key in properties.keys():
+ if key in ["Available", "Remember", "Default",
+ "Favorite", "Immutable", "AutoConnect",
+ "LoginRequired",
+ "PassphraseRequired"]:
+ if properties[key] == dbus.Boolean(1):
+ val = "true"
+ else:
+ val = "false"
+
+ elif key in ["IPv4", "IPv4.Configuration",
+ "IPv6", "IPv6.Configuration",
+ "Proxy", "Proxy.Configuration",
+ "Ethernet", "Provider"]:
+ val = extract_values(properties[key])
+
+ elif key in ["Nameservers", "Nameservers.Configuration",
+ "Domains", "Domains.Configuration",
+ "Security"]:
+ val = extract_list(properties[key])
+
+ elif key in ["Strength", "Priority"]:
+ val = int(properties[key])
+
+ else:
+ val = str(properties[key])
+
+ print " %s = %s" % (key, val)
+
+print ("Technologies")
+technologies = manager.GetTechnologies()
+
+for (path, properties) in technologies:
+ print " %s" % (path)
+ for key in properties.keys():
+
+ if key in ["Connected", "Powered", "Tethering"]:
+ if properties[key] == dbus.Boolean(1):
+ val = "true"
+ else:
+ val = "false"
+ else:
+ val = properties[key]
+
+ print " %s = %s" % (key, val)