use double-quotes instead of angle-brackets for non-system include files (bug #4058)
[asterisk/asterisk.git] / include / asterisk / say.h
1 /*
2  * Asterisk -- A telephony toolkit for Linux.
3  *
4  * Say numbers and dates (maybe words one day too)
5  * 
6  * Copyright (C) 1999, Mark Spencer
7  *
8  * Mark Spencer <markster@linux-support.net>
9  *
10  * This program is free software, distributed under the terms of
11  * the GNU General Public License
12  */
13
14 #ifndef _ASTERISK_SAY_H
15 #define _ASTERISK_SAY_H
16
17 #include "asterisk/channel.h"
18 #include "asterisk/file.h"
19
20 #include <time.h>
21
22 #if defined(__cplusplus) || defined(c_plusplus)
23 extern "C" {
24 #endif
25
26 /* says a number
27  * \param chan channel to say them number on
28  * \param num number to say on the channel
29  * \param ints which dtmf to interrupt on
30  * \param lang language to speak the number
31  * \param options set to 'f' for female, 'm' for male, 'c' for commune, 'n' for neuter, 'p' for plural
32  * Vocally says a number on a given channel
33  * Returns 0 on success, DTMF digit on interrupt, -1 on failure
34  */
35 int ast_say_number(struct ast_channel *chan, int num, const char *ints, const char *lang, const char *options);
36
37 /* Same as above with audiofd for received audio and returns 1 on ctrlfd being readable */
38 int ast_say_number_full(struct ast_channel *chan, int num, const char *ints, const char *lang, const char *options, int audiofd, int ctrlfd);
39
40 /* says an enumeration
41  * \param chan channel to say them enumeration on
42  * \param num number to say on the channel
43  * \param ints which dtmf to interrupt on
44  * \param lang language to speak the enumeration
45  * \param options set to 'f' for female, 'm' for male, 'c' for commune, 'n' for neuter, 'p' for plural
46  * Vocally says a enumeration on a given channel (first, sencond, third, forth, thirtyfirst, hundredth, ....) 
47  * especially useful for dates and messages. says 'last' if num equals to INT_MAX
48  * Returns 0 on success, DTMF digit on interrupt, -1 on failure
49  */
50 int ast_say_enumeration(struct ast_channel *chan, int num, const char *ints, const char *lang, const char *options);
51 int ast_say_enumeration_full(struct ast_channel *chan, int num, const char *ints, const char *lang, const char *options, int audiofd, int ctrlfd);
52
53 /* says digits
54  * \param chan channel to act upon
55  * \param num number to speak
56  * \param ints which dtmf to interrupt on
57  * \param lang language to speak
58  * Vocally says digits of a given number
59  * Returns 0 on success, dtmf if interrupted, -1 on failure
60  */
61 int ast_say_digits(struct ast_channel *chan, int num, const char *ints, const char *lang);
62 int ast_say_digits_full(struct ast_channel *chan, int num, const char *ints, const char *lang, int audiofd, int ctrlfd);
63
64 /* says digits of a string
65  * \param chan channel to act upon
66  * \param num string to speak
67  * \param ints which dtmf to interrupt on
68  * \param lang language to speak in
69  * Vocally says the digits of a given string
70  * Returns 0 on success, dtmf if interrupted, -1 on failure
71  */
72 int ast_say_digit_str(struct ast_channel *chan, const char *num, const char *ints, const char *lang);
73 int ast_say_digit_str_full(struct ast_channel *chan, const char *num, const char *ints, const char *lang, int audiofd, int ctrlfd);
74 int ast_say_character_str(struct ast_channel *chan, const char *num, const char *ints, const char *lang);
75 int ast_say_character_str_full(struct ast_channel *chan, const char *num, const char *ints, const char *lang, int audiofd, int ctrlfd);
76 int ast_say_phonetic_str(struct ast_channel *chan, const char *num, const char *ints, const char *lang);
77 int ast_say_phonetic_str_full(struct ast_channel *chan, const char *num, const char *ints, const char *lang, int audiofd, int ctrlfd);
78
79 int ast_say_datetime(struct ast_channel *chan, time_t t, const char *ints, const char *lang);
80
81 int ast_say_time(struct ast_channel *chan, time_t t, const char *ints, const char *lang);
82
83 int ast_say_date(struct ast_channel *chan, time_t t, const char *ints, const char *lang);
84
85 int ast_say_datetime_from_now(struct ast_channel *chan, time_t t, const char *ints, const char *lang);
86
87 int ast_say_date_with_format(struct ast_channel *chan, time_t t, const char *ints, const char *lang, const char *format, const char *timezone);
88
89 #if defined(__cplusplus) || defined(c_plusplus)
90 }
91 #endif
92
93 #endif