#!/usr/bin/python import dbus bus = dbus.SystemBus() manager = dbus.Interface(bus.get_object('org.ofono', '/'), 'org.ofono.Manager') properties = manager.GetProperties() for path in properties["Modems"]: modem = dbus.Interface(bus.get_object('org.ofono', path), 'org.ofono.Modem') properties = modem.GetProperties() print "[ %s ]" % (path) for key in properties.keys(): if key in ["Interfaces"]: val = "" for i in properties[key]: val += i + " " else: val = str(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 ["AvailableOperators", "Calls", "MultipartyCalls", "EmergencyNumbers", "SubscriberNumbers", "ServiceDiallingNumbers", "PreferredLanguages", "LockedPins"]: val = "" for i in properties[key]: val += i + " " elif key in ["MobileNetworkCodeLength", "VoicemailMessageCount"]: val = int(properties[key]) else: val = str(properties[key]) print " %s = %s" % (key, val) print