| #!/usr/bin/python3 |
| |
| import sys |
| import dbus |
| |
| if len(sys.argv) < 4: |
| print("Usage: set-context-property <context> <name> <value>") |
| 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) |