mirror of git://git.sysmocom.de/ofono
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
1.2 KiB
43 lines
1.2 KiB
#!/usr/bin/python3
|
|
|
|
import sys
|
|
import dbus
|
|
|
|
bus = dbus.SystemBus()
|
|
|
|
manager = dbus.Interface(bus.get_object('org.ofono', '/'),
|
|
'org.ofono.Manager')
|
|
|
|
modems = manager.GetModems()
|
|
modem = modems[0][0]
|
|
|
|
if (len(sys.argv) == 2):
|
|
ss_code = sys.argv[1]
|
|
else:
|
|
modem = sys.argv[1]
|
|
ss_code = sys.argv[2]
|
|
|
|
ss = dbus.Interface(bus.get_object('org.ofono', modem),
|
|
'org.ofono.SupplementaryServices')
|
|
|
|
try:
|
|
ss_type, properties = ss.Initiate(ss_code, timeout=100)
|
|
except dbus.DBusException as e:
|
|
print("Unable to perform operation: %s" % e)
|
|
sys.exit(1);
|
|
|
|
if (ss_type == "CallBarring"):
|
|
print("%s : Operation [ %s ] Service Type [ %s ]" % (ss_type, properties[0], properties[1]))
|
|
for key in properties[2]:
|
|
print("%s : %s" % (key, properties[2][key]))
|
|
elif (ss_type == "CallForwarding"):
|
|
print("%s : Operation [ %s ] Service Type [ %s ]" % (ss_type, properties[0], properties[1]))
|
|
for key in properties[2]:
|
|
print("%s : %s" % (key, properties[2][key]))
|
|
elif (ss_type == "CallWaiting"):
|
|
print("%s : Operation [ %s ]" % (ss_type, properties[0]))
|
|
for key in properties[1]:
|
|
print("%s : %s" % (key, properties[1][key]))
|
|
else:
|
|
print("%s : Operation [ %s ] Status [ %s ]" % (ss_type, properties[0], properties[1]))
|