[Asterisk-Dev] say.c Support for Urdu
Atif Rasheed
atif at iphonica.com
Wed Jul 13 06:29:42 MST 2005
if its listed on iso639-1 and iso639-2 page, it must have the code.
Roy Sigurd Karlsbakk wrote:
> does that have an iso code as well?
>
> Den 13. jul. 2005 kl. 13.17 skrev Atif Rasheed:
>
>> well its Pakistani Urdu. I am not sure about Punjabi Grammar and
>> pronunciation, but we will be able to add that also
>>
>>
>> Roy Sigurd Karlsbakk wrote:
>>
>>
>>> is there only one ur language, or do you have variants like
>>> pakistani punjabi etc? if so, perhaps it could be nice to specify...
>>>
>>>
>>> Den 13. jul. 2005 kl. 11.54 skrev Atif Rasheed:
>>>
>>>
>>>> I have used urdu to test this change, but according to 639-1 its
>>>> "ur", so we will be using "ur".
>>>> I am signing disclaimer, after that I will submit the patch to
>>>> bugs.digium.com.
>>>>
>>>>
>>>>
>>>>> What's the language code for Urdu? "ur"? "urd"?
>>>>>
>>>>> http://www.loc.gov/standards/iso639-2/englangn.html#uvwxyz
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>> return(ast_say_number_full_urdu(chan, num, ints, language,
>>>>>>>
>>>>>>>
>>>>>> audiofd, ctrlfd));
>>>>>>
>>>>>>
>>>>>> /*---- Urdu sound files needed for Time/Date functions:
>>>>>> minute
>>>>>> second
>>>>>> ---- Urdu sound files needed for Currency:
>>>>>> Rupay
>>>>>> Rupia
>>>>>> Paisa
>>>>>> Paisay
>>>>>> /*
>>>>>>
>>>>>> /*--- ast_say_number_full_urdu: Urdu syntax */
>>>>>> /*--- Urdu syntax is little different, so we will require alot
>>>>>> of extra files. from 0 - 99 */
>>>>>> static int ast_say_number_full_urdu(struct ast_channel *chan,
>>>>>> int num, char *ints, char *language, int audiofd, int ctrlfd)
>>>>>> {
>>>>>> int res = 0;
>>>>>> int playh = 0;
>>>>>> char fn[256] = "";
>>>>>> if (!num)
>>>>>> return ast_say_digits_full(chan, 0,ints,
>>>>>> language, audiofd, ctrlfd);
>>>>>>
>>>>>> while(!res && (num || playh)) {
>>>>>> if (playh) {
>>>>>> snprintf(fn, sizeof(fn), "digits/
>>>>>> hundred");
>>>>>> playh = 0;
>>>>>> } else if (num < 100) {
>>>>>> snprintf(fn, sizeof(fn), "digits/ %
>>>>>> d", num);
>>>>>> num = 0;
>>>>>> } else {
>>>>>> if (num < 1000){
>>>>>> snprintf(fn, sizeof(fn),
>>>>>> "digits/%d", (num/100));
>>>>>> playh++;
>>>>>> num -= ((num / 100) * 100);
>>>>>> } else {
>>>>>> if (num < 1000000) { /*
>>>>>> 1,000,000 */
>>>>>> res =
>>>>>> ast_say_number_full_en(chan, num / 1000, ints, language,
>>>>>> audiofd, ctrlfd);
>>>>>> if (res)
>>>>>> return res;
>>>>>> num = num % 1000;
>>>>>> snprintf(fn,
>>>>>> sizeof (fn), "digits/thousand");
>>>>>> } else {
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> Is it just me, or the part below is replicated in too many
>>>>> functions?
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>> if (num <
>>>>>> 1000000000) { /* 1,000,000,000 */
>>>>>> res =
>>>>>> ast_say_number_full_en(chan, num / 1000000, ints, language,
>>>>>> audiofd, ctrlfd);
>>>>>> if (res)
>>>>>>
>>>>>> return res;
>>>>>> num = num
>>>>>> % 1000000;
>>>>>> snprintf
>>>>>> (fn, sizeof(fn), "digits/million");
>>>>>> } else {
>>>>>> ast_log
>>>>>> (LOG_DEBUG, "Number '%d' is too big for me\n", num);
>>>>>> res = -1;
>>>>>> }
>>>>>> }
>>>>>> }
>>>>>> }
>>>>>> if (!res) {
>>>>>> if(!ast_streamfile(chan, fn,
>>>>>> language)) {
>>>>>> if ((audiofd > -1) &&
>>>>>> (ctrlfd > -1))
>>>>>> res =
>>>>>> ast_waitstream_full(chan, ints, audiofd, ctrlfd);
>>>>>> else
>>>>>> res =
>>>>>> ast_waitstream (chan, ints);
>>>>>> }
>>>>>> ast_stopstream(chan);
>>>>>> }
>>>>>> }
>>>>>> return res;
>>>>>> }
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> Asterisk-Dev mailing list
>>>> Asterisk-Dev at lists.digium.com
>>>> http://lists.digium.com/mailman/listinfo/asterisk-dev
>>>> To UNSUBSCRIBE or update options visit:
>>>> http://lists.digium.com/mailman/listinfo/asterisk-dev
>>>>
>>>>
>>>>
>>>
>>> _______________________________________________
>>> Asterisk-Dev mailing list
>>> Asterisk-Dev at lists.digium.com
>>> http://lists.digium.com/mailman/listinfo/asterisk-dev
>>> To UNSUBSCRIBE or update options visit:
>>> http://lists.digium.com/mailman/listinfo/asterisk-dev
>>>
>>>
>>>
>>>
>>
>> _______________________________________________
>> Asterisk-Dev mailing list
>> Asterisk-Dev at lists.digium.com
>> http://lists.digium.com/mailman/listinfo/asterisk-dev
>> To UNSUBSCRIBE or update options visit:
>> http://lists.digium.com/mailman/listinfo/asterisk-dev
>>
>>
>
> _______________________________________________
> Asterisk-Dev mailing list
> Asterisk-Dev at lists.digium.com
> http://lists.digium.com/mailman/listinfo/asterisk-dev
> To UNSUBSCRIBE or update options visit:
> http://lists.digium.com/mailman/listinfo/asterisk-dev
>
>
>
More information about the asterisk-dev
mailing list