2014-03-11 16:39:22 +00:00
|
|
|
#!/usr/bin/python3
|
2010-09-28 23:08:09 +00:00
|
|
|
|
|
|
|
import sys
|
|
|
|
import dbus
|
|
|
|
|
|
|
|
bus = dbus.SystemBus()
|
|
|
|
|
|
|
|
manager = dbus.Interface(bus.get_object('org.ofono', '/'),
|
|
|
|
'org.ofono.Manager')
|
|
|
|
|
2014-06-10 08:27:16 +00:00
|
|
|
if (len(sys.argv) == 1):
|
|
|
|
modems = manager.GetModems()
|
|
|
|
path = modems[0][0]
|
|
|
|
elif (len(sys.argv) == 2):
|
|
|
|
path = sys.argv[1]
|
|
|
|
else:
|
|
|
|
print("Usage: %s [modem]" % (sys.argv[0]))
|
|
|
|
sys.exit(1)
|
2010-09-28 23:08:09 +00:00
|
|
|
|
|
|
|
manager = dbus.Interface(bus.get_object('org.ofono', path),
|
|
|
|
'org.ofono.VoiceCallManager')
|
|
|
|
|
|
|
|
calls = manager.GetCalls()
|
|
|
|
|
2011-02-03 13:14:08 +00:00
|
|
|
for path, properties in calls:
|
|
|
|
state = properties["State"]
|
2014-03-11 16:39:18 +00:00
|
|
|
print("[ %s ] %s" % (path, state))
|
2011-02-03 13:14:08 +00:00
|
|
|
|
|
|
|
if state != "active":
|
|
|
|
continue
|
|
|
|
|
|
|
|
call = dbus.Interface(bus.get_object('org.ofono', path),
|
2010-09-28 23:08:09 +00:00
|
|
|
'org.ofono.VoiceCall')
|
|
|
|
|
2011-02-03 13:14:08 +00:00
|
|
|
call.Hangup()
|