X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=qussd%2Fussdd.py;fp=qussd%2Fussdd.py;h=d1108db61d05cceddb94c30a1ceaf4e76f9a0fc9;hb=21e9b5bfd2668d64fcdfb92c2ce78e2857f6ca5f;hp=0000000000000000000000000000000000000000;hpb=4be74c18e2b127d8d8262c0a87dd17119916803e;p=ussd-widget diff --git a/qussd/ussdd.py b/qussd/ussdd.py new file mode 100755 index 0000000..d1108db --- /dev/null +++ b/qussd/ussdd.py @@ -0,0 +1,50 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- + +import subprocess +import dbus +import dbus.service +from dbus import glib +from dbus.mainloop.glib import DBusGMainLoop +import gobject + +skip = False; + +def ussd_released (message, str): + global skip + if not skip: + subprocess.Popen(["qussd", message]) + skip = False + return True + +def ussd_request (message, str): + global skip + if not skip: + subprocess.Popen(["qussd", message, "lock"]) + skip = False + return True + +class DBusListener(dbus.service.Object): + def __init__(self): + bus_name = dbus.service.BusName('su.kibergus.ussdd', bus=dbus.SystemBus()) + dbus.service.Object.__init__(self, bus_name, '/su/kibergus/ussdd') + + @dbus.service.method(dbus_interface='su.kibergus.ussdd') + def skip_next (self): + print "TEST" + global skip + skip = True + return True + +gobject.threads_init() +glib.init_threads() + +bus = dbus.SystemBus() +signal = bus.add_signal_receiver(ussd_released, path='/com/nokia/csd/ss', dbus_interface='com.nokia.csd.SS.USSD', signal_name='Released') +signal = bus.add_signal_receiver(ussd_request, path='/com/nokia/csd/ss', dbus_interface='com.nokia.csd.SS.USSD', signal_name='Request') + +listener = DBusListener() + +loop = gobject.MainLoop() +loop.run() +