[asterisk-commits] irroot: branch irroot/app_queue-trunk r322185 - in /team/irroot/app_queue-tru...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Tue Jun 7 04:54:46 CDT 2011
Author: irroot
Date: Tue Jun 7 04:54:42 2011
New Revision: 322185
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=322185
Log:
Doc changes / small fixup for app_queue
Modified:
team/irroot/app_queue-trunk/CHANGES
team/irroot/app_queue-trunk/UPGRADE.txt
team/irroot/app_queue-trunk/apps/app_queue.c
Modified: team/irroot/app_queue-trunk/CHANGES
URL: http://svnview.digium.com/svn/asterisk/team/irroot/app_queue-trunk/CHANGES?view=diff&rev=322185&r1=322184&r2=322185
==============================================================================
--- team/irroot/app_queue-trunk/CHANGES (original)
+++ team/irroot/app_queue-trunk/CHANGES Tue Jun 7 04:54:42 2011
@@ -436,6 +436,15 @@
supports sending the event arguments to 5 individual fields, although it
will fallback to the previous data definition, if the new table layout is
not found.
+ * Added genral option negitive_penalty_invalid default off. when set
+ members are seen as invalid/logged out when there penalty is negative.
+ for realtime members when set remove from queue will set penalty to -1.
+ * Added queue option autopausedelay when autopause is enabled it will be
+ delayed for this number of seconds since last successful call if there
+ was no prior call the agent will be autopaused immeadiately.
+ * Added member option ignorebusy this when set and ringinuse is not
+ will allow per member control of multiple calls as ringinuse does for
+ the Queue.
mISDN channel driver (chan_misdn) changes
----------------------------------------
Modified: team/irroot/app_queue-trunk/UPGRADE.txt
URL: http://svnview.digium.com/svn/asterisk/team/irroot/app_queue-trunk/UPGRADE.txt?view=diff&rev=322185&r1=322184&r2=322185
==============================================================================
--- team/irroot/app_queue-trunk/UPGRADE.txt (original)
+++ team/irroot/app_queue-trunk/UPGRADE.txt Tue Jun 7 04:54:42 2011
@@ -50,5 +50,9 @@
- the autoservice now defaults to being on by default
- autoservice_start() and autoservice_start() no longer return a value.
+Queue:
+ - Mark QUEUE_MEMBER_PENALTY Deprecated it never worked for realtime members
+ - QUEUE_MEMBER is now R/W supporting setting paused, ignorebusy and penalty.
+
===========================================================
===========================================================
Modified: team/irroot/app_queue-trunk/apps/app_queue.c
URL: http://svnview.digium.com/svn/asterisk/team/irroot/app_queue-trunk/apps/app_queue.c?view=diff&rev=322185&r1=322184&r2=322185
==============================================================================
--- team/irroot/app_queue-trunk/apps/app_queue.c (original)
+++ team/irroot/app_queue-trunk/apps/app_queue.c Tue Jun 7 04:54:42 2011
@@ -672,6 +672,7 @@
</syntax>
<description>
<para>Gets or sets queue members penalty.</para>
+ <warning><para>This function has been deprecated in favor of the <literal>QUEUE_MEMBER()</literal> function</para></warning>
</description>
<see-also>
<ref type="application">Queue</ref>
@@ -3070,8 +3071,9 @@
(!tmp->lastqueue && qe->parent->wrapuptime && (time(NULL) - tmp->lastcall < qe->parent->wrapuptime))) {
ast_debug(1, "Wrapuptime not yet expired on queue %s for %s\n",
(tmp->lastqueue ? tmp->lastqueue->name : qe->parent->name), tmp->interface);
- if (qe->chan->cdr)
+ if (qe->chan->cdr) {
ast_cdr_busy(qe->chan->cdr);
+ }
tmp->stillgoing = 0;
(*busies)++;
return 0;
@@ -3088,8 +3090,9 @@
}
if ((tmp->member->status != AST_DEVICE_NOT_INUSE) && (tmp->member->status != AST_DEVICE_UNKNOWN)) {
ast_debug(1, "%s in use, can't receive call\n", tmp->interface);
- if (qe->chan->cdr)
+ if (qe->chan->cdr) {
ast_cdr_busy(qe->chan->cdr);
+ }
tmp->stillgoing = 0;
return 0;
}
@@ -3097,8 +3100,9 @@
if (use_weight && compare_weight(qe->parent,tmp->member)) {
ast_debug(1, "Priority queue delaying call to %s:%s\n", qe->parent->name, tmp->interface);
- if (qe->chan->cdr)
+ if (qe->chan->cdr) {
ast_cdr_busy(qe->chan->cdr);
+ }
tmp->stillgoing = 0;
(*busies)++;
return 0;
@@ -3113,8 +3117,9 @@
/* Request the peer */
tmp->chan = ast_request(tech, qe->chan->nativeformats, qe->chan, location, &status);
if (!tmp->chan) { /* If we can't, just go on to the next call */
- if (qe->chan->cdr)
+ if (qe->chan->cdr) {
ast_cdr_busy(qe->chan->cdr);
+ }
tmp->stillgoing = 0;
ao2_lock(qe->parent);
@@ -4774,8 +4779,9 @@
else
ast_moh_stop(qe->chan);
/* If appropriate, log that we have a destination channel */
- if (qe->chan->cdr)
+ if (qe->chan->cdr) {
ast_cdr_setdestchan(qe->chan->cdr, peer->name);
+ }
/* Make sure channels are compatible */
res = ast_channel_make_compatible(qe->chan, peer);
if (res < 0) {
@@ -4855,10 +4861,11 @@
if (mixmonapp) {
ast_debug(1, "Starting MixMonitor as requested.\n");
if (!monitorfilename) {
- if (qe->chan->cdr)
+ if (qe->chan->cdr) {
ast_copy_string(tmpid, qe->chan->cdr->uniqueid, sizeof(tmpid));
- else
+ } else {
snprintf(tmpid, sizeof(tmpid), "chan-%lx", ast_random());
+ }
} else {
const char *m = monitorfilename;
for (p = tmpid2; p < tmpid2 + sizeof(tmpid2) - 1; p++, m++) {
@@ -4925,12 +4932,13 @@
ast_debug(1, "Arguments being passed to MixMonitor: %s\n", mixmonargs);
/* We purposely lock the CDR so that pbx_exec does not update the application data */
- if (qe->chan->cdr)
+ if (qe->chan->cdr) {
ast_set_flag(qe->chan->cdr, AST_CDR_FLAG_LOCKED);
+ }
pbx_exec(qe->chan, mixmonapp, mixmonargs);
- if (qe->chan->cdr)
+ if (qe->chan->cdr) {
ast_clear_flag(qe->chan->cdr, AST_CDR_FLAG_LOCKED);
-
+ }
} else {
ast_log(LOG_WARNING, "Asked to run MixMonitor on this call, but cannot find the MixMonitor app!\n");
}
More information about the asterisk-commits
mailing list