diff options
author | Kevin P. Fleming <kpfleming@digium.com> | 2005-05-15 17:45:30 +0000 |
---|---|---|
committer | Kevin P. Fleming <kpfleming@digium.com> | 2005-05-15 17:45:30 +0000 |
commit | fa60672d5838355d98f81fb85ba245d517ae6991 (patch) | |
tree | 0dca6952bac0dc48b1b51a445fb7c60fd5caf1ff /funcs/func_language.c | |
parent | bb1f05fba7a8256a2e7c7016c0a2a035bc6eb8b5 (diff) |
add dialplan functions for Caller ID, language and timeouts (bug #4219, with mods)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5679 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'funcs/func_language.c')
-rwxr-xr-x | funcs/func_language.c | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/funcs/func_language.c b/funcs/func_language.c new file mode 100755 index 000000000..2584e6261 --- /dev/null +++ b/funcs/func_language.c @@ -0,0 +1,60 @@ +/* + * Asterisk -- A telephony toolkit for Linux. + * + * Language related dialplan functions + * + * Copyright (C) 2005, Digium, Inc. + * + * This program is free software, distributed under the terms of + * the GNU General Public License + */ + +#include <stdlib.h> +#include <string.h> +#include <sys/types.h> + +#include "asterisk/channel.h" +#include "asterisk/pbx.h" +#include "asterisk/logger.h" +#include "asterisk/utils.h" +#include "asterisk/app.h" + +static char *builtin_function_language_read(struct ast_channel *chan, char *cmd, char *data, char *buf, size_t len) +{ + ast_copy_string(buf, chan->language, len); + + return buf; +} + +static void builtin_function_language_write(struct ast_channel *chan, char *cmd, char *data, const char *value) +{ + if (value) + ast_copy_string(chan->language, value, sizeof(chan->language)); +} + +#ifndef BUILTIN_FUNC +static +#endif +struct ast_custom_function language_function = { + .name = "LANGUAGE", + .synopsis = "Gets or sets the channel's language.", + .syntax = "LANGUAGE()", + .desc = "Gets or sets the channel language. This information is used for the\n" + "syntax in generation of numbers, and to choose a natural language file\n" + "when available. For example, if language is set to 'fr' and the file\n" + "'demo-congrats' is requested to be played, if the file\n" + "'fr/demo-congrats' exists, then it will play that file, and if not\n" + "will play the normal 'demo-congrats'. For some language codes,\n" + "changing the language also changes the syntax of some Asterisk\n" + "functions, like SayNumber.\n", + .read = builtin_function_language_read, + .write = builtin_function_language_write, +}; + +/* +Local Variables: +mode: C +c-file-style: "linux" +indent-tabs-mode: nil +End: +*/ |