ari: Provide the caller ID RDNIS for the channels
Provide the caller ID RDNIS when available. This will allow an
application to follow the redirect.
(cherry picked from commit 3c9e7ad4ba
)
This commit is contained in:
parent
79bab53afd
commit
97042e0a3a
|
@ -1323,6 +1323,10 @@ struct ast_json *ast_channel_snapshot_to_json(
|
|||
"creationtime", ast_json_timeval(snapshot->base->creationtime, NULL),
|
||||
"language", snapshot->base->language);
|
||||
|
||||
if (!ast_strlen_zero(snapshot->caller->rdnis)) {
|
||||
ast_json_object_set(json_chan, "caller_rdnis", ast_json_string_create(snapshot->caller->rdnis));
|
||||
}
|
||||
|
||||
if (snapshot->ari_vars && !AST_LIST_EMPTY(snapshot->ari_vars)) {
|
||||
ast_json_object_set(json_chan, "channelvars", ast_json_channel_vars(snapshot->ari_vars));
|
||||
}
|
||||
|
|
|
@ -1067,6 +1067,15 @@ int ast_ari_validate_channel(struct ast_json *json)
|
|||
res = 0;
|
||||
}
|
||||
} else
|
||||
if (strcmp("caller_rdnis", ast_json_object_iter_key(iter)) == 0) {
|
||||
int prop_is_valid;
|
||||
prop_is_valid = ast_ari_validate_string(
|
||||
ast_json_object_iter_value(iter));
|
||||
if (!prop_is_valid) {
|
||||
ast_log(LOG_ERROR, "ARI Channel field caller_rdnis failed validation\n");
|
||||
res = 0;
|
||||
}
|
||||
} else
|
||||
if (strcmp("channelvars", ast_json_object_iter_key(iter)) == 0) {
|
||||
int prop_is_valid;
|
||||
prop_is_valid = ast_ari_validate_object(
|
||||
|
|
|
@ -1346,6 +1346,7 @@ ari_validator ast_ari_validate_application_fn(void);
|
|||
* Channel
|
||||
* - accountcode: string (required)
|
||||
* - caller: CallerID (required)
|
||||
* - caller_rdnis: string
|
||||
* - channelvars: object
|
||||
* - connected: CallerID (required)
|
||||
* - creationtime: Date (required)
|
||||
|
|
|
@ -2187,6 +2187,10 @@
|
|||
"required": false,
|
||||
"type": "object",
|
||||
"description": "Channel variables"
|
||||
},
|
||||
"caller_rdnis": {
|
||||
"type": "string",
|
||||
"description": "The Caller ID RDNIS"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue