i added a couple of lines that see if its not a number, but is a * it will return that.
thanks, not an asterisk issue, but a python issue.
shawn
On 8/14/06, Tzafrir Cohen <[EMAIL PROTECTED]> wrote:
On Mon, Aug 14, 2006 at 10:31:30AM -0400, shawn bright wrote:
> lo there,
> i am running a python agi script that gets a DTMF number from the user
> and passes it back to the script.
Any reason you're not using Read for this?
> It works fine with numbers, but if they
> enter a star (*), it doesn't want to play.
Could you please provide a trace of the run?
> Is there a difference in how this is handled?
> here is the snippit:
>
> def getNumber (sound, gTimeLimit, digit_count):
> """
> the asterisk function GET DATA
> (filename, timeout, maxdigits)
> plays audiofile filename,
> gets DTMF digits
> up to timeout or max digits
> """
> digit_count = int(digit_count)
> time_limit = int(gTimeLimit)
> sys.stderr.write("GET DATA %s %d %d\n" % (sound, time_limit,
> digit_count))
> sys.stderr.flush()
> sys.stdout.write("GET DATA %s %d %d\n" % (sound, time_limit,
> digit_count))
> sys.stdout.flush()
> result = sys.stdin.readline ().strip()
> result = checkResult(result)
> if result:
> return result
> else:
> sys.stderr.write('dead result from IVR')
> return 'error'
>
> def checkResult(params):
> """
> reads the result of an asterisk command
> parses the answer and reports
> whether or not the command is successful
> """
> params = params.rstrip()
> if re.search('^200',params):
Just a hunch:
How is '*' considered in a regular _expression_?
> result = re.search('result=(\d+)', params)
> if (not result):
> sys.stderr.write("FAIL ('%s')\n" % params)
> sys.stderr.flush()
> return -1
> else:
> result = result.group(1)
> sys.stderr.write('PASS (%s)\n' % result)
> sys.stderr.flush()
> return result
> else:
> sys.stderr.write("FAIL (unexpected result '%s')\n" % params)
> sys.stderr.flush()
> return -2
>
> menu_result = getNumber('menu', 5000, 1)
>
> any idea where i may be missing something here ?
> some of the code is from an example app that i found on the internet.
> There is something in this code ( i suppose ) that limits me from getting
> anything but an integer as a response from here
>
> if you have read this far, thanks for your time.
>
> shawn
> _______________________________________________
> --Bandwidth and Colocation provided by Easynews.com --
>
> asterisk-users mailing list
> To UNSUBSCRIBE or update options visit:
> http://lists.digium.com/mailman/listinfo/asterisk-users
--
Tzafrir Cohen sip:[EMAIL PROTECTED]
icq#16849755 iax:[EMAIL PROTECTED]
+972-50-7952406 jabber:[EMAIL PROTECTED]
[EMAIL PROTECTED] http://www.xorcom.com
_______________________________________________
--Bandwidth and Colocation provided by Easynews.com --
asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/asterisk-users
_______________________________________________ --Bandwidth and Colocation provided by Easynews.com --
asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users