IVR-speak out an amount in word instead of individual digits

I want to build an IVR that, based on some input from the caller, retrieves an amount from a database and speak it out to the caller. How can I make asterisk speak out the amount in word instead of individual digits?
E.g. If amount is 12, Asterisk should say twelve, not one … two (which I get when using SayDigits).

Thanks

[code]show application SayNumber
asterisk*CLI>
-= Info about application ‘SayNumber’ =-

[Synopsis]
Say Number

[Description]
SayNumber(digits[,gender]): This application will play the sounds that
correspond to the given number. Optionally, a gender may be specified.
This will use the language that is currently set for the channel. See the
LANGUAGE function for more information on setting the language for the channel.
[/code]

Thanks Davevg. Works perfectly.