Sun Feb 23 07:00:00 CET 2003
[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 /*! 
28  * \param chan channel to say them number on
29  * \param num number to say on the channel
30  * \param ints which dtmf to interrupt on
31  * \param lang language to speak the number
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, char *ints, char *lang);
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, char *ints, char *lang, int audiofd, int ctrlfd);
39
40 //! says digits
41 /*!
42  * \param chan channel to act upon
43  * \param num number to speak
44  * \param ints which dtmf to interrupt on
45  * \param lang language to speak
46  * Vocally says digits of a given number
47  * Returns 0 on success, dtmf if interrupted, -1 on failure
48  */
49 int ast_say_digits(struct ast_channel *chan, int num, char *ints, char *lang);
50 int ast_say_digits_full(struct ast_channel *chan, int num, char *ints, char *lang, int audiofd, int ctrlfd);
51
52 //! says digits of a string
53 /*! 
54  * \param chan channel to act upon
55  * \param num string to speak
56  * \param ints which dtmf to interrupt on
57  * \param lang language to speak in
58  * Vocally says the digits of a given string
59  * Returns 0 on success, dtmf if interrupted, -1 on failure
60  */
61 int ast_say_digit_str(struct ast_channel *chan, char *num, char *ints, char *lang);
62 int ast_say_digit_str_full(struct ast_channel *chan, char *num, char *ints, char *lang, int audiofd, int ctrlfd);
63
64 int ast_say_datetime(struct ast_channel *chan, time_t t, char *ints, char *lang);
65
66 int ast_say_time(struct ast_channel *chan, time_t t, char *ints, char *lang);
67
68 int ast_say_date(struct ast_channel *chan, time_t t, char *ints, char *lang);
69
70 int ast_say_datetime_from_now(struct ast_channel *chan, time_t t, char *ints, char *lang);
71
72 #if defined(__cplusplus) || defined(c_plusplus)
73 }
74 #endif
75
76 #endif