res/res_ari: Add additional hangup reasons

The ARI DELETE /channels command takes a "reason" parameter
Previously, there were only five reasons implemented
This patch adds more reasons to choose from for more
complex setups

ASTERISK-28198 #close

Change-Id: I85996f1076c9946d65c778413f040a845a90fecc
This commit is contained in:
Sebastian Damm 2018-12-06 18:23:50 +01:00
parent 29af7f37ac
commit 59cf552dd3
2 changed files with 24 additions and 0 deletions

View File

@ -884,6 +884,22 @@ void ast_ari_channels_hangup(struct ast_variable *headers,
cause = AST_CAUSE_CONGESTION;
} else if (!strcmp(args->reason, "no_answer")) {
cause = AST_CAUSE_NOANSWER;
} else if (!strcmp(args->reason, "timeout")) {
cause = AST_CAUSE_NO_USER_RESPONSE;
} else if (!strcmp(args->reason, "rejected")) {
cause = AST_CAUSE_CALL_REJECTED;
} else if (!strcmp(args->reason, "unallocated")) {
cause = AST_CAUSE_UNALLOCATED;
} else if (!strcmp(args->reason, "normal_unspecified")) {
cause = AST_CAUSE_NORMAL_UNSPECIFIED;
} else if (!strcmp(args->reason, "number_incomplete")) {
cause = AST_CAUSE_INVALID_NUMBER_FORMAT;
} else if (!strcmp(args->reason, "codec_mismatch")) {
cause = AST_CAUSE_BEARERCAPABILITY_NOTAVAIL;
} else if (!strcmp(args->reason, "interworking")) {
cause = AST_CAUSE_INTERWORKING;
} else if (!strcmp(args->reason, "failure")) {
cause = AST_CAUSE_FAILURE;
} else if(!strcmp(args->reason, "answered_elsewhere")) {
cause = AST_CAUSE_ANSWERED_ELSEWHERE;
} else {

View File

@ -421,6 +421,14 @@
"busy",
"congestion",
"no_answer",
"timeout",
"rejected",
"unallocated",
"normal_unspecified",
"number_incomplete",
"codec_mismatch",
"interworking",
"failure",
"answered_elsewhere"
]
}