diff --git a/channels/chan_agent.c b/channels/chan_agent.c
index 585b85f353dc359b0712580f2bea962cc1248688..171b7dd80418ffde99439c2caa01efa84dcbdff3 100644
--- a/channels/chan_agent.c
+++ b/channels/chan_agent.c
@@ -1602,7 +1602,10 @@ static int agents_show(int fd, int argc, char **argv)
 				}
 				online_agents++;
 			} else if (!ast_strlen_zero(p->loginchan)) {
-				snprintf(location, sizeof(location) - 20, "available at '%s'", p->loginchan);
+				if (ast_tvdiff_ms(ast_tvnow(), p->lastdisc) > 0 || !(p->lastdisc.tv_sec)) 
+					snprintf(location, sizeof(location) - 20, "available at '%s'", p->loginchan);
+				else 
+					snprintf(location, sizeof(location) - 20, "wrapping up at '%s'", p->loginchan);
 				talkingto[0] = '\0';
 				online_agents++;
 				if (p->acknowledged)