From c63ab5580ccb31128170a800ed50f154051a8718 Mon Sep 17 00:00:00 2001 From: Ivan Poddubnyi Date: Fri, 13 Sep 2019 15:02:11 +0200 Subject: [PATCH] app_queue: Fix conversion of complex extension states into device states Queue members using dialplan hints as a state interface must handle INUSE+RINGING hint as RINGINUSE devstate, and INUSE + ONHOLD as INUSE. ASTERISK-28369 Change-Id: I127e06943d4b4f1afc518f9e396de77449992b9f --- apps/app_queue.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/apps/app_queue.c b/apps/app_queue.c index 0a03350697..e0bec9c668 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -2608,9 +2608,15 @@ static int extensionstate2devicestate(int state) case AST_EXTENSION_RINGING: state = AST_DEVICE_RINGING; break; + case AST_EXTENSION_INUSE | AST_EXTENSION_RINGING: + state = AST_DEVICE_RINGINUSE; + break; case AST_EXTENSION_ONHOLD: state = AST_DEVICE_ONHOLD; break; + case AST_EXTENSION_INUSE | AST_EXTENSION_ONHOLD: + state = AST_DEVICE_INUSE; + break; case AST_EXTENSION_UNAVAILABLE: state = AST_DEVICE_UNAVAILABLE; break;