|
#!/usr/bin/python |
|
|
|
import dbus |
|
|
|
def extract_values(values): |
|
val = "{" |
|
for key in values.keys(): |
|
val += " " + key + "=" |
|
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('net.connman', '/'), |
|
'net.connman.Manager') |
|
|
|
services = manager.GetServices() |
|
|
|
for entry in services: |
|
path = entry[0] |
|
properties = entry[1] |
|
|
|
print "[ %s ]" % (path) |
|
|
|
for key in properties.keys(): |
|
if 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 ["Favorite", "Immutable", "AutoConnect", |
|
"PassphraseRequired"]: |
|
if properties[key] == dbus.Boolean(1): |
|
val = "true" |
|
else: |
|
val = "false" |
|
elif key in ["Strength"]: |
|
val = int(properties[key]) |
|
else: |
|
val = str(properties[key]) |
|
print " %s = %s" % (key, val) |
|
|
|
print |