https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r115320 | mmichelson | 2008-05-05 16:41:34 -0500 (Mon, 05 May 2008) | 13 lines
Don't consider a caller "handled" until the caller is bridged with
a queue member. There was too much of an opportunity for the member
to hang up (either during a delay, announcement, or overly long
agi) between the time that he answered the phone and the time when
he actually was bridged with the caller. The consequence of this
was that if the member hung up in that interval, then proper
abandonment details would not be noted in the queue log if the caller
were to hang up at any point after the member hangup.
(closes issue #12561)
Reported by: ablackthorn
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@115321 65c4cc65-6c06-0410-ace0-fbb531ad65f3
to announce-position, "limit" and "more," as well as a new option,
announce-position-limit. For more information on the use of these options,
see CHANGES or configs/queues.conf.sample.
(closes issue #10991)
Reported by: slavon
Patches:
app_q.diff uploaded by slavon (license 288)
Tested by: slavon, putnopvut
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114906 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r114848 | mmichelson | 2008-04-29 14:40:06 -0500 (Tue, 29 Apr 2008) | 14 lines
Use the MACRO_CONTEXT and MACRO_EXTEN channel variables instead of the channel's macrocontext
and macroexten fields. This is needed because if macros are daisy-chained, the incorrect
context and extension are placed on the new channel. I also added locking to the channel prior
to accessing these variables as noted in trunk's janitor project file.
(closes issue #12549)
Reported by: darren1713
Patches:
app_queue.c.macroextenpatch uploaded by darren1713 (license 116)
(with modifications from me)
Tested by: putnopvut
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114849 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r114133 | qwell | 2008-04-15 11:18:08 -0500 (Tue, 15 Apr 2008) | 8 lines
Allow autofill to work in the general section of queues.conf.
Additionally, don't try to (re)set options when they have empty values in realtime (all unset columns would have an empty value).
(closes issue #12445)
Reported by: atis
Patches:
12445-autofill.diff uploaded by qwell (license 4)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114134 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r114112 | mmichelson | 2008-04-14 11:24:22 -0500 (Mon, 14 Apr 2008) | 9 lines
If the datastore has been moved to another channel due to a masquerade, then
freeing the datastore here causes an eventual double free when the new channel
hangs up. We should only free the datastore if we were able to successfully remove
it from the channel we are referencing (i.e. the datastore was not moved).
(closes issue #12359)
Reported by: pguido
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114113 65c4cc65-6c06-0410-ace0-fbb531ad65f3
The problem was that when the refcount on the queue hit 0, the destructor was
called, and inside the destructor, another function was called which would increase
the refcount back to 1 again and then decrease it again back to 0 for every member
in the queue. This meant that the destructor was being recursively called, leading
to a double free of the queue. This is now fixed by making sure to unlink the
queue from the queues container prior to the final unref of the queue.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@111533 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r109713 | mmichelson | 2008-03-18 15:52:15 -0500 (Tue, 18 Mar 2008) | 12 lines
This patch makes it so that all queue member status changes are handled through device state
code. This removes several problems people were seeing where their queue members would get into
an "unknown" state. Huge props go to atis on this one since he was the one who found the code
section that was causing the problem and proposed the solution. I just wrote what he suggested :)
(closes issue #12127)
Reported by: atis
Patches:
12127v3.patch uploaded by putnopvut (license 60)
Tested by: atis, jvandal
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109714 65c4cc65-6c06-0410-ace0-fbb531ad65f3
allow the list of periodic announcments specified to be played in a random
order instead of being played sequentially.
(closes issue #6681)
Reported by: alt_phil
Tested by: putnopvut
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109621 65c4cc65-6c06-0410-ace0-fbb531ad65f3
actual problems, per se. I also added format attributes to any printf wrapper functions I found that didn't have them. -Wsecurity and -Wmissing-format-attribute added to --enable-dev-mode.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@109447 65c4cc65-6c06-0410-ace0-fbb531ad65f3
was the way that locks are referenced, since the old 1.2 names were still used
in the comments.
(closes issue #11997)
Reported by: snuffy
Patches:
bug_11997_queue_doxy.diff uploaded by snuffy (license 35)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@107068 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Reported by: rizzo
Tested by: murf
Proposal of the changes to be made, and then an announcement of how they were accomplished:
http://lists.digium.com/pipermail/asterisk-dev/2008-February/032065.html
and:
http://lists.digium.com/pipermail/asterisk-dev/2008-March/032124.html
Here is a recap, file by file, of what I have done:
pbx/pbx_config.c
pbx/pbx_ael.c
All funcs that were passed a ptr to the context list, now will ALSO be passed a hashtab ptr to the same set.
Why? because (for the time being), the dialplan is stored in both, to facilitate a quick, low-cost move to
hash-tables to speed up dialplan processing. If it was deemed necessary to pass the context LIST, well, it
is just as necessary to have the TABLE available. This is because the list/table in question might not be
the global one, but temporary ones we would use to stage the dialplan on, and then swap into the global
position when things are ready.
We now have one external function for apps to use, "ast_context_find_or_create()" instead of the pre-existing
"find" and "create", as all existing usages used both in tandem anyway.
pbx_config, and pbx_ael, will stage the reloaded dialplan into local lists and tables, and
then call merge_contexts_and_delete, which will merge (now) existing contexts and
priorities from other registrars into this local set by copying them. Then, merge_contexts_and_delete will
lock down the contexts, swap the lists and tables, and unlock (real quick), and then
destroy the old dialplan.
chan_sip.c
chan_iax.c
chan_skinny.c
All the channel drivers that would add regcontexts now use the ast_context_find_or_create now.
chan_sip also includes a small fix to get rid of warnings about removing priorities that never got entered.
apps/app_meetme.c
apps/app_dial.c
apps/app_queue.c
All the apps that added a context/exten/priority were also modified to use ast_context_find_or_create instead.
include/asterisk/pbx.h
ast_context_create() is removed. Find_or_create_ is the new method.
ast_context_find_or_create() interface gets the hashtab added.
ast_merge_contexts_and_delete() gets the local hashtab arg added.
ast_wrlock_contexts_version() is added so you can detect if someone else got a writelock between your readlocking and writelocking.
ast_hashtab_compare_contexts was made public for use in pbx_config/pbx_ael
ast_hashtab_hash_contexts was in like fashion make public.
include/asterisk/pval.h
ast_compile_ael2() interface changed to include the local hashtab table ptr.
main/features.c
For the sake of the parking context, we use ast_context_find_or_create().
main/pbx.c
I changed all the "tree" names to "table" instead. That's because the original
implementation was based on binary trees. (had a free library). Then I moved
to hashtabs. Now, the names move forward too.
refcount field added to contexts, so you can keep track of how many modules
wanted this context to exist.
Some log messages that are warnings were inflated from LOG_NOTICE to LOG_WARNING.
Added some calls to ast_verb(3,...) for debug messages
Lots of little mods to ast_context_remove_extension2, which is now excersized in ways
it was not previously; one definite bug fixed.
find_or_create was upgraded to handle both local lists/tables as well as the globals.
context_merge() was added to do the per-context merging of the old/present contexts/extens/prios into the new/proposed local list/tables
ast_merge_contexts_and_delete() was heavily modified.
ast_add_extension2() was also upgraded to handle changes.
the context_destroy() code was re-engineered to handle the new way of doing things,
by exten/prio instead of by context.
res/ael/pval.c
res/ael/ael.tab.c
res/ael/ael.tab.h
res/ael/ael.y
res/ael/ael_lex.c
res/ael/ael.flex
utils/ael_main.c
utils/extconf.c
utils/conf2ael.c
utils/Makefile
Had to change the interface to ast_compile_ael2(), to include the hashtab ptr.
This ended up involving several external apps. The main gotcha was I had to
include lock.h and hashtab.h in several places.
As a side note, I tested this stuff pretty thoroughly, I replicated the problems
originally reported by Luigi, and made triply sure that reloads worked, and everything
worked thru "stop gracefully". I found a and fixed a few bugs as I was merging into
trunk, that did not appear in my tests of bug6002.
How's this for verbose commit messages?
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@106757 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r105059 | mmichelson | 2008-02-28 14:11:57 -0600 (Thu, 28 Feb 2008) | 6 lines
When using autofill, members who are in use should be counted towards the
number of available members to call if ringinuse is set to yes.
Thanks to jmls who brought this issue up on IRC
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@105061 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r103956 | mmichelson | 2008-02-20 16:32:22 -0600 (Wed, 20 Feb 2008) | 8 lines
Clear up confusion when viewing the QUEUE_WAITING_COUNT of a
"dead" realtime queue. Since from the user's perspective, the queue
does exist, we shouldn't tell them we couldn't find the queue. Instead
since it is a dead queue, report a 0 waiting count
This issue was brought up on IRC by jmls
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103957 65c4cc65-6c06-0410-ace0-fbb531ad65f3
the saying of less-than for holdtime announcements since it can lead to awkward holdtime announcements. Using
'1' as a queue-round-seconds value is no longer valid.
(closes issue #9736)
Reported by: caio1982
Patches:
queue_announce5.diff uploaded by caio1982 (license 22)
Tested by: caio1982, putnopvut
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@103687 65c4cc65-6c06-0410-ace0-fbb531ad65f3
not be loaded from realtime queues. This commit fixes that.
Thanks to jmls for pointing this problem out to me on IRC.
This also contains some changes to S_OR where it should be used. Thanks to Qwell for pointing
these out.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@101578 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r101216 | mmichelson | 2008-01-30 09:23:00 -0600 (Wed, 30 Jan 2008) | 5 lines
Fix a logic error with regards to autofill. Prior to this change, it was possible
for a caller to go out of turn if autofill were enabled and callers ahead in the queue were attempting
to call a member. This change fixes this.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@101217 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r98733 | mmichelson | 2008-01-14 10:21:28 -0600 (Mon, 14 Jan 2008) | 8 lines
Adding explicit defaults for missing options to init_queue. This is necessary because
if a user either removes or comments one of these options and reloads their queues, the
option will not reset to its default, instead maintaining the value from prior to the
reload.
Thanks to John Bigelow for pointing this error out to me.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@98735 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r97304 | mmichelson | 2008-01-08 17:49:11 -0600 (Tue, 08 Jan 2008) | 5 lines
Part 1 of N of adding doxygen comments to app_queue. I picked some of the most common functions
used (which also happen to be some the biggest/ugliest functions too) to document first. I'm pretty
new to doxygen so criticism is welcome.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@97307 65c4cc65-6c06-0410-ace0-fbb531ad65f3
will monitor this second device's state for the member, even though it actually calls the first
interface. This ability has been added for statically defined queue members, realtime queue members,
and dynamic queue members added through the CLI, dialplan, or manager.
(closes issue #11603, reported by acidv)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@97203 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r96102 | mmichelson | 2008-01-02 17:46:02 -0600 (Wed, 02 Jan 2008) | 4 lines
We need to reset the membername to NULL on each iteration of this loop, otherwise the result is that
multiple members can have the same name, since the variable was not reset on each iteration of the loop.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@96103 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r95890 | mmichelson | 2008-01-02 11:51:22 -0600 (Wed, 02 Jan 2008) | 9 lines
A change to improve the accuracy of queue logging in the case where a member does not
answer during the specified timeout period. Prior to this change, there was a small chance
that the member name recorded in this case would be blank. Also prior to this change, if using
the ringall strategy, if no one answered the call during the specified timeout, the member name
listed in the queue log would randomly be one of the members that was rung.
(closes issue #11498, reported and tested by hloubser, patched by me)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@95891 65c4cc65-6c06-0410-ace0-fbb531ad65f3
of the queue_exec function by reversing the logic of an if statement. This change makes the function
comply better with the coding guidelines. Since this change is purely a cosmetic change to the code, I am
only committing the change to trunk.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@95233 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r95095 | mmichelson | 2007-12-27 18:16:15 -0600 (Thu, 27 Dec 2007) | 8 lines
I found a bug while browsing the queue code and managed to reproduce it in a small setup.
If a queue uses the ringall strategy, it was possible through unfortunate coincidence for a single member at a given penalty level to
make app_queue think that all members at that penalty level were unavailable and cause the members at the
next penalty level to be rung. With this patch, we will only move to the next penalty level if ALL the members
at a given penalty level are unreachable.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@95096 65c4cc65-6c06-0410-ace0-fbb531ad65f3
queue members. This allows for the change in penalty levels to be executed at
the most logical time frame.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94396 65c4cc65-6c06-0410-ace0-fbb531ad65f3
the QUEUE_MAX_PENALTY and the newly introduced QUEUE_MIN_PENALTY during a call depending
on the amount of time passed. The purpose is to allow the call to open up to more (or maybe
just different) members without the caller's losing his place in the queue. See
configs/queuerules.conf.sample for an example of how to set up queue rules and configs/queues.conf.sample
for how to associate a rule with a queue.
Along with the functional changes, new CLI and manager commands exist to show the rules defined and
there is an additional CLI command to reload the queue rules.
Future enhancements that may be made: support for realtime queue rules and support for dynamically adding
a rule through the manager or CLI. Also a manager command to reload the queue rules (I'll probably write
this myself very soon).
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94370 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2. Fix an error when checking the CLI command for setting a member's penalty.
3. Fix a logging error if the incorrect parameter was the queue name or interface.
(closes issue #11544, reported and patched by Laureano)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@94124 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r93182 | oej | 2007-12-17 08:15:13 +0100 (MÃ¥n, 17 Dec 2007) | 8 lines
Issue 11574: Add dependencies on res_monitor and res_features.
I wonder if Asterisk can run at all without res_features. My guess is that
there's propably a lot of more modules and the core that depends on it.
Reported by: caio1982
(closes issue #11574)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@93335 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r92323 | mmichelson | 2007-12-11 11:42:25 -0600 (Tue, 11 Dec 2007) | 10 lines
Fixing autofill to be more accurate. Specifically, if calls ahead of the current
caller were ringing members (but not yet bridged) there could be available members
and waiting callers who would not get matched up. The member availability checker
was correctly determining the number of available members in this scenario, but
the queue itself did not parallelly reflect this status on the pending calls. This
commit corrects the issue.
(closes issue #11459, reported by equissoftware, patched by me)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92324 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r92202 | mmichelson | 2007-12-10 10:29:44 -0600 (Mon, 10 Dec 2007) | 7 lines
If there are no members in a queue, then the loop where the datastore for detecting
duplicate dialed numbers will be skipped, meaning the datastore isn't created. This means
that when we try to free it, there's a crash. This stops that crash from occurring.
(closes issue #11499, reported by slavon, patched by eliel)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@92203 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r91780 | russell | 2007-12-07 10:25:25 -0600 (Fri, 07 Dec 2007) | 7 lines
* Add channel locking around datastore operations that expect the channel
to be locked.
* Document why we don't record Local channels in the dialed interfaces list.
* Handle memory allocation failure.
* Remove the dialed variable, as it wasn't actually needed.
* Tweak some formatting to conform to coding guidelines.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91781 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r91675 | russell | 2007-12-06 20:19:45 -0600 (Thu, 06 Dec 2007) | 7 lines
Fix in an issue in the call forwarding handling code that was causing crashes
on every call into a queue. I'm not entirely sure about the logic in this part
of the code, so I want to look at it some more tomorrow. However, this makes
it safe and keeps it from crashing.
(closes issue #11486, reported by adamg, patched by me)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@91676 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r90735 | mmichelson | 2007-12-03 17:12:17 -0600 (Mon, 03 Dec 2007) | 22 lines
A big one...
This is the merge of the forward-loop branch. The main change here is that call-forwards can no longer loop.
This is accomplished by creating a datastore on the calling channel which has a linked list of all devices
dialed. If a forward happens, then the local channel which is created inherits the datastore. If, through this
progression of forwards and datastore inheritance, a device is attempted to be dialed a second time, it will simply
be skipped and a warning message will be printed to the CLI. After the dialing has been completed, the datastore
is detached from the channel and destroyed.
This change also introduces some side effects to the code which I shall enumerate here:
1. Datastore inheritance has been backported from trunk into 1.4
2. A large chunk of code has been removed from app_dial. This chunk is the section of code
which handles the call forward case after the channel has been requested but before it has
been called. This was removed because call-forwarding still works fine without it, it makes the
code less error-prone should it need changing, and it made this set of changes much less painful
to just have the forwarding handled in one place in each module.
3. Two new files, global_datastores.h and .c have been added. These are necessary since the datastore
which is attached to the channel may be created and attached in either app_dial or app_queue, so they
need a common place to find the datastore info. This approach was taken in case similar datastores are
needed in the future, there will be a common place to add them.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90873 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r90470 | russell | 2007-12-02 12:18:52 -0600 (Sun, 02 Dec 2007) | 6 lines
The other day when I went through making changes as a result of the ao2_link()
change, I added some code to set pointers to NULL after they were unreferenced.
This pointed out that in this place, the object was unreferenced before the
code was done using it. So, move the unref down a little bit.
(crash reported by jmls on IRC)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90471 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This works in much the same way as the automonitor, except that instead of using the monitor
app, it uses the mixmonitor app. By providing an 'x' or 'X' as a dial or queue option, a DTMF
sequence may be entered (as defined in features.conf) to start the one-touch mixmonitor.
This patch also introduces some new API calls to the audiohooks code for searching for an audiohook
by type and for searching for a running audiohook by type.
Big thanks to joetester for writing the initial patch, testing it and patiently waiting for it to
be committed.
(closes issue #10185, reported and patched by xmarksthespot)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90388 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r90348 | russell | 2007-11-30 13:26:04 -0600 (Fri, 30 Nov 2007) | 8 lines
Change the behavior of ao2_link(). Previously, in inherited a reference.
Now, it automatically increases the reference count to reflect the reference
that is now held by the container.
This was done to be more consistent with ao2_unlink(), which automatically
releases the reference held by the container. It also makes it so it is
no longer possible for a pointer to be invalid after ao2_link() returns.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90351 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r90163 | mmichelson | 2007-11-29 13:38:39 -0600 (Thu, 29 Nov 2007) | 6 lines
This patch handles the case where a queue member with a negative penalty is added
via the manager. If a negative value is submitted for a member penalty, we set it to 0.
(closes issue #11411, reported and patched by Laureano)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@90164 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r89837 | mmichelson | 2007-11-27 17:10:05 -0600 (Tue, 27 Nov 2007) | 12 lines
Two changes with regards to the 'eventwhencalled' option of queues.conf
1) Due to some signed vs. unsigned silliness, setting 'eventwhencalled' to
'vars' or 'yes' did exactly the same thing. Thus the sign change of the
ast_true call.
2) The vars2manager function overwrote a \n for every channel variable it parsed, resulting
in bizarre output for the channel variables. This patch remedies this.
(related to issue #11385, however I'm not sure if this will actually be enough to close it)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89838 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r89493 | mmichelson | 2007-11-21 13:24:22 -0600 (Wed, 21 Nov 2007) | 5 lines
Changing an inaccurate debug message to be less inaccurate. Under the circumstances, this
message would always report that there were 0 members available, even though that may not be true.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89494 65c4cc65-6c06-0410-ace0-fbb531ad65f3
build times - tested, there is no measureable difference before and
after this commit.
In this change:
use asterisk/compat.h to include a small set of system headers:
inttypes.h, unistd.h, stddef.h, stddint.h, sys/types.h, stdarg.h,
stdlib.h, alloca.h, stdio.h
Where available, the inclusion is conditional on HAVE_FOO_H as determined
by autoconf.
Normally, source files should not include any of the above system headers,
and instead use either "asterisk.h" or "asterisk/compat.h" which does it
better.
For the time being I have left alone second-level directories
(main/db1-ast, etc.).
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89333 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This prevents modifying the strings in the stored variables,
and catched a few instances where this was actually done.
Given the differences between trunk and 1.4 (and the fact that this
is effectively an API change) it is better to fix 1.4 independently.
These are
chan_sip.c::sip_register()
chan_skinny.c:: near line 2847
config.c:: near line 1774
logger.c::make_components()
res_adsi.c:: near line 1049
I may have missed some instances for modules that do not build here.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89268 65c4cc65-6c06-0410-ace0-fbb531ad65f3
- the *_CURRENT macros no longer need the list head pointer argument
- add AST_LIST_MOVE_CURRENT to encapsulate the remove/add operation when moving entries between lists
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89106 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r89093 | tilghman | 2007-11-07 17:39:37 -0600 (Wed, 07 Nov 2007) | 7 lines
The member refcount must be incremented, to avoid using it after deallocation.
A huge thanks go to lvl- for patiently providing the necessary valgrind output
that was necessary to finding this problem of memory corruption.
Reported by: lvl-
Patch by: tilghman
Closes issue #11174
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89094 65c4cc65-6c06-0410-ace0-fbb531ad65f3
phones to be rung in a specific order.
(closes issue #7279, reported and initially patched by diLLec, patch reworked by me)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@87154 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r86328 | mmichelson | 2007-10-18 12:38:26 -0500 (Thu, 18 Oct 2007) | 5 lines
If a non-existent file is specified to be played either as a periodic announcement
or as a hold/position announcement, the caller would be kicked out of the queue.
No longer does this happen.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86329 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r86202 | mmichelson | 2007-10-17 16:39:05 -0500 (Wed, 17 Oct 2007) | 6 lines
Changing the strategy field of the call_queue struct to be signed instead of unsigned,
since the code attempts to set the strategy to -1 if you specify a bogus strategy.
While this isn't a huge issue in 1.4, it could be a problem for someone who, say, tries
to use the roundrobin strategy in trunk (despite all the deprecation warnings in 1.4).
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@86208 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r85958 | mmichelson | 2007-10-16 16:14:34 -0500 (Tue, 16 Oct 2007) | 5 lines
Trying to remove a non-dynamic queue member via dynamic means can lead to some
interesting (read nasty) situations. This patch clears up the issue by making
only dynamic queue members removable via dynamic methods.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@85959 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1) Fix some bad logic in the counting of statistics for QueueSummary manager event. Variables were not being
reset for each additional queue, so cumulative totals were reported on each successive queue.
2) Add a longest hold time stat to QueueSummary manager event.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@84726 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r83074 | file | 2007-09-19 10:47:59 -0300 (Wed, 19 Sep 2007) | 6 lines
Protect the CDR record from modification by pbx_exec so that the application data contains the Queue data.
(closes issue #10761)
Reported by: snar
Patches:
app-queue-mixmonitor.patch uploaded by snar (license 245)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@83075 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r82865 | mmichelson | 2007-09-18 15:09:02 -0500 (Tue, 18 Sep 2007) | 4 lines
Moving the logic for handling an empty membername to the create_member function so that there is a common place
where this occurs instead of being spread out to several different places.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82866 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Reported by: snar
Patches:
app-queue-cdr-trunk.patch uploaded by snar (license 245)
queues.conf.patch uploaded by snar (license 245)
Add an updatecdr option to queues.conf, so that if a "member name" is specified,
the cdr record will be updated with that, rather than the channel.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82800 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r82590 | kpfleming | 2007-09-17 11:33:30 -0500 (Mon, 17 Sep 2007) | 2 lines
fix a couple of places where a logical member name (if specified) was not used, but instead the direct interface was listed
........
r82592 | kpfleming | 2007-09-17 11:40:12 -0500 (Mon, 17 Sep 2007) | 2 lines
revert a change that wasn't supposed to be committed... doh!
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82593 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r82326 | mmichelson | 2007-09-13 11:25:59 -0500 (Thu, 13 Sep 2007) | 7 lines
Added logic to handle the unlikely case that someone has two queues with the same name.
Asterisk will log a warning message letting the user know that one was already defined with that
name and is it skipping all further instances. This also will work for realtime queues but in order
for that to happen, the user would have to trigger a perfectly timed reload as a realtime queue is being
looked up, which is highly unlikely (but taken care of nonetheless).
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82327 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r82274 | mmichelson | 2007-09-12 09:24:53 -0500 (Wed, 12 Sep 2007) | 6 lines
We should only initialize a realtime queue when it is allocated, not every time we access it. This prevents the members ao2_container
from being reallocated every time the queue is accessed.
I also removed a debug message I had accidentally left in on a previous commit.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82275 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r82263 | russell | 2007-09-11 15:49:34 -0500 (Tue, 11 Sep 2007) | 5 lines
Fix another missing unref of member objects. This one was pointed out by Marta.
When building the outgoing list in try_calling(), a member reference is stored
in each outgoing entry. However, when this list got destroyed, the reference
was not released.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82264 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r82252 | mmichelson | 2007-09-11 11:05:56 -0500 (Tue, 11 Sep 2007) | 6 lines
All instances of ao2_iterators which were just named 'i' have been renamed
to 'mem_iter' so that when refcounted queues are merged into trunk, there will be
little confusion regarding iterator names, especially when a queue and member iterator
are used in the same function.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82253 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
(closes issue #10671)
........
r81923 | qwell | 2007-09-07 14:48:00 -0500 (Fri, 07 Sep 2007) | 5 lines
Allow the MEMBERINTERFACE variable to be used as the mixmonitor filename.
This moves the setting of the MEMBERINTERFACE variable to before mixmonitor.
Issue 10671, patch by sim.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81924 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This makes it so it doesn't. Thanks to file for pointing out where the problem was and showing
a similar function in app_dial as an example of how to fix it.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81632 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r81416 | mmichelson | 2007-08-31 14:48:55 -0500 (Fri, 31 Aug 2007) | 6 lines
Fixed broken behavior of a reload on realtime queues. Prior to this patch, if a reload was issued and
a realtime queue had callers waiting in it, then the queue would be removed from the queue list, but it would
not actually be freed (in fact, a debug message warning about a memory leak would come up). With this patch,
reloads do not touch realtime queues at all.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81417 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r81397 | mmichelson | 2007-08-30 17:05:56 -0500 (Thu, 30 Aug 2007) | 7 lines
Removing an extraneous (and possibly misleading) log message. Firstly, if the announce file isn't found, the
streaming functions will report it. Secondly, not all non-zero returns from play_file mean that the announce file
wasn't found. Positive return values simply mean that a digit was pressed (most likely to skip through the announcement).
(closes issue #10612, reported and patched by dimas)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81398 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r81349 | mmichelson | 2007-08-29 11:35:29 -0500 (Wed, 29 Aug 2007) | 12 lines
This patch, in essence, will correctly pause a realtime queue member and reflect those
changes in the realtime engine.
(issue #10424, reported by irroot, patch by me)
This patch creates a new function called update_realtime_member_field, which is a generic
function which will allow any one field of a realtime queue member to be updated. This patch
only uses this function to update the paused status of a queue member, but it lays the foundation
for persisting the state of a realtime member the same way that static members' state is maintained
when using the persistentmembers setting
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81350 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r81340 | mmichelson | 2007-08-29 10:52:42 -0500 (Wed, 29 Aug 2007) | 8 lines
This fix creates a more accurate way of detecting whether realtime members were deleted.
(closes issue 10541, reported by Alric, patched by me)
The REALLY nice things about this patch is that queue members now have a "realtime" field
which will be true if the member is a realtime member. This means we can check this value
prior to certain processing if it should ONLY be done for realtime members.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81341 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r81158 | mmichelson | 2007-08-27 17:40:19 -0500 (Mon, 27 Aug 2007) | 5 lines
Resolve a potential deadlock. In this case, a single queue is locked, then the queue list. In changethread(), the queue list is
locked, and then each individual queue is locked. Under the right circumstances, this could deadlock. As such, I have unlocked
the individual queue before locking the queue list, and then locked the queue back after the queue list is unlocked.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@81159 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r78575 | mmichelson | 2007-08-08 09:26:36 -0500 (Wed, 08 Aug 2007) | 4 lines
Changing a bit of logic so that someone will NEVER exit the queue on timeout unless they have enabled the 'n' option.
This commit relates to issue #10320. Thanks to jfitzgibbon for detailing the idea behind this code change.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@78590 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r77854 | mmichelson | 2007-08-01 09:08:57 -0500 (Wed, 01 Aug 2007) | 8 lines
Fixes an issue I introduced to queues wherein a queue with joinempty=yes would kick people out of the queue because of erroneously
thinking the 'n' option was in use.
(closes issue #10320, reported by jfitzgibbon, patched by me, tested by blitzrage and me)
Thank you blitzrage for all the testing you've done lately with queues! It's much appreciated!
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77855 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r77852 | mmichelson | 2007-08-01 08:59:59 -0500 (Wed, 01 Aug 2007) | 7 lines
If a queue uses dynamic realtime members, then the member list should be updated after each attempt to call the queue.
This fixes an issue where if a caller calls into a queue where no one is logged in, they would wait forever even if a member
logged in at some point.
(closes issue #10346, reported by and tested by blitzrage, patched by me)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@77853 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r76801 | mmichelson | 2007-07-24 11:26:58 -0500 (Tue, 24 Jul 2007) | 13 lines
Added a membercount variable to call_queue struct which keeps track of the number of logged in members in a particular queue.
This makes it so that the 'n' option for Queue() can act properly depending on which strategy is used. If the strategy is
roundrobin, rrmemory, or ringall, we want to ring each phone once before moving on in the dialplan. However, if any other strategy is
used, we will only ring one phone since it cannot be guaranteed that a different phone will ring on subsequent attempts to ring a phone.
As a side effect of this, the QUEUE_MEMBER_COUNT dialplan function now just reads the membercount variable instead of traversing through
the member list to figure out how many members there are.
Special thanks to blitzrage for helping to test this out.
(closes issue #10127, reported by bcnit, patched by me, tested by blitzrage)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76804 65c4cc65-6c06-0410-ace0-fbb531ad65f3
using old methods of parsing arguments to using the standard macros. However, the big
change is that the really old way of specifying application and arguments separated by
a comma will no longer work (e.g. NoOp,foo|bar). Instead, the way that has been
recommended since long before 1.0 will become the only method available (e.g. NoOp(foo,bar).
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@76703 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r75969 | mmichelson | 2007-07-19 11:26:10 -0500 (Thu, 19 Jul 2007) | 10 lines
Changes in handling return values of several functions in app_queue. This all started as a fix for issue #10008
but now includes all of the following changes:
1. Simplifying the code to handle positive return values from ast API calls.
2. Removing the background_file function.
3. The fix for issue #10008
(closes issue #10008, reported and patched by dimas)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@75977 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
(closes issue #10158)
................
r74428 | qwell | 2007-07-10 14:58:53 -0500 (Tue, 10 Jul 2007) | 14 lines
Merged revisions 74427 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2
........
r74427 | qwell | 2007-07-10 14:57:20 -0500 (Tue, 10 Jul 2007) | 6 lines
Fix an issue where it was possible to have a service level of over 100%
Between the time recalc_holdtime and update_queue was called, it was possible that the call could have been hungup.
Move both additions to the same place, so this won't happen.
Issue 10158, initial patch by makoto, modified by me.
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@74429 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r74120 | mmichelson | 2007-07-09 13:32:50 -0500 (Mon, 09 Jul 2007) | 6 lines
The n option for Queue should make the queue exit immediately after failure to reach any members and should not
be dependent on the timeout value passed to Queue
(closes issue #10127, reported by bcnit, repaired by me)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@74121 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r73400 | mmichelson | 2007-07-05 10:59:41 -0500 (Thu, 05 Jul 2007) | 5 lines
Correcting a minor CLI bug I found. When issuing the queue show command, if you type
queue show and then press tab, you can continue pressing tab and it will keep auto-completing
queue names even though only 1 queue can be used as an argument.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@73402 65c4cc65-6c06-0410-ace0-fbb531ad65f3
possible for there to be entries in the queue and the thread is just sleeping
(Thanks to mmichelson for bringing the problem to my attention)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@73127 65c4cc65-6c06-0410-ace0-fbb531ad65f3
places that cared about device states were app_queue and the hint code in pbx.c.
The changes include converting it to use the Asterisk event system, as well as
other efficiency improvements.
* app_queue: This module used to register a callback into devicestate.c to
monitor device state changes. Now, it is just a subscriber to Asterisk
events with the type, device state.
* pbx.c hints: Previously, the device state processing thread in devicestate.c
would call ast_hint_state_changed() each time the state of a device changed.
Then, that code would go looking for all the hints that monitor that device,
and call their callbacks. All of this blocked the device state processing
thread. Now, the hint code is a subscriber of Asterisk events with the
type, device state. Furthermore, when this code receives a device state
change event, it queues it up to be processed by another thread so that it
doesn't block one of the event processing threads.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@66958 65c4cc65-6c06-0410-ace0-fbb531ad65f3
saw this, I couldn't help myself from changing it. Previously, for *every*
device state change, app_queue would spawn a thread to handle it. Now, the
device state callback just puts the state change in a queue and it gets
handled by a single state change processing thread.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@65298 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r64868 | russell | 2007-05-17 21:48:51 -0500 (Thu, 17 May 2007) | 5 lines
Fix a small bug I noticed while working on something else. app_queue did not
unregister its device state monitoring callback in unload_module(). So, this
would make Asterisk crash on the first device state change after you
unload the module.
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@64869 65c4cc65-6c06-0410-ace0-fbb531ad65f3
entries in the queue log.
(issue #7561, reported and originally patched by fkasumovic, patch slightly
modified and updated to trunk by me)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@62462 65c4cc65-6c06-0410-ace0-fbb531ad65f3
minimum amount of time between queue announcements for use when the caller's queue
position changes frequently.
(issue #9604, patch by Matthew Roth)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@62242 65c4cc65-6c06-0410-ace0-fbb531ad65f3
addition to where it is already sent if either side hangs up.
(issue #9219, rgollent)
In passing, I put this code in a function so it would not be duplicated
a third time.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@58123 65c4cc65-6c06-0410-ace0-fbb531ad65f3
pretty cool things.
First, you can get the device state of anything in the dialplan:
NoOp(SIP/mypeer has state ${DEVSTATE(SIP/mypeer)})
NoOp(The conference room 1234 has state ${DEVSTATE(MeetMe:1234)})
Most importantly, this allows you to create custom device states so you can
control phone lamps directly from the dialplan.
Set(DEVSTATE(Custom:mycustomlamp)=BUSY)
...
exten => mycustomlamp,hint,Custom:mycustomlamp
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@54261 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r47432 | kpfleming | 2006-11-10 10:34:04 -0600 (Fri, 10 Nov 2006) | 2 lines
reflect addition/removal of dynamic queue members in queue_log, so that people using dialplan replacement for AgentCallbackLogin can still track login/logout (issue #7736, reported/patched by whoiswes but this commit was written by me and covers all three paths for AQM/RQM)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@47434 65c4cc65-6c06-0410-ace0-fbb531ad65f3
see queues.conf.sample for details.
* Added QUEUE_VARIABLES function to set queue variables added setqueuevar and
setqueueentryvar options for each queue, see queues.conf.sample for details.
(#8216, jmls reported and submitted)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46369 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r44378 | kpfleming | 2006-10-04 14:47:22 -0500 (Wed, 04 Oct 2006) | 4 lines
update thread creation code a bit
reduce standard thread stack size slightly to allow the pthreads library to allocate the stack+data and not overflow a power-of-2 allocation in the kernel and waste memory/address space
add a new stack size for 'background' threads (those that don't handle PBX calls) when LOW_MEMORY is defined
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@44379 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.4
................
r43899 | bweschke | 2006-09-28 12:41:05 -0400 (Thu, 28 Sep 2006) | 11 lines
Merged revisions 43897 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2
........
r43897 | bweschke | 2006-09-28 12:37:15 -0400 (Thu, 28 Sep 2006) | 3 lines
app_queue is comparing the device names incorrectly while checking their statuses. It's internal list of interfaces includes the dial string, while the argument passed to this function does not have the dial string (/n for a local channel). This causes it to ignore the device state changes because it thinks it belongs to none of its members. (#8040 reported and patch by tim_ringenbach)
........
................
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43902 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Gives "at a glance" information about a single queue, or all queues.
Issue #8035, patch by rgollent, slightly modified (formatting) by me.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43721 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Add option to the various methods of adding a queue member, to add the "member name".
Member name is used in (most) queue log records, in place of the interface name.
This makes it consistent, so that you can log in from any device, and still be logged as "member name"
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43316 65c4cc65-6c06-0410-ace0-fbb531ad65f3
now reports AST_MODULE_LOAD_DECLINE when loading if config file
is not there, also fixed an error in res_config_pgsql where it
had a non static function when it should.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41633 65c4cc65-6c06-0410-ace0-fbb531ad65f3
- restructured build tree and makefiles to eliminate recursion problems
- support for embedded modules
- support for static builds
- simpler cross-compilation support
- simpler module/loader interface (no exported symbols)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40722 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.2
........
r34159 | kpfleming | 2006-06-14 17:17:37 -0500 (Wed, 14 Jun 2006) | 2 lines
use existing dial string parser for strings supplied to iax2_devicestate, because they can be complete dial strings, not just device names
........
r34160 | kpfleming | 2006-06-14 17:22:21 -0500 (Wed, 14 Jun 2006) | 2 lines
coding style cleanups on queue interface handling code that was committed for the last release
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@34161 65c4cc65-6c06-0410-ace0-fbb531ad65f3
https://origsvn.digium.com/svn/asterisk/branches/1.2
........
r25518 | bweschke | 2006-05-08 09:11:32 -0400 (Mon, 08 May 2006) | 3 lines
Don't recheck valid_exit() after getting the result from say_position (which already checks it). Should prevent another loop if the caller hits digits during the position announcement. #6776 (tgj reporting)
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@25519 65c4cc65-6c06-0410-ace0-fbb531ad65f3
warnings if the queue you are looking for in this
function and other queue functions is not found.
patch from 7036
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@22653 65c4cc65-6c06-0410-ace0-fbb531ad65f3
mark a couple of inconsistencies (missing CallerIDnum,
"unknown" instead of "<unknown>") - there are more of the same.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@21821 65c4cc65-6c06-0410-ace0-fbb531ad65f3
As partly documented in loader.c and include/asterisk/module.h,
modules are now expected to return all of their methods and flags
into a structure 'mod_data', and are normally loaded with RTLD_NOW
| RTLD_LOCAL, so symbols are resolved immediately and conflicts
should be less likely. Only in a small number of cases (res_*,
typically) modules are loaded RTLD_GLOBAL, so they can export
symbols.
The core of the change is only the two files loader.c and
include/asterisk/module.h, all the rest is simply adaptation of the
existing modules to the new API, a rather mechanical (but believe
me, time and finger-consuming!) process whose detail you can figure
out by svn diff'ing any single module.
Expect some minor compilation issue after this change, please
report it on mantis http://bugs.digium.com/view.php?id=6968
so we collect all the feedback in one place.
I am just sorry that this change missed SVN version number 20000!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@20003 65c4cc65-6c06-0410-ace0-fbb531ad65f3
On passing, replace strdup with ast_strdup() and remove
the now useless checks for NULL since ast_strdup() can handle
it correctly.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@15895 65c4cc65-6c06-0410-ace0-fbb531ad65f3
const-ify some more APIs
remove 'type' field from ast_channel, in favor of the one in the channel's tech structure
allow string field module users to specify the 'chunk size' for pool allocations
update chan_alsa to be compatible with recent const-ification patches
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@9060 65c4cc65-6c06-0410-ace0-fbb531ad65f3
- Use a cleaner syntax for declaring the allocation macros
- Fix return value for ast_strdup/ast_strndup
- remove safe_strdup from app_macro, since ast_strup does the same thing
- fix a place in app_queue where ast_calloc+strncpy was used instead of
ast_strdup. If you are helping out with these conversions, please watch out
for other places where this is done.
- add a note to the coding guidelines about the fix to app_queue
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@8065 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This should prevent us from unintentionally changing variable
values when they're returned from pbx_builtin_getvar_helper.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@7304 65c4cc65-6c06-0410-ace0-fbb531ad65f3
In general, LOCAL_USER_ADD/REMOVE should be the first/last thing called in an
application. An exception is if there is some *fast* setup code that might
halt the execution of the application, such as checking to see if an argument
exists.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6832 65c4cc65-6c06-0410-ace0-fbb531ad65f3
optimize device state related functions
add ast_get_channel_by_name_prefix to allow searching for matching channels in O(1) operation
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6062 65c4cc65-6c06-0410-ace0-fbb531ad65f3