mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-05 12:16:00 +00:00
Add new built-in app 'SetAMAFlags'
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3328 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
12
cdr.c
12
cdr.c
@@ -377,6 +377,18 @@ int ast_cdr_setaccount(struct ast_channel *chan, char *account)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int ast_cdr_setamaflags(struct ast_channel *chan, char *flag)
|
||||
{
|
||||
struct ast_cdr *cdr = chan->cdr;
|
||||
int newflag;
|
||||
|
||||
newflag = ast_cdr_amaflags2int(flag);
|
||||
if (newflag) {
|
||||
cdr->amaflags = newflag;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
int ast_cdr_setuserfield(struct ast_channel *chan, char *userfield)
|
||||
{
|
||||
struct ast_cdr *cdr = chan->cdr;
|
||||
|
18
pbx.c
18
pbx.c
@@ -166,6 +166,7 @@ static int pbx_builtin_waitexten(struct ast_channel *, void *);
|
||||
static int pbx_builtin_setlanguage(struct ast_channel *, void *);
|
||||
static int pbx_builtin_resetcdr(struct ast_channel *, void *);
|
||||
static int pbx_builtin_setaccount(struct ast_channel *, void *);
|
||||
static int pbx_builtin_setamaflags(struct ast_channel *, void *);
|
||||
static int pbx_builtin_ringing(struct ast_channel *, void *);
|
||||
static int pbx_builtin_progress(struct ast_channel *, void *);
|
||||
static int pbx_builtin_congestion(struct ast_channel *, void *);
|
||||
@@ -318,6 +319,11 @@ static struct pbx_builtin {
|
||||
{ "SetAccount", pbx_builtin_setaccount,
|
||||
"Sets account code",
|
||||
" SetAccount([account]): Set the channel account code for billing\n"
|
||||
"purposes. Always returns 0.\n" },
|
||||
|
||||
{ "SetAMAFlags", pbx_builtin_setamaflags,
|
||||
"Sets AMA Flags",
|
||||
" SetAMAFlags([flag]): Set the channel AMA Flags for billing\n"
|
||||
"purposes. Always returns 0.\n" },
|
||||
|
||||
{ "SetGlobalVar", pbx_builtin_setglobalvar,
|
||||
@@ -4267,7 +4273,7 @@ static int pbx_builtin_resetcdr(struct ast_channel *chan, void *data)
|
||||
|
||||
static int pbx_builtin_setaccount(struct ast_channel *chan, void *data)
|
||||
{
|
||||
/* Copy the language as specified */
|
||||
/* Copy the account code as specified */
|
||||
if (data)
|
||||
ast_cdr_setaccount(chan, (char *)data);
|
||||
else
|
||||
@@ -4275,6 +4281,16 @@ static int pbx_builtin_setaccount(struct ast_channel *chan, void *data)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int pbx_builtin_setamaflags(struct ast_channel *chan, void *data)
|
||||
{
|
||||
/* Copy the AMA Flags as specified */
|
||||
if (data)
|
||||
ast_cdr_setamaflags(chan, (char *)data);
|
||||
else
|
||||
ast_cdr_setamaflags(chan, "");
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int pbx_builtin_hangup(struct ast_channel *chan, void *data)
|
||||
{
|
||||
/* Just return non-zero and it will hang up */
|
||||
|
Reference in New Issue
Block a user