diff options
-rwxr-xr-x | README.variables | 2 | ||||
-rwxr-xr-x | doc/README.variables | 2 | ||||
-rwxr-xr-x | pbx.c | 3 |
3 files changed, 7 insertions, 0 deletions
diff --git a/README.variables b/README.variables index 95485ba7f..dab5faca9 100755 --- a/README.variables +++ b/README.variables @@ -44,6 +44,8 @@ ${UNIQUEID} Current call unique identifier ${DNID} Dialed Number Identifier ${RDNIS} Redirected Dial Number ID Service ${HANGUPCAUSE} Hangup cause on last PRI hangup +${ACCOUNTCODE} Account code (if specified) + ${SIPDOMAIN} SIP destination domain of an inbound call (if appropriate) There are two reference modes - reference by value and reference by name. diff --git a/doc/README.variables b/doc/README.variables index 95485ba7f..dab5faca9 100755 --- a/doc/README.variables +++ b/doc/README.variables @@ -44,6 +44,8 @@ ${UNIQUEID} Current call unique identifier ${DNID} Dialed Number Identifier ${RDNIS} Redirected Dial Number ID Service ${HANGUPCAUSE} Hangup cause on last PRI hangup +${ACCOUNTCODE} Account code (if specified) + ${SIPDOMAIN} SIP destination domain of an inbound call (if appropriate) There are two reference modes - reference by value and reference by name. @@ -865,6 +865,9 @@ static void pbx_substitute_variables_temp(struct ast_channel *c,const char *var, } else if (c && !strcmp(var, "HANGUPCAUSE")) { snprintf(workspace, workspacelen -1, "%i", c->hangupcause); *ret = workspace; + } else if (c && !strcmp(var, "ACCOUNTCODE")) { + strncpy(workspace, c->accountcode, workspacelen - 1); + *ret = workspace; } else { if (c) { AST_LIST_TRAVERSE(headp,variables,entries) { |