VoiceGuide IVR Software Main Page
Jump to content

Question about Say Number

Recommended Posts

    144759.141|state|[DOB] Say Numbers: 05/15/1970 as Date - MMDDYYYY|||||0|0|0|0


The play back was saying May 15 one thousand nine hundred Seventy.

What should I do for system to play back as May 15 Nineteen Seventy

Share this post

Link to post

Fastest way to change the way the numbers/times/dates are played out is to change VoiceGuide's to use the lib_num2wav.vbs file to speak out the date. This involves changing the VoiceGuide config to stop it from using the 'DLL' and start using the 'VBScript' method.

Attaching a new lib_num2wav.vbs that plays out the 4 digit year correctly. Please unzip attached file and put the .VBS in C:\Program Files (x86)\VoiceGuide\System\vbs

(backup the original lib_num2wav.vbs there first)


The other approach is to modify VoiceGuide's DLL : vgLib_SayNumbers.dll

Source code for vgLib_SayNumbers.dll is provided with VoiceGuide install so this can be done by users if required, but we will make this modification for you and post if here later today.


from https://www.voiceguide.com/vghelp/source/html/modsaynumber.htm :

Changing the way Say Number module speaks numbers

Users can edit the way in which the numbers are spoken, or even add their own Say Number functions.

In VoiceGuide v7 a DLL file is used to generate the list of WAV files needed to speak the number.

The DLL is called vgLib_SayNumbers.dll and is located in VoiceGuide's \system\dll\ subdirectory.

The source code (in C#) and full MS Visual Studio project file required to build the DLL can be found in this VoiceGuide subdirectory: \system\dll\Source\vgLib_SayNumbers.

After building the new DLL just place it in VoiceGuide's \system\dll\ subdirectory and restart VoiceGuide in order for VoiceGuide to start using the new DLL.


In VoiceGuide v7 you can also select to have the system use the lib_num2wav.vbs to generate the spoken number by changing the VG.INI file setting.

In VG.INI, section [moduleSayNumbers], change the entry WavListGenerator from DLL to VBScript.


Share this post

Link to post

I first tried to replace DLL and it doesn't work. After DLL replaced, the Say Numbers module wasn't played the voice file that I have in the script.

I also try to use lib_num2wav.vbs and it doesn't work neither. It did play the correct format but Say Numbers module and Get Numbers module were not working correctly. 

When I try to open the DLL project in VS2019. I had referenced component vgServucesInterfaces could not be found.

Share this post

Link to post

Please post the "vgEngine" traces files from your system. We can then see what happened and advise.

The vgEngine traces are created in VoiceGuide's \log\ subdirectory.

Please .ZIP up the traces before posting.

Share this post

Link to post

Also can you please expand on this:


It did play the correct format but Say Numbers module and Get Numbers module were not working correctly. 

What was not working correctly? the provided DLL/VBS only affects the Say Number module. Functionality of Get Numbers module remains as was.

Share this post

Link to post

The trace that uses the DLL to speak out the date seems to show that the system is still be using the old DLL...

Did you overwrite the old DLL in VoiceGuide's \system\dll\ subdirectory with the new one?

Please try with attached DLL. This new DLL has the trace messages generated by it changed. This will let us confirm that the correct DLL is used by looking at vgEngine trace.

Please unzip the attached DLL and place it in VoiceGuide's \system\dll\ subdirectory, overwriting existing DLL

MD5 checksum for attached DLL is: eb72f3d036e73f9ace443c40881b4beb 


Share this post

Link to post

The new DLL is now being used, but looks like you are using an older Version of VoiceGuide.

Please update to current VoiceGuide (v7.6.40) and then overwrite DLL again (as installer will install own DLL) and then restart VoiceGuide and try call again.

Play sound is now failing because new DLL needs  'vgServicesInterfaces, Version=7.6.8039.29759 - which comes with v7.6.40

Current version of vgServicesInterfaces on your system is: 7.6.7892.24207 and we can see that you have v7.6.39 installed.

Share this post

Link to post

After upgrade to v7.6.40 and replaced say number DLL you provided, everything is working OK now.



Share this post

Link to post

Here is a link to full installer that includes the new SayNumbers DLL

[link removed - this change is now in VoiceGuide v7.6.41 onwards]

To change to a different version of VoiceGuide:

  1. Stop VoiceGuide Service. VoiceGuide can be stopped by clicking on the VoiceGuide Service Monitor in the Windows's Icon Tray on bottom right of the taskbar and selecting "Stop".
  2. Exit all VoiceGuide programs. This  includes the Service Monitor applet in the Icon Tray area in bottom right of the screen,  as well as the Script Designer, Line Status Monitor, etc.
  3. Do NOT uninstall the previous VoiceGuide installation.
  4. Run the VoiceGuide install and install into same directory as existing installation.
  5. Start VoiceGuide service.

Note: Running a VoiceGuide install over the top of an existing install will NOT overwrite existing configuration or license files (Config.xml, ConfigLine.xml, VG.INI, etc) and will not remove any of users script or sound files, and will not remove any log files etc.

Edited by SupportTeam
link removed

Share this post

Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now