Commit Graph

472 Commits (28922df8299776cf0791a89fa9b3bb06e90d810a)

Author SHA1 Message Date
Mark Michelson 3d2bc51957 Backport of attended transfer queue_log patch from trunk.
17 years ago
Mark Michelson 033e0392e7 Prior to this patch, the "queue show" command used cached
17 years ago
Mark Michelson d7fbc9aae2 davidw pointed out that the holdtime calculation used by
17 years ago
Jeff Peeler f9818af8dd Adds DAHDI support alongside Zaptel. DAHDI usage favored, but all Zap stuff should continue working. Release announcement to follow.
17 years ago
Mark Michelson 9f669a3a09 Properly play a holdtime message if the announce-holdtime option is
17 years ago
Mark Michelson d600851f16 Make sure that the string we set will survive the unref of
17 years ago
Mark Michelson f145259724 Tab completion when removing a member should give the member's interface,
17 years ago
Tilghman Lesher c9ddda2b1f When joinempty=strict, it only failed on join if there were busy members. If
17 years ago
Mark Michelson 1eee42a78a Don't consider a caller "handled" until the caller is bridged with
17 years ago
Mark Michelson b066825d56 Use the MACRO_CONTEXT and MACRO_EXTEN channel variables instead of the channel's macrocontext
17 years ago
Mark Michelson 44c157b36a Output of channel variables when eventwhencalled=vars was set
17 years ago
Jason Parker e4d2e03956 Allow autofill to work in the general section of queues.conf.
17 years ago
Mark Michelson f1683753b8 If the datastore has been moved to another channel due to a masquerade, then
17 years ago
Mark Michelson 63968e3d5d Ensure that there is no timeout if none is specified.
17 years ago
Mark Michelson 89c3cd6842 This patch makes it so that all queue member status changes are handled through device state
17 years ago
Mark Michelson c6387c3540 When using autofill, members who are in use should be counted towards the
17 years ago
Mark Michelson 70b222e46f Clear up confusion when viewing the QUEUE_WAITING_COUNT of a
18 years ago
Mark Michelson cb8ffc789e Prevent a potential three-thread deadlock. Also added a comment block
18 years ago
Mark Michelson 2e4650c242 Fix a logic error with regards to autofill. Prior to this change, it was possible
18 years ago
Mark Michelson da3e5f571a Remove a memory leak from updating realtime queues
18 years ago
Mark Michelson ad19e1c4b6 Fixing an erroneous return value returned when attempting to pause or unpause a queue member
18 years ago
Mark Michelson 8e3c058e44 Fixing another compilation error. I'm a bit off today :(
18 years ago
Mark Michelson 1a95cfaf45 Oops. Last commit had compilation error.
18 years ago
Mark Michelson aa320d23a9 Adding explicit defaults for missing options to init_queue. This is necessary because
18 years ago
Mark Michelson 2da89b6120 Part 2 of app_queue doxygen improvements. Some smaller functions this time
18 years ago
Mark Michelson 34f994f017 use the \retval doxygen command properly
18 years ago
Mark Michelson 2a0748b0fe Part 1 of N of adding doxygen comments to app_queue. I picked some of the most common functions
18 years ago
Mark Michelson fdd5c25103 Some coding guidelines-related cleanup
18 years ago
Joshua Colp be83b74be9 Make app_queue calls work with directed pickup.
18 years ago
Mark Michelson 068e1d8208 We need to reset the membername to NULL on each iteration of this loop, otherwise the result is that
18 years ago
Mark Michelson 60c6826c1c A change to improve the accuracy of queue logging in the case where a member does not
18 years ago
Mark Michelson a7dee30a8d I found a bug while browsing the queue code and managed to reproduce it in a small setup.
18 years ago
Mark Michelson ad89849308 Removing a debug message I accidentally just committed
18 years ago
Mark Michelson eac09a0cd0 Fixing Portuguese syntax for saying dates and times. Also some coding guidelines cleanup.
18 years ago
Olle Johansson 517dacce70 Issue 11574: Add dependencies on res_monitor and res_features.
18 years ago
Mark Michelson ef5f25b6c1 Removing an unused variable.
18 years ago
Mark Michelson c8b5d2ea03 Fixing autofill to be more accurate. Specifically, if calls ahead of the current
18 years ago
Mark Michelson 626053ac64 If there are no members in a queue, then the loop where the datastore for detecting
18 years ago
Russell Bryant d1f1b3c4d6 * Add channel locking around datastore operations that expect the channel
18 years ago
Russell Bryant 85e0e1919d Allow dialing local channels from Queue() and Dial() again. There was a slight
18 years ago
Russell Bryant 079b4a2b18 Fix in an issue in the call forwarding handling code that was causing crashes
18 years ago
Mark Michelson 7b052b78e1 A big one...
18 years ago
Russell Bryant d208d0fc37 The other day when I went through making changes as a result of the ao2_link()
18 years ago
Russell Bryant 1f8caa100d Change the behavior of ao2_link(). Previously, in inherited a reference.
18 years ago
Mark Michelson aafa661ed7 This patch handles the case where a queue member with a negative penalty is added
18 years ago
Joshua Colp c24b0e152a Fix a few memory leaks.
18 years ago
Russell Bryant a5c9a71b4e Instead of depending on the return value of ast_true(), explicitly set the
18 years ago
Mark Michelson a5db0a6103 Two changes with regards to the 'eventwhencalled' option of queues.conf
18 years ago
Mark Michelson ddc5bf5b47 Fix a small error I made in my previous commit
18 years ago
Mark Michelson d105c24a57 Changing an inaccurate debug message to be less inaccurate. Under the circumstances, this
18 years ago
Mark Michelson 891b3bab2a Make realtime queues accessible from the QUEUE_MEMBER_COUNT function.
18 years ago
Tilghman Lesher 45c16cc29b The member refcount must be incremented, to avoid using it after deallocation.
18 years ago
Mark Michelson c9935ba132 If a non-existent file is specified to be played either as a periodic announcement
18 years ago
Mark Michelson cb55155ef1 Changing the strategy field of the call_queue struct to be signed instead of unsigned,
18 years ago
Mark Michelson 1ced2ef939 Adding deprecated warning to monitor-join option, since the plan is to
18 years ago
Mark Michelson eb154e963c Trying to remove a non-dynamic queue member via dynamic means can lead to some
18 years ago
Mark Michelson 661aa4ba35 Fixing a double free which happens in the statechange thread.
18 years ago
Russell Bryant d63883be92 Ensure that no pending state changes are leaked when the device state change
18 years ago
Russell Bryant 87dc20fc03 Previously, app_queue created a thread to handle every single device state
18 years ago
Mark Michelson 74cc6754af Don't allocate space for queue members unless it's needed. You end up deleting dynamic members on a reload. Not good.
18 years ago
Joshua Colp 03a7b06959 Create a duplicate of the channel's member name as the tab completion stuff will free it.
18 years ago
Joshua Colp 2187f79e54 Protect the CDR record from modification by pbx_exec so that the application data contains the Queue data.
18 years ago
Joshua Colp 88cfb003df Initialize a variable to NULL to make the world happy.
18 years ago
Mark Michelson 3d1a567df0 Moving the logic for handling an empty membername to the create_member function so that there is a common place
18 years ago
Kevin P. Fleming a809a030d9 there is no need for conditional logic to select ->interface or ->membername, snince ->membername will always be populated
18 years ago
Kevin P. Fleming 43c2cf7938 fix a couple of places where a logical member name (if specified) was not used, but instead the direct interface was listed
18 years ago
Mark Michelson e53d7231dd Crap, I broke the build. Fixed.
18 years ago
Mark Michelson c7b6c42ef5 Adding member name field to manager events where they were missing before
18 years ago
Mark Michelson d6b1a0bfd6 Preemptively fixing a possible segfault. It is possible that queuename is NULL
18 years ago
Mark Michelson 1cf6ee98e0 Added logic to handle the unlikely case that someone has two queues with the same name.
18 years ago
Mark Michelson da18cece2c We should only initialize a realtime queue when it is allocated, not every time we access it. This prevents the members ao2_container
18 years ago
Russell Bryant 3e11102ef8 Fix incorrect uses of ao2_find(). Every one of these calls was reading bogus
18 years ago
Russell Bryant 56b7a100bc Fix another missing unref of member objects. This one was pointed out by Marta.
18 years ago
Mark Michelson 4f36c859ad All instances of ao2_iterators which were just named 'i' have been renamed
18 years ago
Russell Bryant 808ed0e44e Add a couple more missing unrefs of queue member objects
18 years ago
Russell Bryant aa3a71d3bf Add a missing unref of a queue member in an error handling block
18 years ago
Russell Bryant ffa6e7123b Document why membercount can not simply be replaced by ao2_container_count()
18 years ago
Tilghman Lesher 4913548485 Convert struct member to use refcounts (closes issue #10199)
18 years ago
Jason Parker d73c04d892 Allow the MEMBERINTERFACE variable to be used as the mixmonitor filename.
18 years ago
Mark Michelson 76ffc54255 Fixes an issue where valid DTMF had to be pressed twice to exit a queue if a member's phone
18 years ago
Mark Michelson fbbf1e2056 Fixing the build...
18 years ago
Mark Michelson f5cc747662 Reverting behavior of QUEUE_MEMBER_COUNT to only count members who are logged in
18 years ago
Mark Michelson 6ed2b5c1b2 Changed a comment to be more accurate.
18 years ago
Mark Michelson 687f798f19 Fixed broken behavior of a reload on realtime queues. Prior to this patch, if a reload was issued and
18 years ago
Mark Michelson 0589a7e1d0 Removing an extraneous (and possibly misleading) log message. Firstly, if the announce file isn't found, the
18 years ago
Mark Michelson 4c16fcaa97 Changed some manager event messages to reflect whether a queue member is a realtime member or not
18 years ago
Mark Michelson dbe2d229a5 This patch, in essence, will correctly pause a realtime queue member and reflect those
18 years ago
Mark Michelson 872ab1519e Changed some tabs to spaces
18 years ago
Mark Michelson 2772c71560 This fix creates a more accurate way of detecting whether realtime members were deleted.
18 years ago
Mark Michelson 214d980f86 Resolve a potential deadlock. In this case, a single queue is locked, then the queue list. In changethread(), the queue list is
18 years ago
Mark Michelson fe5489eead Found a case where the queue's membercount is off. It does not take into account dynamic members on a reload.
18 years ago
BJ Weschke 318f0f6e46 A minor correction to the available logic of autofill. If a queue member is paused, they're not really "available" so don't count them as such. Somewhat related to issue #10155
18 years ago
Russell Bryant 108326e3d1 Fix the build of app_queue
18 years ago
Mark Michelson 6268d2d7ec After a discussion on #asterisk-dev, it was decided that this should be in 1.4 as well.
18 years ago
Mark Michelson d66e174242 Found a pointless ternary if. member->dynamic was set to 1 and has no opportunity to change
18 years ago
Mark Michelson f8c70a5799 Changing a bit of logic so that someone will NEVER exit the queue on timeout unless they have enabled the 'n' option.
18 years ago
Mark Michelson 5739eba48e Fixes an issue I introduced to queues wherein a queue with joinempty=yes would kick people out of the queue because of erroneously
18 years ago
Mark Michelson 7e6f78d95e If a queue uses dynamic realtime members, then the member list should be updated after each attempt to call the queue.
18 years ago
Mark Michelson ad4eb1b347 Added a membercount variable to call_queue struct which keeps track of the number of logged in members in a particular queue.
18 years ago
Joshua Colp 34b000a0e7 Move makeannouncement variable declaration to proper place.
18 years ago