From d03dbf91a6d16d7cfd4fce2af4dc4ae7c854bd72 Mon Sep 17 00:00:00 2001
From: James Golovich <james@gnuinter.net>
Date: Sun, 22 Feb 2004 05:25:58 +0000
Subject: [PATCH] Add ${LANGUAGE} channel variable (bug #1078)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2210 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 doc/README.variables | 2 +-
 pbx.c                | 3 +++
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/doc/README.variables b/doc/README.variables
index e924a8c2ee..f33e7836f6 100755
--- a/doc/README.variables
+++ b/doc/README.variables
@@ -46,7 +46,7 @@ ${DNID}         Dialed Number Identifier
 ${RDNIS}        Redirected Dial Number ID Service
 ${HANGUPCAUSE}	Asterisk hangup cause
 ${ACCOUNTCODE}  Account code (if specified)
-
+${LANGUAGE}	Current language
 ${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/pbx.c b/pbx.c
index 27a9b1fe24..7e35f00326 100755
--- a/pbx.c
+++ b/pbx.c
@@ -881,6 +881,9 @@ static void pbx_substitute_variables_temp(struct ast_channel *c,const char *var,
         } else if (c && !strcmp(var, "ACCOUNTCODE")) {
           strncpy(workspace, c->accountcode, workspacelen - 1);
           *ret = workspace;
+        } else if (c && !strcmp(var, "LANGUAGE")) {
+          strncpy(workspace, c->language, workspacelen - 1);
+          *ret = workspace;
 	} else {
 		if (c) {
 			AST_LIST_TRAVERSE(headp,variables,entries) {
-- 
GitLab