diff options
author | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-02-12 04:28:58 +0000 |
---|---|---|
committer | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-02-12 04:28:58 +0000 |
commit | 5d9ed5739aab2b302efc178d21e6c75672369db3 (patch) | |
tree | 5c4270c1ac3d265b96361d98722a75b947f2f8c6 /apps | |
parent | 9f87dd693e9e74816b913a157fdcdefa3d7a2e56 (diff) |
major dialplan functions update
deprecate LANGUAGE() and MUSICCLASS(), in favor of CHANNEL()
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@9674 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps')
-rw-r--r-- | apps/app_curl.c | 19 | ||||
-rw-r--r-- | apps/app_hasnewvoicemail.c | 13 | ||||
-rw-r--r-- | apps/app_queue.c | 17 |
3 files changed, 19 insertions, 30 deletions
diff --git a/apps/app_curl.c b/apps/app_curl.c index c1736969b..1ef205e68 100644 --- a/apps/app_curl.c +++ b/apps/app_curl.c @@ -1,7 +1,7 @@ /* * Asterisk -- An open source telephony toolkit. * - * Copyright (C) 2004 - 2005, Tilghman Lesher + * Copyright (C) 2004 - 2006, Tilghman Lesher * * Tilghman Lesher <curl-20050919@the-tilghman.com> * and Brian Wilkins <bwilkins@cfl.rr.com> (Added POST option) @@ -109,10 +109,9 @@ static int curl_internal(struct MemoryStruct *chunk, char *url, char *post) return 0; } -static char *acf_curl_exec(struct ast_channel *chan, char *cmd, char *data, char *buf, size_t len) +static int acf_curl_exec(struct ast_channel *chan, char *cmd, char *info, char *buf, size_t len) { struct localuser *u; - char *info; struct MemoryStruct chunk = { NULL, 0 }; AST_DECLARE_APP_ARGS(args, AST_APP_ARG(url); @@ -121,21 +120,16 @@ static char *acf_curl_exec(struct ast_channel *chan, char *cmd, char *data, char *buf = '\0'; - if (ast_strlen_zero(data)) { + if (ast_strlen_zero(info)) { ast_log(LOG_WARNING, "CURL requires an argument (URL)\n"); - return buf; + return -1; } LOCAL_USER_ACF_ADD(u); - if (!(info = ast_strdupa(data))) { - LOCAL_USER_REMOVE(u); - return buf; - } - AST_STANDARD_APP_ARGS(args, info); - if (! curl_internal(&chunk, args.url, args.postdata)) { + if (!curl_internal(&chunk, args.url, args.postdata)) { if (chunk.memory) { chunk.memory[chunk.size] = '\0'; if (chunk.memory[chunk.size - 1] == 10) @@ -149,7 +143,8 @@ static char *acf_curl_exec(struct ast_channel *chan, char *cmd, char *data, char } LOCAL_USER_REMOVE(u); - return buf; + + return 0; } struct ast_custom_function acf_curl = { diff --git a/apps/app_hasnewvoicemail.c b/apps/app_hasnewvoicemail.c index f2350ebcd..535f4cd2b 100644 --- a/apps/app_hasnewvoicemail.c +++ b/apps/app_hasnewvoicemail.c @@ -1,7 +1,7 @@ /* * Asterisk -- An open source telephony toolkit. * - * Changes Copyright (c) 2004 - 2005 Todd Freeman <freeman@andrews.edu> + * Changes Copyright (c) 2004 - 2006 Todd Freeman <freeman@andrews.edu> * * 95% based on HasNewVoicemail by: * @@ -178,10 +178,10 @@ static int hasvoicemail_exec(struct ast_channel *chan, void *data) return 0; } -static char *acf_vmcount_exec(struct ast_channel *chan, char *cmd, char *data, char *buf, size_t len) +int acf_vmcount_exec(struct ast_channel *chan, char *cmd, char *argsstr, char *buf, size_t len) { struct localuser *u; - char *argsstr, *context; + char *context; AST_DECLARE_APP_ARGS(args, AST_APP_ARG(vmbox); AST_APP_ARG(folder); @@ -191,11 +191,6 @@ static char *acf_vmcount_exec(struct ast_channel *chan, char *cmd, char *data, c buf[0] = '\0'; - if (!(argsstr = ast_strdupa(data))) { - LOCAL_USER_REMOVE(u); - return buf; - } - AST_STANDARD_APP_ARGS(args, argsstr); if (strchr(args.vmbox, '@')) { @@ -213,7 +208,7 @@ static char *acf_vmcount_exec(struct ast_channel *chan, char *cmd, char *data, c LOCAL_USER_REMOVE(u); - return buf; + return 0; } struct ast_custom_function acf_vmcount = { diff --git a/apps/app_queue.c b/apps/app_queue.c index e1acd27b6..d9ca0d72d 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -1,7 +1,7 @@ /* * Asterisk -- An open source telephony toolkit. * - * Copyright (C) 1999 - 2005, Digium, Inc. + * Copyright (C) 1999 - 2006, Digium, Inc. * * Mark Spencer <markster@digium.com> * @@ -3142,19 +3142,18 @@ check_turns: return res; } -static char *queue_function_qac(struct ast_channel *chan, char *cmd, char *data, char *buf, size_t len) +static int queue_function_qac(struct ast_channel *chan, char *cmd, char *data, char *buf, size_t len) { int count = 0; struct ast_call_queue *q; struct localuser *u; struct member *m; - - ast_copy_string(buf, "0", len); + buf[0] = '\0'; if (ast_strlen_zero(data)) { ast_log(LOG_ERROR, "%s requires an argument: queuename\n", cmd); - return buf; + return -1; } LOCAL_USER_ACF_ADD(u); @@ -3183,10 +3182,10 @@ static char *queue_function_qac(struct ast_channel *chan, char *cmd, char *data, snprintf(buf, len, "%d", count); LOCAL_USER_REMOVE(u); - return buf; + return 0; } -static char *queue_function_queuememberlist(struct ast_channel *chan, char *cmd, char *data, char *buf, size_t len) +static int queue_function_queuememberlist(struct ast_channel *chan, char *cmd, char *data, char *buf, size_t len) { struct localuser *u; struct ast_call_queue *q; @@ -3197,7 +3196,7 @@ static char *queue_function_queuememberlist(struct ast_channel *chan, char *cmd, if (ast_strlen_zero(data)) { ast_log(LOG_ERROR, "QUEUE_MEMBER_LIST requires an argument: queuename\n"); - return buf; + return -1; } LOCAL_USER_ACF_ADD(u); @@ -3236,7 +3235,7 @@ static char *queue_function_queuememberlist(struct ast_channel *chan, char *cmd, /* We should already be terminated, but let's make sure. */ buf[len - 1] = '\0'; LOCAL_USER_REMOVE(u); - return buf; + return 0; } static struct ast_custom_function queueagentcount_function = { |