--- asterisk/apps/app_queue.c.jmt 2004-03-08 10:15:35.763673696 -0500 +++ asterisk/apps/app_queue.c 2004-03-08 10:28:09.450411226 -0500 @@ -988,6 +988,9 @@ ast_log(LOG_NOTICE, "Removed interface '%s' to queue '%s'\n", interface, queuename); res = 0 ; + + manager_event(EVENT_FLAG_CALL, "RemoveQueueAgent", "Queue: %s\r\nChannel: %s\r\n", + queuename, interface); } else ast_log(LOG_WARNING, "Unable to remove interface '%s' from queue '%s': " @@ -1068,6 +1071,9 @@ ast_log(LOG_NOTICE, "Added interface '%s' to queue '%s'\n", interface, queuename); res = 0 ; + + manager_event(EVENT_FLAG_CALL, "AddQueueAgent", "Queue: %s\r\nChannel: %s\r\n", + queuename, interface); } else ast_log(LOG_WARNING, "Unable to add interface '%s' to queue '%s': " @@ -1465,6 +1471,7 @@ char idText[256] = ""; struct ast_call_queue *q; struct queue_ent *qe; + struct member *mem; astman_send_ack(s, m, "Queue status will follow"); time(&now); ast_mutex_lock(&qlock); @@ -1481,11 +1488,15 @@ "%s" "\r\n", q->name, q->maxlen, q->count,idText); -#if 0 - /* Do we care about queue members? */ + for (mem = q->members; mem; mem = mem->next) - ast_cli(fd, " %s/%s\n", mem->tech, mem->loc); -#endif + ast_cli(s->fd, "Event: QueueAgent\r\n" + "Queue: %s\r\n" + "Channel: %s/%s\r\n" + "%s" + "\r\n", + q->name, mem->tech, mem->loc, idText); + pos = 1; for (qe = q->head; qe; qe = qe->next) ast_cli(s->fd, "Event: QueueMember\r\n"