#!/usr/bin/python3 import sys import dbus if len(sys.argv) < 4: print("Usage: set-context-property ") sys.exit(1) bus = dbus.SystemBus() manager = dbus.Interface(bus.get_object('org.ofono', '/'), 'org.ofono.Manager') modems = manager.GetModems() for path, properties in modems: if "org.ofono.ConnectionManager" not in properties["Interfaces"]: continue connman = dbus.Interface(bus.get_object('org.ofono', path), 'org.ofono.ConnectionManager') contexts = connman.GetContexts() if (len(contexts) == 0): print("No context available") sys.exit(1) path = contexts[int(sys.argv[1])][0] context = dbus.Interface(bus.get_object('org.ofono', path), 'org.ofono.ConnectionContext') try: context.SetProperty(sys.argv[2], sys.argv[3]) except dbus.DBusException as e: print("Error setting context %s property %s: %s" %\ (path, sys.argv[2], str(e))) exit(2)