+++ /dev/null
-#!/usr/bin/python
-
-import gobject
-
-import dbus
-import dbus.mainloop.glib
-import sys
-
-def hangup_all():
- print "Hanging up"
- vcmanager.HangupAll()
-
-def print_calls():
- calls = vcmanager.GetCalls()
- if (len(calls) != 0):
- print "No calls available"
- else:
- for path, properties in calls:
- print " [ %s ]" % (path)
-
- for key in properties.keys():
- val = str(properties[key])
- print " %s = %s" % (key, val)
- print
-
-def voicecalls_call_added(path, properties):
- print " Voice Call [ %s ] Added" % (path)
-
- for key in properties.keys():
- val = str(properties[key])
- print " %s = %s" % (key, val)
- print
-
-def voicecalls_call_removed(path):
- print " Voice Call [ %s ] Removed" % (path)
-
-def voicecall_property_changed(name, value):
- print "Voicecall property: '%s' changed to '%s'" % (name, value)
-
-def voicecall_disconnect_reason(reason):
- print "Voicecall disconnect reason: '%s'" % (reason)
-
-if __name__ == "__main__":
- global vcmanager
-
- if (len(sys.argv) < 2):
- print "Usage: %s [modem] <number>" % (sys.argv[0])
- sys.exit(1)
-
- dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
-
- 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) == 3):
- modem = sys.argv[1]
- number = sys.argv[2]
- else:
- number = sys.argv[1]
- print "Using modem %s" % modem
-
- vcmanager = dbus.Interface(bus.get_object('org.ofono', modem),
- 'org.ofono.VoiceCallManager')
-
- vcmanager.connect_to_signal("CallAdded", voicecalls_call_added)
-
- vcmanager.connect_to_signal("CallRemoved", voicecalls_call_removed)
-
- print_calls()
-
- print "Dialing %s..." % number
- obj = vcmanager.Dial(number, "")
- print "Dialing in progress, got obj: %s" % (obj)
-
- call = dbus.Interface(bus.get_object('org.ofono', obj),
- 'org.ofono.VoiceCall')
-
- properties = call.GetProperties()
-
- print "State: %s, Number: %s" %\
- (properties['State'], properties['LineIdentification'])
-
- call.connect_to_signal("PropertyChanged", voicecall_property_changed)
- call.connect_to_signal("DisconnectReason", voicecall_disconnect_reason)
-
- gobject.timeout_add(1000000, hangup_all)
-
- mainloop = gobject.MainLoop()
- mainloop.run()