res_ari: Add support for channel variables in ARI events.

This works the same as for AMI manager variables. Set
"channelvars=foo,bar" in your ari.conf general section, and then the
channel variables "foo" and "bar" (along with their values), will
appear in every Stasis websocket channel event.

ASTERISK-26492 #close
patches:
  ari_vars.diff submitted by Mark Michelson

Change-Id: I5609ba239259577c0948645df776d7f3bc864229
This commit is contained in:
Sebastien Duthil
2016-11-11 11:45:37 -05:00
parent 7540036427
commit c6d755de11
13 changed files with 169 additions and 19 deletions

View File

@@ -1051,6 +1051,15 @@ int ast_ari_validate_channel(struct ast_json *json)
res = 0;
}
} else
if (strcmp("channelvars", ast_json_object_iter_key(iter)) == 0) {
int prop_is_valid;
prop_is_valid = ast_ari_validate_object(
ast_json_object_iter_value(iter));
if (!prop_is_valid) {
ast_log(LOG_ERROR, "ARI Channel field channelvars failed validation\n");
res = 0;
}
} else
if (strcmp("connected", ast_json_object_iter_key(iter)) == 0) {
int prop_is_valid;
has_connected = 1;