2 # -*- coding: utf-8 -*-
8 from dbus.mainloop.glib import DBusGMainLoop
13 def ussd_released (message, str):
15 if not skip and len(message) != 0:
16 subprocess.Popen(["qussd", message])
20 def ussd_request (message, str):
23 subprocess.Popen(["qussd", message, "lock"])
27 class DBusListener(dbus.service.Object):
29 bus_name = dbus.service.BusName('su.kibergus.ussdd', bus=dbus.SystemBus())
30 dbus.service.Object.__init__(self, bus_name, '/su/kibergus/ussdd')
32 @dbus.service.method(dbus_interface='su.kibergus.ussdd')
38 @dbus.service.method(dbus_interface='su.kibergus.ussdd')
44 gobject.threads_init()
47 bus = dbus.SystemBus()
48 signal = bus.add_signal_receiver(ussd_released, path='/com/nokia/csd/ss', dbus_interface='com.nokia.csd.SS.USSD', signal_name='Released')
49 signal = bus.add_signal_receiver(ussd_request, path='/com/nokia/csd/ss', dbus_interface='com.nokia.csd.SS.USSD', signal_name='Request')
51 listener = DBusListener()
53 loop = gobject.MainLoop()