bkml wrote:
> as part of the conversion to property lists I will work on a voices &  
> prompts database.
> 
> This would look like the following ...
> 
> // voices in which recordings of prompts are available
> voices = {
>       Allison = {
>               fullname = "Allison Smith";
>               type = human;
>               gender = female;
>               locale = US-English;
>               // subdirectory within SOUNDS_DIR
>               subdirectory = allison;
>       };
> };

Please consider using the more widespread ISO639 two letter language 
codes to describe the locale, eg. en_US, instead of US-English. See 
http://www.loc.gov/standards/iso639-2/

> For example, a caller with a UK caller ID could automatically be  
> played all prompts in one of the available UK accents without having  
> to rewrite the dialplan. It would also make IVR scripting with  
> interleaved use of male and female voices easier.

This scheme would rely being able to accurately identify the geographic 
origin of a call, which in some cases may be presumptuous. I think at 
the moment it is simpler to just set the channel language variable. That 
in itself however, needs to be expanded from the current two letter 
language code to a full locale code.

> Even worse, the current code base only works within a rather narrow  
> concept of grammar. Languages which don't fit that concept cannot be  
> supported properly without architectural changes to the code base.

Yes, it is clear that Asterisk was never designed to be multilingual. 
 From what I've seen, additional code for regional differences has gone 
into apps like voicemail as hard-coded changes. This is not a scalable 
solution. Even just the different between English and German highlights 
the need for a more flexible phrase builder:

en: You have twenty four new messages.

de: Sie haben vier und zwanzig neue Nachrichten.

Note the difference in reading out numbers over 20 - "four and twenty" 
in German. Also, many languages other than English change the article, 
depending on the gender of the noun, and more importantly in our case, 
whether we are talking about a plural or not.

> Basically, the tenor was "This is not how Asterisk works, you will  
> have to get the Japanese language changed" paraphrasing OEJ.

Come on, be reasonable, see it my way ;-)

> So, yes, this needs to be sorted out, but it is not trivial, it will  
> require some serious work.

No, it is certainly not trivial to teach a computer about natural 
languages. Perhaps we should decide whether we attack this is two steps. 
Firstly, just implement slightly smarter handling of what is already in 
the code, by adding the locale support to the existing simple language 
support. Then, attempting to strip out hard-coded regional code, and 
express that somehow in a language template file similar to what you 
propose.
_______________________________________________
Openpbx-dev mailing list
[email protected]
http://lists.openpbx.org/mailman/listinfo/openpbx-dev

Reply via email to