diff options
author | Guido Günther <agx@sigxcpu.org> | 2011-01-14 12:56:24 -0600 |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2011-01-14 12:56:52 -0600 |
commit | 7613b46b5009b15efeeced5d0df043576beafbf8 (patch) | |
tree | 5e7ef05b834d4612e650843c8e498c7a45fa283a | |
parent | d44ae44558b9d1da289372e8593263c7d2b025c8 (diff) |
test: handle cancel and distinguish between initiate and respond (bgo #638038)
-rwxr-xr-x[-rw-r--r--] | test/ussd.py | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/test/ussd.py b/test/ussd.py index 332cc172..2040f12e 100644..100755 --- a/test/ussd.py +++ b/test/ussd.py @@ -15,7 +15,7 @@ # # Usage: ./test/ussd.py /org/freedesktop/ModemManager/Modems/0 '*130#' -import sys, dbus +import sys, dbus, re MM_DBUS_SERVICE='org.freedesktop.ModemManager' MM_DBUS_INTERFACE_USSD='org.freedesktop.ModemManager.Modem.Gsm.Ussd' @@ -23,5 +23,22 @@ MM_DBUS_INTERFACE_USSD='org.freedesktop.ModemManager.Modem.Gsm.Ussd' bus = dbus.SystemBus() proxy = bus.get_object(MM_DBUS_SERVICE, sys.argv[1]) modem = dbus.Interface(proxy, dbus_interface=MM_DBUS_INTERFACE_USSD) -ret = modem.Initiate (sys.argv[2]) + +if len(sys.argv) != 3: + print "Usage: %s dbus_object ussd" + sys.exit(1) +else: + arg = sys.argv[2] + +# For testing purposes treat all "common" USSD sequences as initiate and the +# rest (except for cancel) as response. See GSM 02.90. +initiate_re = re.compile('[*#]{1,3}1[0-9][0-9].*#') + +if initiate_re.match(arg): + ret = modem.Initiate(arg) +elif arg == "cancel": + ret = modem.Cancel() +else: + ret = modem.Respond(arg) print ret + |