#!/usr/bin/python3 import dbus import sys 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)) if "org.ofono.NetworkRegistration" not in properties["Interfaces"]: continue netreg = dbus.Interface(bus.get_object('org.ofono', path), 'org.ofono.NetworkRegistration') if len(sys.argv) == 2 and sys.argv[1] == 'scan': operators = netreg.Scan() else: operators = netreg.GetOperators() for path, properties in operators: print(" [ %s ]" % (path)) for key in properties.keys(): if key in ["Technologies"]: val = "" for i in properties[key]: val += i + " " else: val = str(properties[key]) print(" %s = %s" % (key, val)) print('')