diff --git a/apps/app_queue.c b/apps/app_queue.c
index db98cea613fcc96ecfb19e73bb2cb59eb9b3899f..eddf5c70ec7afc5ae56d75cc672e435e05b17ca0 100644
--- a/apps/app_queue.c
+++ b/apps/app_queue.c
@@ -2605,9 +2605,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;