#!/usr/bin/python3 import dbus bus = dbus.SystemBus() manager = dbus.Interface(bus.get_object('org.ofono', '/'), 'org.ofono.Manager') modems = manager.GetModems() for path, properties in modems: print("[ %s ]" % (path)) if "org.ofono.VoiceCallManager" not in properties["Interfaces"]: continue mgr = dbus.Interface(bus.get_object('org.ofono', path), 'org.ofono.VoiceCallManager') calls = mgr.GetCalls() for path, properties in calls: state = properties["State"] print("[ %s ] %s" % (path, state)) if state != "incoming": continue call = dbus.Interface(bus.get_object('org.ofono', path), 'org.ofono.VoiceCall') call.Hangup()