From b9a6dbf587667f0e5105efe6794433bc49ccafa7 Mon Sep 17 00:00:00 2001
From: Joshua Colp <jcolp@digium.com>
Date: Tue, 11 Mar 2008 20:36:14 +0000
Subject: [PATCH] Dial a device even if it's state is unknown. (closes issue
 #12184) Reported by: bluecrow76 Patches:      
 asterisk-svn-app_page.c.devicestate_unknown.diff uploaded by bluecrow76
 (license 270)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@107710 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 apps/app_page.c | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/apps/app_page.c b/apps/app_page.c
index 2ea367edde..5db858ce94 100644
--- a/apps/app_page.c
+++ b/apps/app_page.c
@@ -124,9 +124,14 @@ static int page_exec(struct ast_channel *chan, void *data)
 		}
 
 		/* Ensure device is not in use if skip option is enabled */
-		if (ast_test_flag(&flags, PAGE_SKIP) && (state = ast_device_state(tech)) != AST_DEVICE_NOT_INUSE) {
-			ast_log(LOG_WARNING, "Destination '%s' has device state '%s'.\n", tech, devstate2str(state));
-			continue;
+		if (ast_test_flag(&flags, PAGE_SKIP)) {
+			state = ast_device_state(tech);
+			if (state == AST_DEVICE_UNKNOWN) {
+				ast_log(LOG_WARNING, "Destination '%s' has device state '%s'. Paging anyway.\n", tech, devstate2str(state));
+			} else if (state != AST_DEVICE_NOT_INUSE) {
+				ast_log(LOG_WARNING, "Destination '%s' has device state '%s'.\n", tech, devstate2str(state));
+				continue;
+			}
 		}
 
 		*resource++ = '\0';
-- 
GitLab