[asterisk-commits] kharwell: trunk r429209 - in /trunk: ./ main/ res/ari/ rest-api/api-docs/

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Tue Dec 9 14:20:31 CST 2014


Author: kharwell
Date: Tue Dec  9 14:20:27 2014
New Revision: 429209

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=429209
Log:
ARI/AMI: Include language in standard channel snapshot output

The channel "language" was already part of a channel snapshot, however is was
not sent out over AMI or ARI. This patch makes it so the channel "language" is
included in the appropriate AMI or ARI events.

ASTERISK-24553 #close
Reported by: Matt Jordan
Review: https://reviewboard.asterisk.org/r/4245/
........

Merged revisions 429204 from http://svn.asterisk.org/svn/asterisk/branches/12
........

Merged revisions 429206 from http://svn.asterisk.org/svn/asterisk/branches/13

Modified:
    trunk/   (props changed)
    trunk/main/manager_channels.c
    trunk/main/stasis_channels.c
    trunk/res/ari/ari_model_validators.c
    trunk/res/ari/ari_model_validators.h
    trunk/rest-api/api-docs/channels.json

Propchange: trunk/
------------------------------------------------------------------------------
Binary property 'branch-13-merged' - no diff available.

Modified: trunk/main/manager_channels.c
URL: http://svnview.digium.com/svn/asterisk/trunk/main/manager_channels.c?view=diff&rev=429209&r1=429208&r2=429209
==============================================================================
--- trunk/main/manager_channels.c (original)
+++ trunk/main/manager_channels.c Tue Dec  9 14:20:27 2014
@@ -426,6 +426,7 @@
 		"%sCallerIDName: %s\r\n"
 		"%sConnectedLineNum: %s\r\n"
 		"%sConnectedLineName: %s\r\n"
+		"%sLanguage: %s\r\n"
 		"%sAccountCode: %s\r\n"
 		"%sContext: %s\r\n"
 		"%sExten: %s\r\n"
@@ -438,6 +439,7 @@
 		prefix, S_OR(snapshot->caller_name, "<unknown>"),
 		prefix, S_OR(snapshot->connected_number, "<unknown>"),
 		prefix, S_OR(snapshot->connected_name, "<unknown>"),
+		prefix, snapshot->language,
 		prefix, snapshot->accountcode,
 		prefix, snapshot->context,
 		prefix, snapshot->exten,

Modified: trunk/main/stasis_channels.c
URL: http://svnview.digium.com/svn/asterisk/trunk/main/stasis_channels.c?view=diff&rev=429209&r1=429208&r2=429209
==============================================================================
--- trunk/main/stasis_channels.c (original)
+++ trunk/main/stasis_channels.c Tue Dec  9 14:20:27 2014
@@ -888,7 +888,7 @@
 		/* Broken up into groups of three for readability */
 		"{ s: s, s: s, s: s,"
 		"  s: o, s: o, s: s,"
-		"  s: o, s: o }",
+		"  s: o, s: o, s: s }",
 		/* First line */
 		"id", snapshot->uniqueid,
 		"name", snapshot->name,
@@ -902,7 +902,8 @@
 		/* Third line */
 		"dialplan", ast_json_dialplan_cep(
 			snapshot->context, snapshot->exten, snapshot->priority),
-		"creationtime", ast_json_timeval(snapshot->creationtime, NULL));
+		"creationtime", ast_json_timeval(snapshot->creationtime, NULL),
+		"language", snapshot->language);
 
 	return ast_json_ref(json_chan);
 }

Modified: trunk/res/ari/ari_model_validators.c
URL: http://svnview.digium.com/svn/asterisk/trunk/res/ari/ari_model_validators.c?view=diff&rev=429209&r1=429208&r2=429209
==============================================================================
--- trunk/res/ari/ari_model_validators.c (original)
+++ trunk/res/ari/ari_model_validators.c Tue Dec  9 14:20:27 2014
@@ -786,6 +786,7 @@
 	int has_creationtime = 0;
 	int has_dialplan = 0;
 	int has_id = 0;
+	int has_language = 0;
 	int has_name = 0;
 	int has_state = 0;
 
@@ -850,6 +851,16 @@
 				res = 0;
 			}
 		} else
+		if (strcmp("language", ast_json_object_iter_key(iter)) == 0) {
+			int prop_is_valid;
+			has_language = 1;
+			prop_is_valid = ast_ari_validate_string(
+				ast_json_object_iter_value(iter));
+			if (!prop_is_valid) {
+				ast_log(LOG_ERROR, "ARI Channel field language failed validation\n");
+				res = 0;
+			}
+		} else
 		if (strcmp("name", ast_json_object_iter_key(iter)) == 0) {
 			int prop_is_valid;
 			has_name = 1;
@@ -905,6 +916,11 @@
 
 	if (!has_id) {
 		ast_log(LOG_ERROR, "ARI Channel missing required field id\n");
+		res = 0;
+	}
+
+	if (!has_language) {
+		ast_log(LOG_ERROR, "ARI Channel missing required field language\n");
 		res = 0;
 	}
 

Modified: trunk/res/ari/ari_model_validators.h
URL: http://svnview.digium.com/svn/asterisk/trunk/res/ari/ari_model_validators.h?view=diff&rev=429209&r1=429208&r2=429209
==============================================================================
--- trunk/res/ari/ari_model_validators.h (original)
+++ trunk/res/ari/ari_model_validators.h Tue Dec  9 14:20:27 2014
@@ -1242,6 +1242,7 @@
  * - creationtime: Date (required)
  * - dialplan: DialplanCEP (required)
  * - id: string (required)
+ * - language: string (required)
  * - name: string (required)
  * - state: string (required)
  * Dialed

Modified: trunk/rest-api/api-docs/channels.json
URL: http://svnview.digium.com/svn/asterisk/trunk/rest-api/api-docs/channels.json?view=diff&rev=429209&r1=429208&r2=429209
==============================================================================
--- trunk/rest-api/api-docs/channels.json (original)
+++ trunk/rest-api/api-docs/channels.json Tue Dec  9 14:20:27 2014
@@ -1465,6 +1465,11 @@
 					"required": true,
 					"type": "Date",
 					"description": "Timestamp when channel was created"
+				},
+				"language": {
+					"required": true,
+					"type": "string",
+					"description": "The default spoken language"
 				}
 			}
 		}




More information about the asterisk-commits mailing list