mirror of git://git.sysmocom.de/ofono
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
84 lines
1.9 KiB
84 lines
1.9 KiB
#!/usr/bin/python3
|
|
|
|
import dbus
|
|
|
|
bus = dbus.SystemBus()
|
|
|
|
manager = dbus.Interface(bus.get_object('org.ofono', '/'),
|
|
'org.ofono.Manager')
|
|
|
|
modems = manager.GetModems()
|
|
|
|
for path, properties in modems:
|
|
print("[ %s ]" % (path))
|
|
|
|
for key in properties.keys():
|
|
if key in ["Interfaces", "Features"]:
|
|
val = ""
|
|
for i in properties[key]:
|
|
val += i + " "
|
|
else:
|
|
val = properties[key]
|
|
print(" %s = %s" % (key, val))
|
|
|
|
for interface in properties["Interfaces"]:
|
|
object = dbus.Interface(bus.get_object('org.ofono', path),
|
|
interface)
|
|
|
|
print(" [ %s ]" % (interface))
|
|
|
|
try:
|
|
properties = object.GetProperties()
|
|
except:
|
|
continue
|
|
|
|
for key in properties.keys():
|
|
if key in ["Calls",
|
|
"MultipartyCalls",
|
|
"EmergencyNumbers",
|
|
"SubscriberNumbers",
|
|
"PreferredLanguages",
|
|
"PrimaryContexts",
|
|
"LockedPins",
|
|
"Features",
|
|
"AvailableTechnologies"]:
|
|
val = ""
|
|
for i in properties[key]:
|
|
val += i + " "
|
|
elif key in ["ServiceNumbers"]:
|
|
val = ""
|
|
for i in properties[key]:
|
|
val += "[" + i + "] = '"
|
|
val += properties[key][i] + "' "
|
|
elif key in ["MobileNetworkCodeLength",
|
|
"VoicemailMessageCount",
|
|
"MicrophoneVolume",
|
|
"SpeakerVolume",
|
|
"Strength",
|
|
"DataStrength",
|
|
"BatteryChargeLevel"]:
|
|
val = int(properties[key])
|
|
elif key in ["MainMenu"]:
|
|
val = ", ".join([ text + " (" + str(int(icon)) +
|
|
")" for text, icon in properties[key] ])
|
|
elif key in ["Retries"]:
|
|
val = ""
|
|
for i in properties[key]:
|
|
val += "[" + i + " = "
|
|
val += str(int(properties[key][i])) + "] "
|
|
elif key in ["Settings"]:
|
|
val = "{"
|
|
for i in properties[key].keys():
|
|
val += " " + i + "="
|
|
if i in ["DomainNameServers"]:
|
|
for n in properties[key][i]:
|
|
val += n + ","
|
|
else:
|
|
val += properties[key][i]
|
|
val += " }"
|
|
else:
|
|
val = properties[key]
|
|
print(" %s = %s" % (key, val))
|
|
|
|
print('')
|