mirror of git://git.sysmocom.de/ofono
40 lines
1.0 KiB
Python
Executable File
40 lines
1.0 KiB
Python
Executable File
#!/usr/bin/python3
|
|
|
|
import dbus
|
|
import sys
|
|
|
|
bus = dbus.SystemBus()
|
|
|
|
if len(sys.argv) == 4:
|
|
path = sys.argv[1]
|
|
mcc = sys.argv[2]
|
|
mnc = sys.argv[3]
|
|
elif len(sys.argv) == 3:
|
|
manager = dbus.Interface(bus.get_object('org.ofono', '/'),
|
|
'org.ofono.Manager')
|
|
modems = manager.GetModems()
|
|
path = modems[0][0]
|
|
mcc = sys.argv[1]
|
|
mnc = sys.argv[2]
|
|
else:
|
|
print("%s [path] <mcc> <mnc>" % (sys.argv[0]))
|
|
sys.exit(0)
|
|
|
|
netreg = dbus.Interface(bus.get_object('org.ofono', path),
|
|
'org.ofono.NetworkRegistration')
|
|
|
|
operators = netreg.GetOperators()
|
|
for path, properties in operators:
|
|
if properties['MobileCountryCode'] != mcc:
|
|
continue
|
|
|
|
if properties['MobileNetworkCode'] != mnc:
|
|
continue
|
|
|
|
operator = dbus.Interface(bus.get_object('org.ofono', path),
|
|
'org.ofono.NetworkOperator')
|
|
operator.Register()
|
|
sys.exit(0)
|
|
|
|
print("No operator matching mcc: %s, mnc: %s found" % (mcc, mnc))
|