#!/usr/bin/python import sys 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() if "org.ofono.DataConnectionManager" not in properties["Interfaces"]: continue connmgr = dbus.Interface(bus.get_object('org.ofono', path), 'org.ofono.DataConnectionManager') properties = connmgr.GetProperties() if (properties["PrimaryContexts"] == []): path = connmgr.CreateContext("Internet access", "internet") else: path = properties["PrimaryContexts"][0] context = dbus.Interface(bus.get_object('org.ofono', path), 'org.ofono.PrimaryDataContext') try: context.SetProperty("AccessPointName", sys.argv[1]) except IndexError: print "Usage: %s " % sys.argv[0] exit(1) print "Setting APN of %s to %s" % (path, sys.argv[1])