diff --git a/main/pbx.c b/main/pbx.c
index ba985199f999ee293c237fa50b3a4b1fa6374bb6..d6b11c71d0d0b96ded3140a3d092e0bee5bc1d7d 100644
--- a/main/pbx.c
+++ b/main/pbx.c
@@ -7367,6 +7367,7 @@ static char *handle_show_hints(struct ast_cli_entry *e, int cmd, struct ast_cli_
 	int num = 0;
 	int watchers;
 	struct ao2_iterator i;
+	char buf[AST_MAX_EXTENSION+AST_MAX_CONTEXT+2];
 
 	switch (cmd) {
 	case CLI_INIT:
@@ -7395,11 +7396,17 @@ static char *handle_show_hints(struct ast_cli_entry *e, int cmd, struct ast_cli_
 			continue;
 		}
 		watchers = ao2_container_count(hint->callbacks);
-		ast_cli(a->fd, "   %20s@%-20.20s: %-20.20s  State:%-15.15s Watchers %2d\n",
+		sprintf(buf, "%s@%s",
 			ast_get_extension_name(hint->exten),
-			ast_get_context_name(ast_get_extension_context(hint->exten)),
+			ast_get_context_name(ast_get_extension_context(hint->exten)));
+
+		ast_cli(a->fd, "%-20.20s: %-20.20s  State:%-15.15s Presence:%-15.15s Watchers %2d\n",
+			buf,
 			ast_get_extension_app(hint->exten),
-			ast_extension_state2str(hint->laststate), watchers);
+			ast_extension_state2str(hint->laststate),
+			ast_extension_state2str(hint->last_presence_state),
+			watchers);
+
 		ao2_unlock(hint);
 		num++;
 	}