Commit Graph

262 Commits

Author SHA1 Message Date
Russell Bryant
c27732c38c Ensure that the channel doesn't disappear in agent_logoff(). If it does, it
could cause a crash.
(fixes the crash reported in BE-396)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@104086 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-25 18:38:10 +00:00
Tilghman Lesher
e049bdfcfa We aren't talking to ourselves; we're talking to someone else.
(closes issue #11771)
 Reported by: msetim
 Patches: 
       ami_agent_talkingto-1.4.diff uploaded by caio1982 (license 22)
 Tested by: caio1982, msetim


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@103607 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-02-13 06:25:03 +00:00
Russell Bryant
0343bf8348 Add more missing locking of the agents list ...
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@101433 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-31 19:17:05 +00:00
Russell Bryant
70200cec77 Move the locking from find_agent() into the agent dialplan function handler to
ensure that the agent doesn't disappear while we're looking at it.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@101414 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-31 19:07:46 +00:00
Russell Bryant
c6c7c3bf58 Add missing locking to the find_agent() function.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@101413 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-31 19:04:52 +00:00
Olle Johansson
48066f4cfd Add more dependencies on chan_local and add a note to the description of chan_local
so that people don't disable it in menuselect just to clean up.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@99594 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2008-01-22 17:41:57 +00:00
Dwayne M. Hubbard
bae4135759 moved get_base_channel() code from action_redirect to ast_channel_masquerade() for issue 7706 and BE-160
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@84274 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-01 21:25:37 +00:00
Dwayne M. Hubbard
7c4e477fde if an Agent is redirected, the base channel should actually be redirected. This was causing multiple issues, especially issue 7706 and BE-160
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@84018 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-27 23:12:25 +00:00
Mark Michelson
284c7cde35 DTMF begin frames should be ignored so that when an agent acks a call with the '#' key,
he doesn't cause a queue's announce file to be interrupted. Also went ahead and did the
same for the '*' key and for ending a call.

(closes issue #10528, reported by deskhack, patched by me)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@81120 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-27 21:08:48 +00:00
Mark Michelson
6ec280adfc Fixes a problem where agents would get stuck busy due to their wrapuptime being longer than the queue's wrapuptime and
ringinuse=no for the queue.

(closes issue #10215, reported by Doug, repaired by me)

Special thanks to fkasumovic for pointing out the source of the problem and to bweschke for helping to come up with a solution!



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79748 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-16 21:16:40 +00:00
Joshua Colp
2c4fe2dc00 Merged revisions 76653 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r76653 | file | 2007-07-23 15:28:13 -0300 (Mon, 23 Jul 2007) | 4 lines

(closes issue #5866)
Reported by: tyler
Do not force channel format changes when a generator is present. The generator may have changed the formats itself and changing them back would cause issues.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@76654 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-23 18:29:48 +00:00
Joshua Colp
6d143d401f Backport GCC 4.2 fixes. Without these Asterisk won't build under devmode using GCC 4.2.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@75712 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-18 20:00:23 +00:00
Mark Michelson
613059e270 Change to my previous fix regarding agent logoff soft. Now uses deferlogoff instead of loginstart
since loginstart is used after logoff. Thanks to makoto for pointing this out and suggesting the fix.

(closes issue #10178, reported and patched by makoto, with modification by me)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@74998 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-12 23:00:32 +00:00
Mark Michelson
b827d5a183 Merged revisions 74719 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r74719 | mmichelson | 2007-07-11 16:12:30 -0500 (Wed, 11 Jul 2007) | 5 lines

The cli command "agent logoff Agent/x soft" did not work...at all. Now it does.

(closes issue #10178, reported and patched by makoto, with slight modification for 1.4 and trunk by me)


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@74722 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-11 21:14:09 +00:00
Jason Parker
f3c04c4b7e Merged revisions 74376 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r74376 | qwell | 2007-07-10 14:03:45 -0500 (Tue, 10 Jul 2007) | 4 lines

Fix an issue with wrapuptime not working when using AgentLogin.

Issue 10169, patch by makoto, with a minor mod by me to not re-break issue 9618

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@74379 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-10 19:06:24 +00:00
Mark Michelson
757160d5c9 Merged revisions 73674 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r73674 | mmichelson | 2007-07-06 10:26:40 -0500 (Fri, 06 Jul 2007) | 5 lines

Fixed a bug wherein agents get stuck busy. (issue 9618, reported by jiddings, patched by moi)

closes issue #9618


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@73675 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-06 15:27:28 +00:00
Joshua Colp
e973bf0ba9 Minor tweak for queueing up the unhold frame... this will teach me to do bugs while half asleep. (issue #10046 reported by dimas)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@71522 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-25 13:03:03 +00:00
Joshua Colp
2886f912d6 Check to make sure the channel pointer is present before queueing up an unhold frame on it. (issue #10046 reported by dimas)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@71412 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-25 00:49:21 +00:00
Russell Bryant
e7cb53e8b2 Fix loading persistent queue members when using realtime configuration for queues.
Also, remove an unneeded leading slash for the astdb family.
(issue #9911, patch by atis)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@68280 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-07 21:16:07 +00:00
Russell Bryant
6b76a95f09 Fix a weird problem where when a caller talking to someone sitting behind an
agent channel sent a digit, the digit would be played to the agent for forever.
This is because chan_agent always returned -1 from its send_digit_begin and _end
callbacks.  This non-zero return value indicates to the Asterisk core that it
would like an inband DTMF generator put on the channel.  However, this is the
wrong thing to do.  It should *always* return 0, instead.  When the digit begin
and end functions are called on the proxied channel, the underlying channel
will indicate whether inband DTMF is needed or not, and the generator will be
put on that one, and not the Agent channel.
(issue #9615, #9616, reported by jiddings and BigJimmy, and fixed by me)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@62218 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-27 21:10:51 +00:00
Steve Murphy
7d5a79a0b9 This is a big improvement over the current CDR fixes. It may still need refinement, but this won't have as many folks bothered.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@60989 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-04-09 18:32:07 +00:00
Joshua Colp
43f841cadf Merged revisions 57092 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r57092 | file | 2007-02-28 13:55:45 -0500 (Wed, 28 Feb 2007) | 2 lines

Fix a few more issues with the agent logoff CLI command. (issue #9123 reported by arbrandes)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@57093 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-28 18:57:52 +00:00
Joshua Colp
4f5689f95f Merged revisions 55669 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r55669 | file | 2007-02-20 17:39:14 -0500 (Tue, 20 Feb 2007) | 2 lines

Defer clearing callback information if channels are up until they are hung up. This ensures the hangup process goes smoothly and no channels get hung in limbo. (issue #8088 reported by kebl0155)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@55670 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-20 22:47:00 +00:00
Joshua Colp
b0df14b32c Merged revisions 54999 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r54999 | file | 2007-02-16 17:13:45 -0500 (Fri, 16 Feb 2007) | 2 lines

Do not send indications through ast_indicate in chan_agent but instead go directly to the technology. This way when indications are emulated they happen on the Agent channel and do not screw up formats on the channels. (issue #8439 reported by punkgode)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@55002 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-02-16 22:18:46 +00:00
Russell Bryant
33235b40d6 Merge the changes from the /team/group/vldtmf_fixup branch.
The main bug being addressed here is a problem introduced when two SIP
channels using SIP INFO dtmf have their media directly bridged.  So, when a
DTMF END frame comes into Asterisk from an incoming INFO message, Asterisk
would try to emulate a digit of some length by first sending a DTMF BEGIN
frame and sending a DTMF END later timed off of incoming audio.  However,
since there was no audio coming in, the DTMF_END was never generated.  This
caused DTMF based features to no longer work.

To fix this, the core now knows when a channel doesn't care about DTMF BEGIN
frames (such as a SIP channel sending INFO dtmf).  If this is the case, then
Asterisk will not emulate a digit of some length, and will instead just pass
through the single DTMF END event.

Channel drivers also now get passed the length of the digit to their digit_end
callback.  This improves SIP INFO support even further by enabling us to put
the real digit duration in the INFO message instead of a hard coded 250ms.
Also, for an incoming INFO message, the duration is read from the frame and
passed into the core instead of just getting ignored.

(issue #8597, maybe others...)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@51311 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-19 17:49:38 +00:00
Kevin P. Fleming
444adcb477 reduce stack consumption for AMI and AMI/HTTP requests by nearly 20K in most cases
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@49676 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-01-05 22:16:33 +00:00
Steve Murphy
517978fd5f These mods are to solve the problem in bug 7506. It's a lot of rework to solve a fairly small problem... such is life.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@47303 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-07 23:46:41 +00:00
Tilghman Lesher
e05a2752e8 Reverse change of "show" to "list" and make several other commands more consistent with "category verb arguments"
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@47051 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-11-02 23:00:20 +00:00
Kevin P. Fleming
9cf9c1373b merge down mark's users.conf fixes
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@43392 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-20 23:01:50 +00:00
Tilghman Lesher
d70fe791c2 A few misses from constification
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43366 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-20 20:57:57 +00:00
BJ Weschke
e8606d9c57 Merged revisions 42133 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r42133 | bweschke | 2006-09-06 14:16:41 -0400 (Wed, 06 Sep 2006) | 6 lines

 Look ma! No more deadlocks! <sic>

 As posted from #7458 and others similar to it in Mantis:
 p->app_lock was a mutex really designed for use with agents not in callback mode. That being the case, I've tried to code it so that when callback mode is used, the app_lock mutex will not be locked/unlocked at all. Please let me know how you make out - and if you continue to deadlock now, please reproduce the deadlock logging information and post to Mantis. 


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43307 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-20 03:51:01 +00:00
Kevin P. Fleming
fcb999c01c merge qwell's CLI verbification work
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43212 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-18 19:54:18 +00:00
Joshua Colp
57ad1de60b Reference will be kept in the application component only right now. In the future this should be expanded to the channel driver (just like all the other channel drivers) (issue #7975 reported by andrewt)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43199 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-09-18 17:37:44 +00:00
Matt O'Gorman
05a695af72 everything that loads a config that needs a config file to run
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
2006-08-31 21:00:20 +00:00
Joshua Colp
c6977b9983 Merge in VLDTMF support with Zaptel/Core done by the ever great Darumkilla Russell Bryant and the RTP portion done by myself, Muffinlicious Joshua Colp. This has gone through so many discussions/revisions it's not funny but we finally have it!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41507 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-31 01:59:02 +00:00
Kevin P. Fleming
0a27d8bfe5 merge new_loader_completion branch, including (at least):
- 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
2006-08-21 02:11:39 +00:00
Kevin P. Fleming
fd0ac387a9 deprecate chan_agent callback mode
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@40521 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-08-19 17:05:43 +00:00
Kevin P. Fleming
6d0742fc16 merge Russell's 'hold_handling' branch, finally implementing music-on-hold handling the way it was decided at AstriDevCon Europe 2006 (and the way people really want it to be)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37988 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-19 20:44:39 +00:00
BJ Weschke
4149f37efa Merged revisions 37212 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r37212 | bweschke | 2006-07-06 15:38:45 -0500 (Thu, 06 Jul 2006) | 3 lines

 Don't do wierd things on a callback agent that has attempted logoff while still on the phone.


........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37301 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-07 16:16:41 +00:00
Russell Bryant
73e8e2ab1f Blocked revisions 36725 via svnmerge
........
r36725 | russell | 2006-07-03 00:19:09 -0400 (Mon, 03 Jul 2006) | 4 lines

use ast_set_callerid to be more consistent and to make sure that the
"callerid" option in the conf files is always handled the same way and sets ANI
(issue #7285, gkloepfer)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@36726 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-07-03 04:25:21 +00:00
Olle Johansson
f48a573439 Code cleanup while trying to understand this channel...
- please check


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@36181 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-27 20:52:52 +00:00
Olle Johansson
d29e2a58da Add video support to chan_agent.
More ideas for developing better video support in Asterisk?

Join the asterisk-video mailing list to help out in the 
Asterisk Video Task Force!


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@35365 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-21 20:11:09 +00:00
BJ Weschke
ecabadf2cd Fixed per kpfleming's suggestion to asterisk-dev.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@34464 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-16 12:56:03 +00:00
BJ Weschke
9cbcf110e1 Make sure agent_tech is unregistered within unload_module(). It's in 1.2, but was lost at some point in /trunk. #7374 (jstorm)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@34461 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-16 12:24:14 +00:00
Olle Johansson
fb8483c430 - Use our standard of doxygen comments, not javadoc style
- small reformatting changes


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@34093 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-14 14:46:19 +00:00
Kevin P. Fleming
fca19e7635 use a compiler builtin (which uses processor instructions) for this operation
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@33933 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-13 20:59:15 +00:00
Kevin P. Fleming
472c1ca282 simplify autoconfig include mechanism (make tholo happy he can use lint again :-)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@32846 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-07 18:54:56 +00:00
Russell Bryant
f9c578a8a0 - The recent change to linklists.h broke the build on linux for some reason.
So, I have removed all of the uses of AST_LIST_HEAD_INIT and replaced them
   with the equivalent static initializations.
 - On passing, fix a memory leak in the unload_module() function of chan_agent.
   The agents list mutex was never destroyed, and the elements in the agents
   list were not freed.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@26990 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-11 20:07:44 +00:00
Russell Bryant
04ecb29d03 remove almost all of the checks of the result from ast_strdupa() or alloca().
As it turns out, all of these checks were useless, because alloca will never
return NULL.


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@26451 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-10 13:22:15 +00:00
Kevin P. Fleming
fdcfd6469b ensure that control frames with payload can be sent to channel drivers via ->indicate()
update iax2_indicate to pass control frame payload to the connected channel
add an API call for sending an indication with payload, and use it for control frames with payload


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@26417 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-05-10 12:24:11 +00:00