Guest DanaV Report post Posted 11/30/2011 10:44 PM Hello! We have found that some of our clients are entering the star * key as a decimal point when inputting their sale amount. What this is doing is converting the number they expect to a different number entirely. For numbers 4 digits or less it is only registering cents. For numbers 5 digits or more, the amount is being converted to thousands and ignoring the 2 digits prior to the *. For example: 1*23 becomes $0.23 12*34 becomes $0.34 123*45 becomes $1000.45 1234*56 becomes $12000.56 12345*67 becomes $123000.67 If they do not enter the * key, the results are as expected. 123 becomes $1.23 1234 becomes $12.34 etc... Thanks for your help! Dana Share this post Link to post
SupportTeam Report post Posted 12/01/2011 09:21 AM Are you using VoiceGuide IVR software, or some other package? VoiceGuide allows the entering of * during a 'Get Numbers' type module, but this does not automatically result in VoiceGuide regarding that as a decimal point and converting the entered number to a 'dollars and cents' amount. If your system does such conversion it would be done by your script, and not by VoiceGuide system. If you are using VoiceGuide then we can have a quick look at the script for you and we may be able to help with debugging it for you, but you would need to post the script file here so that we may look at it. Share this post Link to post
Guest DanaV Report post Posted 12/01/2011 05:50 PM Thanks for your reply. I am using VoiceGuide ver 6.0.3391. I have attached the script as a zip file. Thanks again!Credit Card Payment.zip Share this post Link to post
Guest DanaV Report post Posted 12/01/2011 05:51 PM It would be ideal to ignore the star key altogether, if possible. Thanks. Share this post Link to post
SupportTeam Report post Posted 12/01/2011 09:22 PM Can you please post the vgEngine trace that captures the problem. Are the amounts just spoken back (in module "SayAmount") incorrectly when * key is used? Or are they only incorrect when the data saved (using your stored procedure in module "RunTransaction") in the database is viewed? Or both? We would be able to make a modification to VoiceGuide v7 to have the "Get Numbers" module ignore the * key altogether. Share this post Link to post
Guest DanaV Report post Posted 12/02/2011 11:54 PM Thanks again for your reply. The amount is spoken back incorrectly, and then the amount is specified as invalid, so the transaction never runs. I have attached the log file as a zip which captures this in a single call. Thanks for your attention! Dana 1202vgm.zip Share this post Link to post
Guest DanaV Report post Posted 12/03/2011 12:22 AM Also please note that we are using ver 6.0.3391 with Dialogic card D4PCI-U. Are we forced to upgrade to v7 (so that we can accept your fix to ignore the start key?). Would our same script continue to work? I have re-attached it for your convenience. Would we have to purchase a new license to upgrade to 7? Thanks! Dana Credit Card Payment.zip Share this post Link to post
SupportTeam Report post Posted 12/03/2011 04:34 AM In v6 the Say Number module uses a script to generate the string of WAV files that need to be spoken. That script is modifiable. Please see attached to this post the version that deletes * characters from input before speaking the number. Unzip the attached file and place the unzipped file in VoiceGuide's \System\vbs\ subdirectory. (you may want to rename existing file first, as a backup). NB. in v7 the Say Number module uses a DLL, and source code to DLL is provided with VoiceGuide v7, letting you edit and re-compile that DLL. lib_num2wav.zip Share this post Link to post
Guest DanaV Report post Posted 12/03/2011 05:31 AM I am sorry, but it still registers the entered amount as invalid, although the * IS being ignored, which is a good step in the right direction (amount entered as 12*34 is played back as $12.34). If I run the transaction without the * key (1234) the transaction goes through. Any more help would be greatly appreciated. This is a vital issue for us. Thank you again! Dana Share this post Link to post
SupportTeam Report post Posted 12/03/2011 06:12 AM Can you elaborate on what "still registers the entered amount as invalid". Are you referring to the database stored procedure "usp_IVRManualtransaction" called from within the "RunTransaction" module? You can just modify your VBScript module there to remove all * characters from the entered number $RV. change this line in the "RunTransaction" module: BarterAmount="$RV[GetBarterAmount]" to: BarterAmount=replace("$RV[GetBarterAmount]", "*", "") Share this post Link to post
Guest DanaV Report post Posted 12/05/2011 04:35 PM GREAT! This seems to be working for us now. Really appreciate all your help! Thanks again! Dana Share this post Link to post