Asterisk - The Open Source Telephony Project
18.5.0
|
Say numbers and dates (maybe words one day too) More...
#include "asterisk.h"
#include <netinet/in.h>
#include <time.h>
#include <ctype.h>
#include <math.h>
#include "asterisk/file.h"
#include "asterisk/channel.h"
#include "asterisk/say.h"
#include "asterisk/lock.h"
#include "asterisk/localtime.h"
#include "asterisk/utils.h"
#include "asterisk/app.h"
#include "asterisk/test.h"
Go to the source code of this file.
Data Structures | |
struct | odmiana |
Macros | |
#define | IL_DATE_STR "AdBY" |
#define | IL_DATE_STR_FULL IL_DATE_STR " 'digits/at' " IL_TIME_STR |
#define | IL_TIME_STR "HM" /* NOTE: In Hebrew we do not support 12 hours, only 24. No AM or PM exists in the Hebrew language */ |
#define | SAY_NUM_BUF_SIZE 256 |
Functions | |
static void | __say_init (void) |
remap the 'say' functions to use those in this file More... | |
struct ast_str * | ast_get_character_str (const char *str, const char *lang, enum ast_say_case_sensitivity sensitivity) |
Returns an ast_str of files for SayAlpha playback. More... | |
struct ast_str * | ast_get_digit_str (const char *str, const char *lang) |
Returns an ast_str of files for SayDigits playback. More... | |
static struct ast_str * | ast_get_money_en_dollars_str (const char *str, const char *lang) |
struct ast_str * | ast_get_money_str (const char *str, const char *lang) |
ast_get_money_str: call language-specific functions More... | |
struct ast_str * | ast_get_number_str (int num, const char *lang) |
ast_get_number_str: call language-specific functions More... | |
struct ast_str * | ast_get_phonetic_str (const char *str, const char *lang) |
Returns an ast_str of files for SayPhonetic playback. More... | |
int | ast_say_counted_adjective (struct ast_channel *chan, int num, const char adjective[], const char gender[]) |
int | ast_say_counted_noun (struct ast_channel *chan, int num, const char noun[]) |
static int | ast_say_date_da (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Danish syntax. More... | |
static int | ast_say_date_de (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
German syntax. More... | |
static int | ast_say_date_en (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
English syntax. More... | |
static int | ast_say_date_fr (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
French syntax. More... | |
static int | ast_say_date_gr (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Greek support. More... | |
static int | ast_say_date_he (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Hebrew syntax. More... | |
static int | ast_say_date_hu (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Hungarian syntax. More... | |
static int | ast_say_date_is (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
static int | ast_say_date_ja (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
static int | ast_say_date_ka (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Georgian syntax. e.g. "oriatas xuti tslis 5 noemberi". More... | |
static int | ast_say_date_nl (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Dutch syntax. More... | |
static int | ast_say_date_pt (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Portuguese syntax. More... | |
static int | ast_say_date_th (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Thai syntax. More... | |
static int | ast_say_date_with_format_da (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
Danish syntax. More... | |
static int | ast_say_date_with_format_de (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
German syntax. More... | |
static int | ast_say_date_with_format_en (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
English syntax. More... | |
static int | ast_say_date_with_format_es (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
Spanish syntax. More... | |
static int | ast_say_date_with_format_fr (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
French syntax oclock = heure. More... | |
static int | ast_say_date_with_format_gr (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
Greek support. More... | |
static int | ast_say_date_with_format_he (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
ast_say_date_with_format_he Say formatted date in Hebrew More... | |
static int | ast_say_date_with_format_is (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
static int | ast_say_date_with_format_it (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
Italian syntax. More... | |
static int | ast_say_date_with_format_ja (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
static int | ast_say_date_with_format_nl (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
Dutch syntax. More... | |
static int | ast_say_date_with_format_pl (struct ast_channel *chan, time_t thetime, const char *ints, const char *lang, const char *format, const char *tzone) |
Polish syntax. More... | |
static int | ast_say_date_with_format_pt (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
Portuguese syntax. More... | |
static int | ast_say_date_with_format_th (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
Thai syntax. More... | |
static int | ast_say_date_with_format_vi (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
Vietnamese syntax. More... | |
static int | ast_say_date_with_format_zh (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
Taiwanese / Chinese syntax. More... | |
static int | ast_say_datetime_de (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
German syntax. More... | |
static int | ast_say_datetime_en (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
English syntax. More... | |
static int | ast_say_datetime_fr (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
French syntax. More... | |
static int | ast_say_datetime_from_now_en (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
English syntax. More... | |
static int | ast_say_datetime_from_now_fr (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
French syntax. More... | |
static int | ast_say_datetime_from_now_he (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Hebrew syntax. More... | |
static int | ast_say_datetime_from_now_ka (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Georgian syntax. More... | |
static int | ast_say_datetime_from_now_pt (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Portuguese syntax. More... | |
static int | ast_say_datetime_gr (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Greek support. More... | |
static int | ast_say_datetime_he (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Hebrew syntax. More... | |
static int | ast_say_datetime_hu (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Hungarian syntax. More... | |
static int | ast_say_datetime_ja (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
static int | ast_say_datetime_ka (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Georgian syntax. Say date, then say time. More... | |
static int | ast_say_datetime_nl (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Dutch syntax. More... | |
static int | ast_say_datetime_pt (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Portuguese syntax. More... | |
static int | ast_say_datetime_pt_BR (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Brazilian Portuguese syntax. More... | |
static int | ast_say_datetime_th (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Thai syntax. More... | |
static int | ast_say_datetime_zh (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Taiwanese / Chinese syntax. More... | |
static int | ast_say_enumeration_full_da (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
ast_say_enumeration_full_da: Danish syntax More... | |
static int | ast_say_enumeration_full_de (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
ast_say_enumeration_full_de: German syntax More... | |
static int | ast_say_enumeration_full_en (struct ast_channel *chan, int num, const char *ints, const char *language, int audiofd, int ctrlfd) |
ast_say_enumeration_full_en: English syntax More... | |
static int | ast_say_enumeration_full_he (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
static int | ast_say_enumeration_full_is (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
ast_say_enumeration_full_is: Icelandic syntax More... | |
static int | ast_say_enumeration_full_vi (struct ast_channel *chan, int num, const char *ints, const char *language, int audiofd, int ctrlfd) |
static int | ast_say_number_full_cs (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
ast_say_number_full_cs: Czech syntax More... | |
static int | ast_say_number_full_da (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
ast_say_number_full_da: Danish syntax New files: More... | |
static int | ast_say_number_full_de (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
ast_say_number_full_de: German syntax More... | |
static int | ast_say_number_full_en (struct ast_channel *chan, int num, const char *ints, const char *language, int audiofd, int ctrlfd) |
ast_say_number_full_en: English syntax More... | |
static int | ast_say_number_full_en_GB (struct ast_channel *chan, int num, const char *ints, const char *language, int audiofd, int ctrlfd) |
ast_say_number_full_en_GB: British syntax New files: More... | |
static int | ast_say_number_full_es (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
ast_say_number_full_es: Spanish syntax More... | |
static int | ast_say_number_full_fr (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
ast_say_number_full_fr: French syntax Extra sounds needed: 1F: feminin 'une' et: 'and' More... | |
static int | ast_say_number_full_gr (struct ast_channel *chan, int num, const char *ints, const char *language, int audiofd, int ctrlfd) |
Greek support A list of the files that you need to create -> digits/xilia = "xilia" -> digits/myrio = "ekatomyrio" -> digits/thousands = "xiliades" -> digits/millions = "ektatomyria" -> digits/[1..12] :: A pronunciation of th digits form 1 to 12 e.g. "tria" -> digits/[10..100] :: A pronunciation of the tens from 10 to 90 e.g. 80 = "ogdonta" Here we must note that we use digits/tens/100 to utter "ekato" and digits/hundred-100 to utter "ekaton" -> digits/hundred-[100...1000] :: A pronunciation of hundreds from 100 to 1000 e.g 400 = "terakosia". Here again we use hundreds/1000 for "xilia" and digits/thousnds for "xiliades". More... | |
static int | ast_say_number_full_he (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
static int | ast_say_number_full_hu (struct ast_channel *chan, int num, const char *ints, const char *language, int audiofd, int ctrlfd) |
ast_say_number_full_hu: Hungarian syntax More... | |
static int | ast_say_number_full_is (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
ast_say_number_full_is: Icelandic syntax More... | |
static int | ast_say_number_full_it (struct ast_channel *chan, int num, const char *ints, const char *language, int audiofd, int ctrlfd) |
ast_say_number_full_it: Italian More... | |
static int | ast_say_number_full_ja (struct ast_channel *chan, int num, const char *ints, const char *language, int audiofd, int ctrlfd) |
static int | ast_say_number_full_ka (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
ast_say_number_full_ka: Georgian syntax More... | |
static int | ast_say_number_full_nl (struct ast_channel *chan, int num, const char *ints, const char *language, int audiofd, int ctrlfd) |
ast_say_number_full_nl: dutch syntax New files: digits/nl-en More... | |
static int | ast_say_number_full_no (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
ast_say_number_full_no: Norwegian syntax New files: In addition to American English, the following sounds are required: "and", "1N" More... | |
static int | ast_say_number_full_pl (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
static int | ast_say_number_full_pt (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
static int | ast_say_number_full_ru (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
ast_say_number_full_ru: Russian syntax More... | |
static int | ast_say_number_full_se (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
ast_say_number_full_se: Swedish syntax More... | |
static int | ast_say_number_full_th (struct ast_channel *chan, int num, const char *ints, const char *language, int audiofd, int ctrlfd) |
Thai syntax. More... | |
static int | ast_say_number_full_ur (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
static int | ast_say_number_full_vi (struct ast_channel *chan, int num, const char *ints, const char *language, int audiofd, int ctrlfd) |
ast_say_number_full_vi: Vietnamese syntax More... | |
static int | ast_say_number_full_zh (struct ast_channel *chan, int num, const char *ints, const char *language, int audiofd, int ctrlfd) |
ast_say_number_full_zh: Taiwanese / Chinese syntax More... | |
static int | ast_say_time_de (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
German syntax. More... | |
static int | ast_say_time_en (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
English syntax. More... | |
static int | ast_say_time_fr (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
French syntax. More... | |
static int | ast_say_time_gr (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Greek support. More... | |
static int | ast_say_time_he (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Hebrew syntax. More... | |
static int | ast_say_time_hu (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Hungarian syntax. More... | |
static int | ast_say_time_ja (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
static int | ast_say_time_ka (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Georgian syntax. e.g. "otxi saati da eqvsi tsuti". More... | |
static int | ast_say_time_nl (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Dutch syntax. More... | |
static int | ast_say_time_pt (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Portuguese syntax. More... | |
static int | ast_say_time_pt_BR (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Brazilian Portuguese syntax. More... | |
static int | ast_say_time_th (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Thai syntax. More... | |
static int | ast_say_time_zh (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
Taiwanese / Chinese syntax. More... | |
static char * | ast_translate_number_ka (int num, char *res, int res_len) |
Georgian support. More... | |
static const char * | counted_adjective_ending_ru (int num, const char gender[]) |
In slavic languages such as Russian and Ukrainian the rules for declining adjectives are simpler than those for nouns. When counting we use only the singular (to which we give no suffix) and the genative plural (which we represent by adding an "x"). Oh, an in the singular gender matters so we append the supplied gender suffix ("m", "f", "n"). More... | |
static const char * | counted_noun_ending_en (int num) |
In English, we use the plural for everything but one. For example: More... | |
static const char * | counted_noun_ending_slavic (int num) |
Counting of objects in slavic languages such as Russian and Ukrainian the rules are more complicated. There are two plural forms used in counting. They are the genative singular which we represent with the suffix "x1" and the genative plural which we represent with the suffix "x2". The base names of the soundfiles remain in English. For example: More... | |
static int | exp10_int (int power) |
static int | get_lastdigits_ru (int num) |
determine last digits for thousands/millions (ru) More... | |
static struct ast_str * | get_number_str_en (int num, const char *lang) |
static int | gr_say_number_female (int num, struct ast_channel *chan, const char *ints, const char *lang) |
Greek digits/female-[1..4] : "Mia, dyo , treis, tessereis". More... | |
static char | next_item (const char *format) |
static char * | pl_append (char *buffer, char *str) |
static void | pl_odtworz_plik (struct ast_channel *chan, const char *language, int audiofd, int ctrlfd, const char *ints, char *fn) |
static char * | pl_rzad_na_tekst (odmiana *odm, int i, int rzad) |
static void | powiedz (struct ast_channel *chan, const char *language, int audiofd, int ctrlfd, const char *ints, odmiana *odm, int rzad, int i) |
static int | say_character_str_full (struct ast_channel *chan, const char *str, const char *ints, const char *lang, enum ast_say_case_sensitivity sensitivity, int audiofd, int ctrlfd) |
static int | say_date (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
static int | say_date_with_format (struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *tzone) |
static int | say_datetime (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
static int | say_datetime_from_now (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
static int | say_digit_str_full (struct ast_channel *chan, const char *str, const char *ints, const char *lang, int audiofd, int ctrlfd) |
static int | say_enumeration_full (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
ast_say_enumeration_full: call language-specific functions More... | |
static int | say_money_str_full (struct ast_channel *chan, const char *str, const char *ints, const char *lang, int audiofd, int ctrlfd) |
static int | say_number_full (struct ast_channel *chan, int num, const char *ints, const char *language, const char *options, int audiofd, int ctrlfd) |
ast_say_number_full: call language-specific functions More... | |
static int | say_phonetic_str_full (struct ast_channel *chan, const char *str, const char *ints, const char *lang, int audiofd, int ctrlfd) |
static int | say_time (struct ast_channel *chan, time_t t, const char *ints, const char *lang) |
static int | wait_file (struct ast_channel *chan, const char *ints, const char *file, const char *lang) |
Say numbers and dates (maybe words one day too)
Definition in file say.c.
#define IL_DATE_STR "AdBY" |
Referenced by ast_say_date_with_format_he().
#define IL_DATE_STR_FULL IL_DATE_STR " 'digits/at' " IL_TIME_STR |
Referenced by ast_say_date_with_format_he().
#define IL_TIME_STR "HM" /* NOTE: In Hebrew we do not support 12 hours, only 24. No AM or PM exists in the Hebrew language */ |
Referenced by ast_say_date_with_format_he().
#define SAY_NUM_BUF_SIZE 256 |
Definition at line 1446 of file say.c.
Referenced by ast_say_number_full_he().
|
static |
remap the 'say' functions to use those in this file
Definition at line 9601 of file say.c.
References ast_say_character_str_full, ast_say_date, ast_say_date_with_format, ast_say_datetime, ast_say_datetime_from_now, ast_say_digit_str_full, ast_say_enumeration_full, ast_say_money_str_full, ast_say_number_full, ast_say_phonetic_str_full, ast_say_time, say_character_str_full(), say_date(), say_date_with_format(), say_datetime(), say_datetime_from_now(), say_digit_str_full(), say_enumeration_full(), say_money_str_full(), say_number_full(), say_phonetic_str_full(), and say_time().
struct ast_str* ast_get_character_str | ( | const char * | str, |
const char * | lang, | ||
enum ast_say_case_sensitivity | sensitivity | ||
) |
Returns an ast_str of files for SayAlpha playback.
str | Text to be translated to the corresponding audio files. |
lang | Channel language |
sensitivity | Case sensitivity |
Computes the list of files to be played by SayAlpha.
ampersand-separated | string of Asterisk sound files that can be played back. |
Definition at line 63 of file say.c.
References ast_fileexists(), AST_SAY_CASE_ALL, AST_SAY_CASE_LOWER, AST_SAY_CASE_NONE, AST_SAY_CASE_UPPER, ast_str_append(), ast_str_create, ast_str_reset(), and NULL.
Referenced by say_character_str_full(), and sayfile_exec().
struct ast_str* ast_get_digit_str | ( | const char * | str, |
const char * | lang | ||
) |
Returns an ast_str of files for SayDigits playback.
str | Text to be translated to the corresponding audio files. |
lang | Channel language |
Computes the list of files to be played by SayDigits.
ampersand-separated | string of Asterisk sound files that can be played back. |
Definition at line 294 of file say.c.
References ast_fileexists(), ast_str_append(), ast_str_create, ast_str_reset(), and NULL.
Referenced by ast_get_money_en_dollars_str(), get_number_str_en(), say_digit_str_full(), and sayfile_exec().
|
static |
Definition at line 363 of file say.c.
References ast_debug, ast_get_digit_str(), ast_get_number_str(), ast_str_append(), ast_str_buffer(), ast_str_create, and ast_str_reset().
Referenced by ast_get_money_str().
struct ast_str* ast_get_money_str | ( | const char * | str, |
const char * | lang | ||
) |
ast_get_money_str: call language-specific functions
Returns an ast_str of files for SayMoney playback.
Definition at line 419 of file say.c.
References ast_get_money_en_dollars_str(), ast_log, and LOG_WARNING.
Referenced by say_money_str_full(), and sayfile_exec().
struct ast_str* ast_get_number_str | ( | int | num, |
const char * | lang | ||
) |
ast_get_number_str: call language-specific functions
Returns an ast_str of files for SayNumber playback.
Definition at line 525 of file say.c.
References ast_log, ast_say_date_da(), ast_say_date_de(), ast_say_date_en(), ast_say_date_fr(), ast_say_date_gr(), ast_say_date_he(), ast_say_date_hu(), ast_say_date_is(), ast_say_date_ja(), ast_say_date_ka(), ast_say_date_nl(), ast_say_date_pt(), ast_say_date_th(), ast_say_date_with_format_da(), ast_say_date_with_format_de(), ast_say_date_with_format_en(), ast_say_date_with_format_es(), ast_say_date_with_format_fr(), ast_say_date_with_format_gr(), ast_say_date_with_format_he(), ast_say_date_with_format_is(), ast_say_date_with_format_it(), ast_say_date_with_format_ja(), ast_say_date_with_format_nl(), ast_say_date_with_format_pl(), ast_say_date_with_format_pt(), ast_say_date_with_format_th(), ast_say_date_with_format_vi(), ast_say_date_with_format_zh(), ast_say_datetime_de(), ast_say_datetime_en(), ast_say_datetime_fr(), ast_say_datetime_from_now_en(), ast_say_datetime_from_now_fr(), ast_say_datetime_from_now_he(), ast_say_datetime_from_now_ka(), ast_say_datetime_from_now_pt(), ast_say_datetime_gr(), ast_say_datetime_he(), ast_say_datetime_hu(), ast_say_datetime_ja(), ast_say_datetime_ka(), ast_say_datetime_nl(), ast_say_datetime_pt(), ast_say_datetime_pt_BR(), ast_say_datetime_th(), ast_say_datetime_zh(), ast_say_enumeration_full_da(), ast_say_enumeration_full_de(), ast_say_enumeration_full_en(), ast_say_enumeration_full_he(), ast_say_enumeration_full_is(), ast_say_enumeration_full_vi(), ast_say_number_full_cs(), ast_say_number_full_da(), ast_say_number_full_de(), ast_say_number_full_en(), ast_say_number_full_en_GB(), ast_say_number_full_es(), ast_say_number_full_fr(), ast_say_number_full_gr(), ast_say_number_full_he(), ast_say_number_full_hu(), ast_say_number_full_is(), ast_say_number_full_it(), ast_say_number_full_ja(), ast_say_number_full_ka(), ast_say_number_full_nl(), ast_say_number_full_no(), ast_say_number_full_pl(), ast_say_number_full_pt(), ast_say_number_full_ru(), ast_say_number_full_se(), ast_say_number_full_th(), ast_say_number_full_ur(), ast_say_number_full_vi(), ast_say_number_full_zh(), ast_say_time_de(), ast_say_time_en(), ast_say_time_fr(), ast_say_time_gr(), ast_say_time_he(), ast_say_time_hu(), ast_say_time_ja(), ast_say_time_ka(), ast_say_time_nl(), ast_say_time_pt(), ast_say_time_pt_BR(), ast_say_time_th(), ast_say_time_zh(), format, get_number_str_en(), language, LOG_WARNING, and options.
Referenced by ast_get_money_en_dollars_str(), ast_say_number_full_en(), get_number_str_en(), and sayfile_exec().
struct ast_str* ast_get_phonetic_str | ( | const char * | str, |
const char * | lang | ||
) |
Returns an ast_str of files for SayPhonetic playback.
str | Text to be translated to the corresponding audio files. |
lang | Channel language |
Computes the list of files to be played by SayPhonetic.
ampersand-separated | string of Asterisk sound files that can be played back. |
Definition at line 195 of file say.c.
References ast_fileexists(), ast_str_append(), ast_str_create, ast_str_reset(), and NULL.
Referenced by say_phonetic_str_full(), and sayfile_exec().
int ast_say_counted_adjective | ( | struct ast_channel * | chan, |
int | num, | ||
const char | adjective[], | ||
const char | gender[] | ||
) |
Definition at line 9577 of file say.c.
References ast_alloca, ast_channel_language(), ast_play_and_wait(), and counted_adjective_ending_ru().
int ast_say_counted_noun | ( | struct ast_channel * | chan, |
int | num, | ||
const char | noun[] | ||
) |
Definition at line 9535 of file say.c.
References ast_alloca, ast_channel_language(), ast_play_and_wait(), counted_noun_ending_en(), and counted_noun_ending_slavic().
|
static |
Danish syntax.
Definition at line 3871 of file say.c.
References ast_localtime(), ast_say_enumeration(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date().
|
static |
German syntax.
Definition at line 3920 of file say.c.
References ast_localtime(), ast_say_enumeration(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date().
|
static |
English syntax.
Definition at line 3842 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_date().
|
static |
French syntax.
Definition at line 4002 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_date().
|
static |
Greek support.
The format is weekday - day - month -year
A list of the files that you need to create digits/day-[1..7] : "Deytera .. Paraskeyh" digits/months/1..12 : "Ianouariou .. Dekembriou" Attention the months are in "gekinh klhsh"
Definition at line 8180 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), gr_say_number_female(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_date().
|
static |
Hebrew syntax.
Definition at line 4123 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_date().
|
static |
Hungarian syntax.
Definition at line 3970 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_date().
|
static |
Definition at line 4157 of file say.c.
References ast_localtime(), ast_say_enumeration(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date().
|
static |
Definition at line 8216 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_date().
|
static |
Georgian syntax. e.g. "oriatas xuti tslis 5 noemberi".
Georgian support for date/time requires the following files (*.gsm):
Definition at line 9348 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_date().
|
static |
Dutch syntax.
Definition at line 4031 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_date().
|
static |
Portuguese syntax.
Definition at line 4096 of file say.c.
References ast_localtime(), ast_say_number(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date().
|
static |
Thai syntax.
Definition at line 4060 of file say.c.
References ast_copy_string(), ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_date().
|
static |
Danish syntax.
Definition at line 4493 of file say.c.
References ast_copy_string(), ast_debug, ast_localtime(), ast_log, ast_say_enumeration(), ast_say_number(), ast_tvnow(), LOG_WARNING, next_item(), NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date_with_format().
|
static |
German syntax.
Definition at line 4695 of file say.c.
References ast_copy_string(), ast_debug, ast_localtime(), ast_log, ast_say_enumeration(), ast_say_number(), ast_tvnow(), LOG_WARNING, next_item(), NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date_with_format().
|
static |
English syntax.
Definition at line 4246 of file say.c.
References ast_copy_string(), ast_debug, ast_localtime(), ast_log, ast_say_enumeration(), ast_say_number(), ast_tvnow(), LOG_WARNING, NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), ast_say_date_with_format_th(), ast_say_date_with_format_vi(), and say_date_with_format().
|
static |
Spanish syntax.
Definition at line 5442 of file say.c.
References ast_copy_string(), ast_debug, ast_localtime(), ast_log, ast_say_number(), ast_tvnow(), LOG_WARNING, NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date_with_format().
|
static |
French syntax oclock = heure.
Definition at line 5633 of file say.c.
References ast_copy_string(), ast_debug, ast_localtime(), ast_log, ast_say_number(), ast_tvnow(), LOG_WARNING, NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date_with_format().
|
static |
Greek support.
Definition at line 8455 of file say.c.
References ast_channel_language(), ast_copy_string(), ast_debug, ast_localtime(), ast_log, ast_say_number_full_gr(), ast_streamfile(), ast_tvnow(), ast_waitstream(), gr_say_number_female(), LOG_WARNING, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date_with_format().
|
static |
ast_say_date_with_format_he Say formatted date in Hebrew
ast_say_date_with_format_en for the details of the options
Changes from the English version:
Definition at line 5295 of file say.c.
References ast_debug, ast_localtime(), ast_log, ast_say_number_full_he(), ast_tvnow(), IL_DATE_STR, IL_DATE_STR_FULL, IL_TIME_STR, LOG_WARNING, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date_with_format().
|
static |
Definition at line 4898 of file say.c.
References ast_copy_string(), ast_debug, ast_localtime(), ast_log, ast_say_enumeration(), ast_say_number(), ast_tvnow(), LOG_WARNING, next_item(), NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date_with_format().
|
static |
Italian syntax.
Definition at line 5829 of file say.c.
References ast_copy_string(), ast_debug, ast_localtime(), ast_log, ast_say_number(), ast_tvnow(), LOG_WARNING, NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date_with_format().
|
static |
Definition at line 8627 of file say.c.
References ast_localtime(), ast_log, ast_say_date_with_format, LOG_DEBUG, LOG_WARNING, NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date_with_format().
|
static |
Dutch syntax.
Definition at line 6061 of file say.c.
References ast_copy_string(), ast_debug, ast_localtime(), ast_log, ast_say_number(), ast_tvnow(), LOG_WARNING, NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date_with_format().
|
static |
Polish syntax.
Definition at line 6264 of file say.c.
References ast_copy_string(), ast_debug, ast_localtime(), ast_log, ast_say_date_with_format, ast_say_enumeration(), ast_say_number(), ast_tvnow(), LOG_WARNING, NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date_with_format().
|
static |
Portuguese syntax.
Definition at line 6481 of file say.c.
References ast_debug, ast_localtime(), ast_log, ast_say_number(), ast_tvnow(), LOG_WARNING, NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date_with_format().
|
static |
Thai syntax.
Definition at line 5110 of file say.c.
References ast_copy_string(), ast_debug, ast_localtime(), ast_log, ast_say_date_with_format_en(), ast_say_number(), ast_tvnow(), LOG_WARNING, NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date_with_format().
|
static |
Vietnamese syntax.
Definition at line 8895 of file say.c.
References ast_copy_string(), ast_debug, ast_localtime(), ast_log, ast_say_date_with_format_en(), ast_say_enumeration(), ast_say_number(), ast_tvnow(), LOG_WARNING, NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date_with_format().
|
static |
Taiwanese / Chinese syntax.
Definition at line 6773 of file say.c.
References ast_copy_string(), ast_debug, ast_localtime(), ast_log, ast_tvnow(), LOG_WARNING, NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_sec, ast_tm::tm_wday, ast_tm::tm_year, and wait_file().
Referenced by ast_get_number_str(), and say_date_with_format().
|
static |
German syntax.
Definition at line 7464 of file say.c.
References ast_localtime(), ast_say_date, ast_say_time, and NULL.
Referenced by ast_get_number_str(), and say_datetime().
|
static |
English syntax.
Definition at line 7397 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_datetime().
|
static |
French syntax.
Definition at line 7493 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_datetime().
|
static |
English syntax.
Definition at line 7821 of file say.c.
References ast_localtime(), ast_say_number(), ast_say_time, ast_streamfile(), ast_tvnow(), ast_waitstream(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_yday.
Referenced by ast_get_number_str(), and say_datetime_from_now().
|
static |
French syntax.
Definition at line 7859 of file say.c.
References ast_localtime(), ast_say_number(), ast_say_time, ast_streamfile(), ast_tvnow(), ast_waitstream(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_yday.
Referenced by ast_get_number_str(), and say_datetime_from_now().
|
static |
Hebrew syntax.
Definition at line 7947 of file say.c.
References ast_localtime(), ast_say_number(), ast_say_time, ast_streamfile(), ast_tvnow(), ast_waitstream(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_yday.
Referenced by ast_get_number_str(), and say_datetime_from_now().
|
static |
Georgian syntax.
Definition at line 9444 of file say.c.
References ast_localtime(), ast_say_number(), ast_say_time, ast_streamfile(), ast_tvnow(), ast_waitstream(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_yday.
Referenced by ast_get_number_str(), and say_datetime_from_now().
|
static |
Portuguese syntax.
Definition at line 7897 of file say.c.
References ast_copy_string(), ast_localtime(), ast_say_number(), ast_say_time, ast_tvnow(), NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_mon, ast_tm::tm_wday, ast_tm::tm_yday, and wait_file().
Referenced by ast_get_number_str(), and say_datetime_from_now().
|
static |
Greek support.
Definition at line 8355 of file say.c.
References ast_localtime(), ast_say_time_gr(), ast_streamfile(), ast_waitstream(), gr_say_number_female(), NULL, ast_tm::tm_mday, ast_tm::tm_mon, and ast_tm::tm_wday.
Referenced by ast_get_number_str(), and say_datetime().
|
static |
Hebrew syntax.
Definition at line 7737 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_datetime().
|
static |
Hungarian syntax.
Definition at line 7479 of file say.c.
References ast_localtime(), ast_say_date, ast_say_time, and NULL.
Referenced by ast_get_number_str(), and say_datetime().
|
static |
Definition at line 8388 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_datetime().
|
static |
Georgian syntax. Say date, then say time.
Definition at line 9425 of file say.c.
References ast_localtime(), ast_say_date, ast_say_time, and NULL.
Referenced by ast_get_number_str(), and say_datetime().
|
static |
Dutch syntax.
Definition at line 7534 of file say.c.
References ast_localtime(), ast_say_date, ast_say_time, ast_streamfile(), ast_waitstream(), and NULL.
Referenced by ast_get_number_str(), and say_datetime().
|
static |
Portuguese syntax.
Definition at line 7553 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_datetime().
|
static |
Brazilian Portuguese syntax.
Definition at line 7620 of file say.c.
References ast_localtime(), ast_say_date, ast_say_time, and NULL.
Referenced by ast_get_number_str(), and say_datetime().
|
static |
Thai syntax.
Definition at line 7634 of file say.c.
References ast_copy_string(), ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_datetime().
|
static |
Taiwanese / Chinese syntax.
Definition at line 7677 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_hour, ast_tm::tm_mday, ast_tm::tm_min, ast_tm::tm_mon, ast_tm::tm_wday, and ast_tm::tm_year.
Referenced by ast_get_number_str(), and say_datetime().
|
static |
ast_say_enumeration_full_da: Danish syntax
Definition at line 3218 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_say_number_full_de(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_enumeration_full().
|
static |
ast_say_enumeration_full_de: German syntax
Definition at line 3381 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_say_number_full_de(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_enumeration_full().
|
static |
ast_say_enumeration_full_en: English syntax
Definition at line 3101 of file say.c.
References ast_copy_string(), ast_debug, ast_say_number_full_en(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_enumeration_full().
|
static |
Definition at line 3543 of file say.c.
References ast_debug, ast_say_number_full_he(), ast_stopstream(), ast_streamfile(), ast_verb, ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_enumeration_full().
|
static |
ast_say_enumeration_full_is: Icelandic syntax
Definition at line 3632 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_say_number_full_is(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_enumeration_full().
|
static |
Definition at line 3198 of file say.c.
References ast_copy_string(), ast_say_number_full_vi(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_enumeration_full().
|
static |
ast_say_number_full_cs: Czech syntax
files needed:
for each number 10^(3n + 3) exist 3 files represented as: 1 tousand = jeden tisic = 1_E3 2,3,4 tousands = dva,tri,ctyri tisice = 2-3_E3 5,6,... tousands = pet,sest,... tisic = 5_E3
million = _E6 miliard = _E9 etc...
tousand, milion are gender male, so 1 and 2 is 1m 2m miliard is gender female, so 1 and 2 is 1w 2w
Definition at line 826 of file say.c.
References ast_copy_string(), ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), ast_waitstream_full(), and exp10_int().
Referenced by ast_get_number_str(), and say_number_full().
|
static |
ast_say_number_full_da: Danish syntax New files:
Definition at line 924 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_number_full().
|
static |
ast_say_number_full_de: German syntax
New files: In addition to English, the following sounds are required:
Definition at line 1038 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), ast_say_enumeration_full_da(), ast_say_enumeration_full_de(), and say_number_full().
|
static |
ast_say_number_full_en: English syntax
Definition at line 772 of file say.c.
References ast_free, ast_get_number_str(), ast_stopstream(), ast_str_buffer(), ast_streamfile(), ast_waitstream(), ast_waitstream_full(), and strsep().
Referenced by ast_get_number_str(), ast_say_enumeration_full_en(), ast_say_number_full_ja(), and say_number_full().
|
static |
ast_say_number_full_en_GB: British syntax New files:
Definition at line 1172 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_number_full().
|
static |
ast_say_number_full_es: Spanish syntax
New files: Requires a few new audios: 1F.gsm: feminine 'una' 21.gsm thru 29.gsm, cien.gsm, mil.gsm, millon.gsm, millones.gsm, 100.gsm, 200.gsm, 300.gsm, 400.gsm, 500.gsm, 600.gsm, 700.gsm, 800.gsm, 900.gsm, y.gsm
Definition at line 1251 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_number_full().
|
static |
ast_say_number_full_fr: French syntax Extra sounds needed: 1F: feminin 'une' et: 'and'
Definition at line 1355 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_number_full().
|
static |
Greek support A list of the files that you need to create -> digits/xilia = "xilia" -> digits/myrio = "ekatomyrio" -> digits/thousands = "xiliades" -> digits/millions = "ektatomyria" -> digits/[1..12] :: A pronunciation of th digits form 1 to 12 e.g. "tria" -> digits/[10..100] :: A pronunciation of the tens from 10 to 90 e.g. 80 = "ogdonta" Here we must note that we use digits/tens/100 to utter "ekato" and digits/hundred-100 to utter "ekaton" -> digits/hundred-[100...1000] :: A pronunciation of hundreds from 100 to 1000 e.g 400 = "terakosia". Here again we use hundreds/1000 for "xilia" and digits/thousnds for "xiliades".
Definition at line 8036 of file say.c.
References ast_channel_language(), ast_copy_string(), ast_debug, ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), ast_say_date_with_format_gr(), and say_number_full().
|
static |
Definition at line 1447 of file say.c.
References ast_debug, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_verb, ast_waitstream(), ast_waitstream_full(), and SAY_NUM_BUF_SIZE.
Referenced by ast_get_number_str(), ast_say_date_with_format_he(), ast_say_enumeration_full_he(), ast_say_time_he(), and say_number_full().
|
static |
ast_say_number_full_hu: Hungarian syntax
Extra sounds needed: 10en: "tizen" 20on: "huszon"
Definition at line 1619 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_number_full().
|
static |
ast_say_number_full_is: Icelandic syntax
Definition at line 1699 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), ast_say_enumeration_full_is(), and say_number_full().
|
static |
ast_say_number_full_it: Italian
Definition at line 1819 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_number_full().
|
static |
Definition at line 8105 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_say_number_full_en(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_number_full().
|
static |
ast_say_number_full_ka: Georgian syntax
Definition at line 9270 of file say.c.
References ast_free, ast_malloc, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_translate_number_ka(), ast_waitstream(), ast_waitstream_full(), and len().
Referenced by ast_get_number_str(), and say_number_full().
|
static |
ast_say_number_full_nl: dutch syntax New files: digits/nl-en
Definition at line 1974 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_number_full().
|
static |
ast_say_number_full_no: Norwegian syntax New files: In addition to American English, the following sounds are required: "and", "1N"
The grammar for Norwegian numbers is the same as for English except for the following:
Definition at line 2072 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_number_full().
|
static |
Definition at line 2359 of file say.c.
References ast_malloc, odmiana::cyfry, odmiana::cyfry2, odmiana::dziesiatki, odmiana::nastki, NULL, powiedz(), odmiana::rzedy, odmiana::separator_dziesiatek, and odmiana::setki.
Referenced by ast_get_number_str(), and say_number_full().
|
static |
Definition at line 2455 of file say.c.
References ast_copy_string(), ast_log, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), ast_waitstream_full(), LOG_WARNING, and wait_file().
Referenced by ast_get_number_str(), and say_number_full().
|
static |
ast_say_number_full_ru: Russian syntax
additional files: n00.gsm (one hundred, two hundred, ...) thousand.gsm million.gsm thousands-i.gsm (tisyachi) million-a.gsm (milliona) thousands.gsm millions.gsm 1f.gsm (odna) 2f.gsm (dve)
where 'n' from 1 to 9
Definition at line 2834 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), ast_waitstream_full(), get_lastdigits_ru(), and NULL.
Referenced by ast_get_number_str(), and say_number_full().
|
static |
ast_say_number_full_se: Swedish syntax
Sound files needed
Definition at line 2555 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_number_full().
|
static |
Thai syntax.
Definition at line 2913 of file say.c.
References ast_copy_string(), ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_number_full().
|
static |
Definition at line 2748 of file say.c.
References ast_debug, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), and say_number_full().
|
static |
ast_say_number_full_vi: Vietnamese syntax
Definition at line 2983 of file say.c.
References ast_copy_string(), ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by ast_get_number_str(), ast_say_enumeration_full_vi(), and say_number_full().
|
static |
ast_say_number_full_zh: Taiwanese / Chinese syntax
Definition at line 2635 of file say.c.
References ast_copy_string(), ast_debug, ast_say_digits_full(), ast_stopstream(), ast_streamfile(), ast_waitstream(), ast_waitstream_full(), and buf.
Referenced by ast_get_number_str(), and say_number_full().
|
static |
German syntax.
Definition at line 7125 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_hour, and ast_tm::tm_min.
Referenced by ast_get_number_str(), and say_time().
|
static |
English syntax.
Definition at line 7076 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_hour, and ast_tm::tm_min.
Referenced by ast_get_number_str(), and say_time().
|
static |
French syntax.
Definition at line 7168 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), NULL, ast_tm::tm_hour, and ast_tm::tm_min.
Referenced by ast_get_number_str(), and say_time().
|
static |
Greek support.
A list of the files that you need to create
Definition at line 8260 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), gr_say_number_female(), NULL, ast_tm::tm_hour, and ast_tm::tm_min.
Referenced by ast_get_number_str(), ast_say_datetime_gr(), and say_time().
|
static |
Hebrew syntax.
Definition at line 7326 of file say.c.
References ast_localtime(), ast_say_number_full_he(), ast_waitstream(), NULL, ast_tm::tm_hour, and ast_tm::tm_min.
Referenced by ast_get_number_str(), and say_time().
|
static |
Hungarian syntax.
Definition at line 7145 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_hour, and ast_tm::tm_min.
Referenced by ast_get_number_str(), and say_time().
|
static |
Definition at line 8308 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_hour, and ast_tm::tm_min.
Referenced by ast_get_number_str(), and say_time().
|
static |
Georgian syntax. e.g. "otxi saati da eqvsi tsuti".
Definition at line 9391 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_hour, and ast_tm::tm_min.
Referenced by ast_get_number_str(), and say_time().
|
static |
Dutch syntax.
Definition at line 7187 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_hour, and ast_tm::tm_min.
Referenced by ast_get_number_str(), and say_time().
|
static |
Portuguese syntax.
Definition at line 7207 of file say.c.
References ast_localtime(), ast_say_number(), NULL, ast_tm::tm_hour, ast_tm::tm_min, and wait_file().
Referenced by ast_get_number_str(), and say_time().
|
static |
Brazilian Portuguese syntax.
Definition at line 7236 of file say.c.
References ast_localtime(), ast_say_number(), NULL, ast_tm::tm_hour, ast_tm::tm_min, and wait_file().
Referenced by ast_get_number_str(), and say_time().
|
static |
Thai syntax.
Definition at line 7266 of file say.c.
References ast_localtime(), ast_say_number(), NULL, ast_tm::tm_hour, and ast_tm::tm_min.
Referenced by ast_get_number_str(), and say_time().
|
static |
Taiwanese / Chinese syntax.
Definition at line 7284 of file say.c.
References ast_localtime(), ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, ast_tm::tm_hour, and ast_tm::tm_min.
Referenced by ast_get_number_str(), and say_time().
|
static |
Georgian support.
Convert a number into a semi-localized string. Only for Georgian. res must be of at least 256 bytes, preallocated. The output corresponds to Georgian spoken numbers, so it may be either converted to real words by applying a direct conversion table, or played just by substituting the entities with played files.
Output may consist of the following tokens (separated by spaces): 0, minus. 1-9, 1_-9_. (erti, ori, sami, otxi, ... . erti, or, sam, otx, ...). 10-19. 20, 40, 60, 80, 20_, 40_, 60_, 80_. (oci, ormoci, ..., ocda, ormocda, ...). 100, 100_, 200, 200_, ..., 900, 900_. (asi, as, orasi, oras, ...). 1000, 1000_. (atasi, atas). 1000000, 1000000_. (milioni, milion). 1000000000, 1000000000_. (miliardi, miliard).
To be able to play the sounds, each of the above tokens needs a corresponding sound file. (e.g. 200_.gsm).
Definition at line 9131 of file say.c.
Referenced by ast_say_number_full_ka().
|
static |
In slavic languages such as Russian and Ukrainian the rules for declining adjectives are simpler than those for nouns. When counting we use only the singular (to which we give no suffix) and the genative plural (which we represent by adding an "x"). Oh, an in the singular gender matters so we append the supplied gender suffix ("m", "f", "n").
Definition at line 9561 of file say.c.
Referenced by ast_say_counted_adjective().
|
static |
In English, we use the plural for everything but one. For example:
Definition at line 9497 of file say.c.
Referenced by ast_say_counted_noun().
|
static |
Counting of objects in slavic languages such as Russian and Ukrainian the rules are more complicated. There are two plural forms used in counting. They are the genative singular which we represent with the suffix "x1" and the genative plural which we represent with the suffix "x2". The base names of the soundfiles remain in English. For example:
Definition at line 9516 of file say.c.
Referenced by ast_say_counted_noun().
|
static |
Definition at line 796 of file say.c.
Referenced by ast_say_number_full_cs().
|
static |
determine last digits for thousands/millions (ru)
Definition at line 2807 of file say.c.
Referenced by ast_say_number_full_ru().
|
static |
Definition at line 454 of file say.c.
References ast_copy_string(), ast_get_digit_str(), ast_get_number_str(), ast_log, ast_str_append(), ast_str_buffer(), ast_str_create, ast_str_reset(), and LOG_WARNING.
Referenced by ast_get_number_str().
|
static |
Greek digits/female-[1..4] : "Mia, dyo , treis, tessereis".
Definition at line 7991 of file say.c.
References ast_say_number(), ast_streamfile(), ast_waitstream(), NULL, tmp(), and wait_file().
Referenced by ast_say_date_gr(), ast_say_date_with_format_gr(), ast_say_datetime_gr(), and ast_say_time_gr().
|
static |
Definition at line 4486 of file say.c.
References ast_skip_blanks().
Referenced by ast_say_date_with_format_da(), ast_say_date_with_format_de(), and ast_say_date_with_format_is().
|
static |
|
static |
Definition at line 2184 of file say.c.
References ast_debug, ast_stopstream(), ast_streamfile(), ast_waitstream(), and ast_waitstream_full().
Referenced by powiedz().
|
static |
|
static |
Definition at line 2198 of file say.c.
References b, buf, odmiana::cyfry, odmiana::cyfry2, odmiana::dziesiatki, odmiana::nastki, pl_append(), pl_odtworz_plik(), pl_rzad_na_tekst(), odmiana::separator_dziesiatek, and odmiana::setki.
Referenced by ast_say_number_full_pl().
|
static |
Definition at line 171 of file say.c.
References ast_free, ast_get_character_str(), ast_stopstream(), ast_str_buffer(), ast_streamfile(), ast_waitstream(), ast_waitstream_full(), and strsep().
Referenced by __say_init(), and say_init_mode().
|
static |
Definition at line 3807 of file say.c.
References ast_say_date_da(), ast_say_date_de(), ast_say_date_en(), ast_say_date_fr(), ast_say_date_gr(), ast_say_date_he(), ast_say_date_hu(), ast_say_date_is(), ast_say_date_ja(), ast_say_date_ka(), ast_say_date_nl(), ast_say_date_pt(), and ast_say_date_th().
Referenced by __say_init().
|
static |
Definition at line 4205 of file say.c.
References ast_say_date_with_format_da(), ast_say_date_with_format_de(), ast_say_date_with_format_en(), ast_say_date_with_format_es(), ast_say_date_with_format_fr(), ast_say_date_with_format_gr(), ast_say_date_with_format_he(), ast_say_date_with_format_is(), ast_say_date_with_format_it(), ast_say_date_with_format_ja(), ast_say_date_with_format_nl(), ast_say_date_with_format_pl(), ast_say_date_with_format_pt(), ast_say_date_with_format_th(), ast_say_date_with_format_vi(), and ast_say_date_with_format_zh().
Referenced by __say_init().
|
static |
Definition at line 7362 of file say.c.
References ast_say_datetime_de(), ast_say_datetime_en(), ast_say_datetime_fr(), ast_say_datetime_gr(), ast_say_datetime_he(), ast_say_datetime_hu(), ast_say_datetime_ja(), ast_say_datetime_ka(), ast_say_datetime_nl(), ast_say_datetime_pt(), ast_say_datetime_pt_BR(), ast_say_datetime_th(), and ast_say_datetime_zh().
Referenced by __say_init().
|
static |
Definition at line 7802 of file say.c.
References ast_say_datetime_from_now_en(), ast_say_datetime_from_now_fr(), ast_say_datetime_from_now_he(), ast_say_datetime_from_now_ka(), and ast_say_datetime_from_now_pt().
Referenced by __say_init(), and say_init_mode().
|
static |
Definition at line 339 of file say.c.
References ast_free, ast_get_digit_str(), ast_stopstream(), ast_str_buffer(), ast_streamfile(), ast_waitstream(), ast_waitstream_full(), and strsep().
Referenced by __say_init(), and say_init_mode().
|
static |
ast_say_enumeration_full: call language-specific functions
Definition at line 3079 of file say.c.
References ast_say_enumeration_full_da(), ast_say_enumeration_full_de(), ast_say_enumeration_full_en(), ast_say_enumeration_full_he(), ast_say_enumeration_full_is(), and ast_say_enumeration_full_vi().
Referenced by __say_init().
|
static |
Definition at line 430 of file say.c.
References ast_free, ast_get_money_str(), ast_stopstream(), ast_str_buffer(), ast_streamfile(), ast_waitstream(), ast_waitstream_full(), and strsep().
Referenced by __say_init().
|
static |
ast_say_number_full: call language-specific functions
Definition at line 713 of file say.c.
References ast_channel_name(), ast_say_number_full_cs(), ast_say_number_full_da(), ast_say_number_full_de(), ast_say_number_full_en(), ast_say_number_full_en_GB(), ast_say_number_full_es(), ast_say_number_full_fr(), ast_say_number_full_gr(), ast_say_number_full_he(), ast_say_number_full_hu(), ast_say_number_full_is(), ast_say_number_full_it(), ast_say_number_full_ja(), ast_say_number_full_ka(), ast_say_number_full_nl(), ast_say_number_full_no(), ast_say_number_full_pl(), ast_say_number_full_pt(), ast_say_number_full_ru(), ast_say_number_full_se(), ast_say_number_full_th(), ast_say_number_full_ur(), ast_say_number_full_vi(), ast_say_number_full_zh(), and ast_test_suite_event_notify.
Referenced by __say_init().
|
static |
Definition at line 270 of file say.c.
References ast_free, ast_get_phonetic_str(), ast_stopstream(), ast_str_buffer(), ast_streamfile(), ast_waitstream(), ast_waitstream_full(), and strsep().
Referenced by __say_init(), and say_init_mode().
|
static |
Definition at line 7041 of file say.c.
References ast_say_time_de(), ast_say_time_en(), ast_say_time_fr(), ast_say_time_gr(), ast_say_time_he(), ast_say_time_hu(), ast_say_time_ja(), ast_say_time_ka(), ast_say_time_nl(), ast_say_time_pt(), ast_say_time_pt_BR(), ast_say_time_th(), and ast_say_time_zh().
Referenced by __say_init().
|
static |
Definition at line 699 of file say.c.
References ast_log, ast_streamfile(), ast_waitstream(), and LOG_WARNING.
Referenced by ast_say_date_da(), ast_say_date_de(), ast_say_date_is(), ast_say_date_pt(), ast_say_date_with_format_da(), ast_say_date_with_format_de(), ast_say_date_with_format_en(), ast_say_date_with_format_es(), ast_say_date_with_format_fr(), ast_say_date_with_format_gr(), ast_say_date_with_format_he(), ast_say_date_with_format_is(), ast_say_date_with_format_it(), ast_say_date_with_format_ja(), ast_say_date_with_format_nl(), ast_say_date_with_format_pl(), ast_say_date_with_format_pt(), ast_say_date_with_format_th(), ast_say_date_with_format_vi(), ast_say_date_with_format_zh(), ast_say_datetime_from_now_pt(), ast_say_number_full_pt(), ast_say_time_pt(), ast_say_time_pt_BR(), and gr_say_number_female().