[asterisk-commits] may: branch may/ooh323_ipv6_direct_rtp r321272 - in /team/may/ooh323_ipv6_dir...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Fri May 27 08:46:32 CDT 2011
Author: may
Date: Fri May 27 08:46:09 2011
New Revision: 321272
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=321272
Log:
Merged revisions 313781,313822,313867,313980,314018,314078-314080,314116,314158,314204,314207,314252,314359,314415,314418,314471,314509,314551,314598,314666,314733-314735,314781,314824,314960 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk
................
r313781 | rmudgett | 2011-04-15 01:02:38 +0400 (Fri, 15 Apr 2011) | 27 lines
Merged revisions 313780 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r313780 | rmudgett | 2011-04-14 15:59:56 -0500 (Thu, 14 Apr 2011) | 20 lines
Leftover debug messages unconditionally sent to the console.
Executing Dial(DAHDI/1/18475551212,300,) with the echotraining config
option enabled outputs the following debug messages unconditionally:
Dialing T1847555121 on 1
Dialing www2w on 1
* Made debug messages in my_dial_digits() normal debug messages that do
not get output unless enabled.
* Reworded some debug messages in my_dial_digits() to be clearer.
* Replace strncpy() with ast_copy_string() in my_dial_digits() which does
the same job better.
(closes issue #18847)
Reported by: vmikhelson
Tested by: rmudgett
........
................
r313822 | twilson | 2011-04-15 01:53:01 +0400 (Fri, 15 Apr 2011) | 7 lines
Sets video mark bit on format field correctly
This fixes a regression in the media architecture change
where video frames did not have their video mark set
correctly. dvossel wrote this. twilson kindly committed
this, mmichelson found the bug.
................
r313867 | jrose | 2011-04-15 19:20:46 +0400 (Fri, 15 Apr 2011) | 24 lines
Merged revisions 313860 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
................
r313860 | jrose | 2011-04-15 10:08:05 -0500 (Fri, 15 Apr 2011) | 17 lines
Merged revisions 313859 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2
........
r313859 | jrose | 2011-04-15 09:58:37 -0500 (Fri, 15 Apr 2011) | 10 lines
Fix a Tab Completion bug that occurs due to multiple matches on a substring.
Makes word_match function in cli.c repeat a search for a command string until
a proper match is found or the string is searched to the last point.
(closes issue #17494)
Reported by: ffossard
Review: https://reviewboard.asterisk.org/r/1180/
........
................
................
r313980 | wedhorn | 2011-04-17 13:28:05 +0400 (Sun, 17 Apr 2011) | 8 lines
Consolidate all new call calls to run through new setsubstate_ringout.
(closes issue #17907)
Reported by: wedhorn
Patches:
cleanup.stateringout.diff uploaded by wedhorn (license 30)
Tested by: salecha, wedhorn
................
r314018 | dvossel | 2011-04-18 17:42:51 +0400 (Mon, 18 Apr 2011) | 23 lines
Merged revisions 314017 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r314017 | dvossel | 2011-04-18 08:41:06 -0500 (Mon, 18 Apr 2011) | 17 lines
sip codec negotiation of dynamic rtp payloads error fix
This patch fixes how chan_sip handles dynamic rtp payload types
it does not understand. At the moment if a dynamic payload's mime
type does not match one we understand, the payload does not get
removed from our payload table. As a result of this, the payload
is set to whatever dynamic codec we use internally for that payload
number on outgoing INVITES. This is incorrect.
This patch fixes this by properly checking the rtpmap set function's
return code to make sure it was found. The function can return both
-1 and -2 depending on the source of the mismatch. We were just
checking -1 explicitly.
Review: https://reviewboard.asterisk.org/r/1169/
........
................
r314078 | dvossel | 2011-04-18 20:22:55 +0400 (Mon, 18 Apr 2011) | 29 lines
Merged revisions 314067 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r314067 | dvossel | 2011-04-18 10:23:45 -0500 (Mon, 18 Apr 2011) | 22 lines
Remove the need for deadlock avoidance in chan_sip do_monitor.
Deadlock avoidance between the sip pvt and the pvt->owner is
very difficult. Now that channel's are ao2 objects, this complication
is no longer necessary. It turns out the pvt's msg queue only
exists because of deadlock avoidance (when deadlock avoidance fails
msgs were added to a queue to be processed later), so this goes away as well.
The technique used in the new sip_lock_pvt_full() function should
be used as a template for replacing all locations where deadlock
avoidance occurs between a channel tech_pvt and the pvt's owner.
My hope is that this will begin a reversal of the invalid channel
driver locking architecture we have been using for so long.
This patch also resolves an issue where the pvt->owner gets
unlocked during processing the msg queue.
(closes issue #18690)
Reported by: dvossel
Review: https://reviewboard.asterisk.org/r/1182/
........
................
r314079 | rmudgett | 2011-04-18 20:25:06 +0400 (Mon, 18 Apr 2011) | 14 lines
Merged revisions 314068 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r314068 | rmudgett | 2011-04-18 11:02:12 -0500 (Mon, 18 Apr 2011) | 7 lines
Unclear code in app_dial.c.
Make code formatting clear.
(closes issue #19134)
Reported by: oej
........
................
r314080 | rmudgett | 2011-04-18 20:27:14 +0400 (Mon, 18 Apr 2011) | 29 lines
Merged revisions 314069 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r314069 | rmudgett | 2011-04-18 11:10:10 -0500 (Mon, 18 Apr 2011) | 22 lines
The AsyncAGI command loop is lax in the value it returns for the return status.
* Return correct status: SUCCESS/FAILED/HANGUP. Previously, abnormal
exits from the command loop such as hangup would return SUCCESS.
* The "asyncagi break" command now returns SUCCESS and is now the only way
to break the command loop with that status. Previously, it returned
FAILED.
* The AMI event AsyncAGI End is no longer sent if the AsyncAGI Start event
is not sent. Previously, this happened because of an error setting up the
AGI pipes.
* All executed AGI commands now get an AsyncAGI Exec result event.
Previously, if the command returned failure (because of hangup), the
command loop just exited with FAILURE and did not send the AsyncAGI Exec
result event.
* Makes sure that the channel frame queue is empty on hangup.
Review: https://reviewboard.asterisk.org/r/1183/
........
................
r314116 | rmudgett | 2011-04-18 23:48:00 +0400 (Mon, 18 Apr 2011) | 10 lines
Problems with ISDN MWI to phones.
The "controlling user number" is always the number of the voice mail box
which is identical with the subscriber number itself. This number which
is listed in the ISDN phone MWI menu cannot be called back to contact the
voice mail box. The controlling user number should be made configurable.
JIRA ABE-2738
JIRA SWP-2846
................
r314158 | oej | 2011-04-19 12:22:18 +0400 (Tue, 19 Apr 2011) | 2 lines
Add explanation of strange flag setup in app_meetme (stolen from Mark's message to asterisk-dev)
................
r314204 | lmadsen | 2011-04-19 18:25:47 +0400 (Tue, 19 Apr 2011) | 22 lines
Merged revisions 314203 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
................
r314203 | lmadsen | 2011-04-19 09:24:25 -0500 (Tue, 19 Apr 2011) | 15 lines
Merged revisions 314202 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2
........
r314202 | lmadsen | 2011-04-19 09:23:39 -0500 (Tue, 19 Apr 2011) | 7 lines
Update seconds to milliseconds in ast_verb output.
(closes issue #19084)
Reported by: smurfix
Patches:
app_dial.patch uploaded by smurfix (license 547)
Tested by: lmadsen, smurfix
........
................
................
r314207 | lmadsen | 2011-04-19 18:28:46 +0400 (Tue, 19 Apr 2011) | 21 lines
Merged revisions 314206 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
................
r314206 | lmadsen | 2011-04-19 09:28:15 -0500 (Tue, 19 Apr 2011) | 14 lines
Merged revisions 314205 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2
........
r314205 | lmadsen | 2011-04-19 09:27:50 -0500 (Tue, 19 Apr 2011) | 6 lines
Remove duplicate documentation from func_channel.c
(closes issue #18970)
Reported by: IgorG
Patches:
func_channel.c.doc.diff uploaded by IgorG (license 20)
........
................
................
r314252 | lmadsen | 2011-04-19 19:42:32 +0400 (Tue, 19 Apr 2011) | 16 lines
Merged revisions 314251 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r314251 | lmadsen | 2011-04-19 10:42:10 -0500 (Tue, 19 Apr 2011) | 8 lines
Use SSLv23_client_method instead of old SSLv2 only.
(closes issue #19095)
(closes issue #19138)
Reported by: tzafrir
Patches:
no_ssl2.diff uploaded by tzafrir (license 46)
Tested by: russell, chazzam
........
................
r314359 | twilson | 2011-04-20 09:28:36 +0400 (Wed, 20 Apr 2011) | 11 lines
Merged revisions 314358 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r314358 | twilson | 2011-04-19 22:25:15 -0700 (Tue, 19 Apr 2011) | 4 lines
Initialize track pointer
ast_reentrancy_init checks to see if it is NULL before initializing with calloc
........
................
r314415 | dvossel | 2011-04-20 20:37:15 +0400 (Wed, 20 Apr 2011) | 2 lines
Fixes error with frame datalen being calculated from samples when this is not allwaya accurate.
................
r314418 | rmudgett | 2011-04-20 20:55:07 +0400 (Wed, 20 Apr 2011) | 9 lines
Merged revisions 314417 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r314417 | rmudgett | 2011-04-20 11:54:02 -0500 (Wed, 20 Apr 2011) | 1 line
AST_CONTROL_XXX comment changes.
........
................
r314471 | sruffell | 2011-04-20 23:56:07 +0400 (Wed, 20 Apr 2011) | 10 lines
codec_dahdi: DAHDI still advertises formats using the old bitfields.
Previously, the DAHDI format bit fields matched up with the Asterisk
bitfields. Since the Asterisk codec bit fields were replaced in r306010,
codec_dahdi needs to contain the formats itself. In the future, the DAHDI
formats should either change to something other than bitfields, or the
bitfields need to move from include/dahdi/kernel.h to
include/dahdi/user.h.
Signed-off-by: Shaun Ruffell <sruffell at digium.com>
................
r314509 | dvossel | 2011-04-21 00:52:15 +0400 (Thu, 21 Apr 2011) | 4 lines
Introduction of the JITTERBUFFER dialplan function.
Review: https://reviewboard.asterisk.org/r/1157/
................
r314551 | twilson | 2011-04-21 04:29:21 +0400 (Thu, 21 Apr 2011) | 20 lines
Merged revisions 314550 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
................
r314550 | twilson | 2011-04-20 17:23:04 -0700 (Wed, 20 Apr 2011) | 13 lines
Merged revisions 314549 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2
........
r314549 | twilson | 2011-04-20 17:17:34 -0700 (Wed, 20 Apr 2011) | 6 lines
Don't allocate more space than necessary for a sip_pkt
This extra allocation is a hold-over from when pkt->data was a
character array. Now that it is an allocated string, just allocate
enough for the sip_pkt.
........
................
................
r314598 | dvossel | 2011-04-21 22:11:40 +0400 (Thu, 21 Apr 2011) | 9 lines
New HD ConfBridge conferencing application.
Includes a new highly optimized and customizable
ConfBridge application capable of mixing audio at
sample rates ranging from 8khz-192khz.
Review: https://reviewboard.asterisk.org/r/1147/
................
r314666 | mnicholson | 2011-04-21 22:32:50 +0400 (Thu, 21 Apr 2011) | 34 lines
Merged revisions 314628 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
................
r314628 | mnicholson | 2011-04-21 13:24:05 -0500 (Thu, 21 Apr 2011) | 27 lines
Merged revisions 314620 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2
................
r314620 | mnicholson | 2011-04-21 13:22:19 -0500 (Thu, 21 Apr 2011) | 20 lines
Merged revisions 314607 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r314607 | mnicholson | 2011-04-21 13:19:21 -0500 (Thu, 21 Apr 2011) | 14 lines
Added limits to the number of unauthenticated sessions TCP based protocols are allowed to have open simultaneously. Also added timeouts for unauthenticated sessions where it made sense to do so.
Unrelated, the manager interface now properly checks if the user has the "system" privilege before executing shell commands via the Originate action.
AST-2011-005
AST-2011-006
(closes issue #18787)
Reported by: kobaz
(related to issue #18996)
Reported by: tzafrir
........
................
................
................
r314733 | rmudgett | 2011-04-22 02:39:45 +0400 (Fri, 22 Apr 2011) | 9 lines
Merged revisions 314732 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r314732 | rmudgett | 2011-04-21 17:38:44 -0500 (Thu, 21 Apr 2011) | 1 line
Correct DAHDIShowChannels XML documentation.
........
................
r314734 | rmudgett | 2011-04-22 02:42:41 +0400 (Fri, 22 Apr 2011) | 1 line
Simplify sig_pri.c:build_status().
................
r314735 | rmudgett | 2011-04-22 02:53:05 +0400 (Fri, 22 Apr 2011) | 8 lines
Implement AMI action PRIShowSpans.
PRIShowSpans works like the AMI action DAHDIShowChannels but for PRI
spans. It is similar to the CLI command "pri show spans".
(closes issue #15980)
Reported by: dwery
................
r314781 | russell | 2011-04-22 18:08:02 +0400 (Fri, 22 Apr 2011) | 25 lines
Merged revisions 314780 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
................
r314780 | russell | 2011-04-22 09:02:23 -0500 (Fri, 22 Apr 2011) | 18 lines
Merged revisions 314778 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2
........
r314778 | russell | 2011-04-22 08:58:03 -0500 (Fri, 22 Apr 2011) | 11 lines
Initialize buffers in getvar and getvarfull.
Initialize the buffers used to hold the result from GET VARIABLE or
GET VARIABLE FULL. The bug report shows func_read returning garbage in
the result. It assumed that the buffer passed in was initialized, like many
other functions do. In the more common code path (through the dialplan), it
is initialized, so just initialize it here too.
(closes issue #19050)
Reported by: johnz
........
................
................
r314824 | tzafrir | 2011-04-22 18:49:47 +0400 (Fri, 22 Apr 2011) | 9 lines
Merged revisions 314779 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
........
r314779 | tzafrir | 2011-04-22 16:59:43 +0300 (?\215?\149', 22 ?\215?\144?\215?\164?\215?\168 2011) | 2 lines
Fix a few typos (shown by Lintian)
........
................
r314960 | mnicholson | 2011-04-23 01:33:42 +0400 (Sat, 23 Apr 2011) | 31 lines
Merged revisions 314959 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8
................
r314959 | mnicholson | 2011-04-22 16:20:08 -0500 (Fri, 22 Apr 2011) | 24 lines
Merged revisions 314958 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2
................
r314958 | mnicholson | 2011-04-22 15:49:45 -0500 (Fri, 22 Apr 2011) | 17 lines
Merged revisions 311203,314908 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r311203 | mnicholson | 2011-03-17 14:14:37 -0500 (Thu, 17 Mar 2011) | 4 lines
Don't hold the pvt lock while streaming a file.
ABE-2756
........
r314908 | mnicholson | 2011-04-22 15:01:48 -0500 (Fri, 22 Apr 2011) | 4 lines
Prevent the login thread and the app threads from using the asterisk channel at the same time.
ABE-2756
........
................
................
................
Added:
team/may/ooh323_ipv6_direct_rtp/apps/confbridge/
- copied from r314960, trunk/apps/confbridge/
team/may/ooh323_ipv6_direct_rtp/apps/confbridge/conf_config_parser.c
- copied unchanged from r314960, trunk/apps/confbridge/conf_config_parser.c
team/may/ooh323_ipv6_direct_rtp/apps/confbridge/include/
- copied from r314960, trunk/apps/confbridge/include/
team/may/ooh323_ipv6_direct_rtp/apps/confbridge/include/confbridge.h
- copied unchanged from r314960, trunk/apps/confbridge/include/confbridge.h
team/may/ooh323_ipv6_direct_rtp/configs/confbridge.conf.sample
- copied unchanged from r314960, trunk/configs/confbridge.conf.sample
team/may/ooh323_ipv6_direct_rtp/funcs/func_jitterbuffer.c
- copied unchanged from r314960, trunk/funcs/func_jitterbuffer.c
Modified:
team/may/ooh323_ipv6_direct_rtp/ (props changed)
team/may/ooh323_ipv6_direct_rtp/CHANGES
team/may/ooh323_ipv6_direct_rtp/UPGRADE.txt
team/may/ooh323_ipv6_direct_rtp/apps/Makefile
team/may/ooh323_ipv6_direct_rtp/apps/app_confbridge.c
team/may/ooh323_ipv6_direct_rtp/apps/app_dial.c
team/may/ooh323_ipv6_direct_rtp/apps/app_meetme.c
team/may/ooh323_ipv6_direct_rtp/bridges/bridge_builtin_features.c
team/may/ooh323_ipv6_direct_rtp/bridges/bridge_softmix.c
team/may/ooh323_ipv6_direct_rtp/channels/chan_agent.c
team/may/ooh323_ipv6_direct_rtp/channels/chan_dahdi.c
team/may/ooh323_ipv6_direct_rtp/channels/chan_sip.c
team/may/ooh323_ipv6_direct_rtp/channels/chan_skinny.c
team/may/ooh323_ipv6_direct_rtp/channels/chan_unistim.c
team/may/ooh323_ipv6_direct_rtp/channels/sig_pri.c
team/may/ooh323_ipv6_direct_rtp/channels/sig_pri.h
team/may/ooh323_ipv6_direct_rtp/channels/sip/include/sip.h
team/may/ooh323_ipv6_direct_rtp/codecs/codec_dahdi.c
team/may/ooh323_ipv6_direct_rtp/codecs/codec_resample.c
team/may/ooh323_ipv6_direct_rtp/configs/chan_dahdi.conf.sample
team/may/ooh323_ipv6_direct_rtp/configs/http.conf.sample
team/may/ooh323_ipv6_direct_rtp/configs/sip.conf.sample
team/may/ooh323_ipv6_direct_rtp/configs/skinny.conf.sample
team/may/ooh323_ipv6_direct_rtp/configure
team/may/ooh323_ipv6_direct_rtp/configure.ac
team/may/ooh323_ipv6_direct_rtp/funcs/func_channel.c
team/may/ooh323_ipv6_direct_rtp/include/asterisk/abstract_jb.h
team/may/ooh323_ipv6_direct_rtp/include/asterisk/autoconfig.h.in
team/may/ooh323_ipv6_direct_rtp/include/asterisk/bridging.h
team/may/ooh323_ipv6_direct_rtp/include/asterisk/bridging_features.h
team/may/ooh323_ipv6_direct_rtp/include/asterisk/bridging_technology.h
team/may/ooh323_ipv6_direct_rtp/include/asterisk/channel.h
team/may/ooh323_ipv6_direct_rtp/include/asterisk/dsp.h
team/may/ooh323_ipv6_direct_rtp/include/asterisk/frame.h
team/may/ooh323_ipv6_direct_rtp/include/asterisk/rtp_engine.h
team/may/ooh323_ipv6_direct_rtp/main/abstract_jb.c
team/may/ooh323_ipv6_direct_rtp/main/bridging.c
team/may/ooh323_ipv6_direct_rtp/main/channel.c
team/may/ooh323_ipv6_direct_rtp/main/cli.c
team/may/ooh323_ipv6_direct_rtp/main/dsp.c
team/may/ooh323_ipv6_direct_rtp/main/http.c
team/may/ooh323_ipv6_direct_rtp/main/lock.c
team/may/ooh323_ipv6_direct_rtp/main/manager.c
team/may/ooh323_ipv6_direct_rtp/main/rtp_engine.c
team/may/ooh323_ipv6_direct_rtp/main/tcptls.c
team/may/ooh323_ipv6_direct_rtp/res/res_agi.c
team/may/ooh323_ipv6_direct_rtp/res/res_fax_spandsp.c
team/may/ooh323_ipv6_direct_rtp/res/res_musiconhold.c
team/may/ooh323_ipv6_direct_rtp/res/res_rtp_asterisk.c
Propchange: team/may/ooh323_ipv6_direct_rtp/
------------------------------------------------------------------------------
Binary property 'branch-1.8-merged' - no diff available.
Propchange: team/may/ooh323_ipv6_direct_rtp/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Fri May 27 08:46:09 2011
@@ -1,1 +1,1 @@
-/trunk:1-313143,313191,313280,313367,313383-313481,313483-313744
+/trunk:1-313143,313191,313280,313367,313383-313481,313483-313744,313781-313906,313908-313943,313945-315000
Modified: team/may/ooh323_ipv6_direct_rtp/CHANGES
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6_direct_rtp/CHANGES?view=diff&rev=321272&r1=321271&r2=321272
==============================================================================
--- team/may/ooh323_ipv6_direct_rtp/CHANGES (original)
+++ team/may/ooh323_ipv6_direct_rtp/CHANGES Fri May 27 08:46:09 2011
@@ -58,6 +58,13 @@
* Ability to define custom SILK formats in codecs.conf.
* Addition of speex32 audio format with translation.
+ConfBridge
+--------------------------
+ * New highly optimized and customizable ConfBridge application capable of
+ mixing audio at sample rates ranging from 8khz-96khz.
+ * CONFBRIDGE dialplan function capable of creating dynamic ConfBridge user
+ and bridge profiles on a channel.
+
Dialplan Variables
------------------
* Added ASTETCDIR, ASTMODDIR, ASTVARLIBDIR, ASTDBDIR, ASTKEYDIR, ASTDATADIR,
@@ -66,6 +73,10 @@
Dialplan Functions
------------------
+ * Addition of the JITTERBUFFER dialplan function. This function allows
+ for jitterbuffering to occur on the read side of a channel. By using
+ this function conference applications such as ConfBridge and MeetMe can
+ have the rx streams jitterbuffered before conference mixing occurs.
* Added DB_KEYS, which lists the next set of keys in the Asterisk database
hierarchy.
Modified: team/may/ooh323_ipv6_direct_rtp/UPGRADE.txt
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6_direct_rtp/UPGRADE.txt?view=diff&rev=321272&r1=321271&r2=321272
==============================================================================
--- team/may/ooh323_ipv6_direct_rtp/UPGRADE.txt (original)
+++ team/may/ooh323_ipv6_direct_rtp/UPGRADE.txt Fri May 27 08:46:09 2011
@@ -21,6 +21,10 @@
From 1.8 to 1.10:
+ConfBridge
+ - ConfBridge's dialplan arguments have changed and are not
+ backwards compatible.
+
HTTP:
- A bindaddr must be specified in order for the HTTP server
to run. Previous versions would default to 0.0.0.0 if no
Modified: team/may/ooh323_ipv6_direct_rtp/apps/Makefile
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6_direct_rtp/apps/Makefile?view=diff&rev=321272&r1=321271&r2=321272
==============================================================================
--- team/may/ooh323_ipv6_direct_rtp/apps/Makefile (original)
+++ team/may/ooh323_ipv6_direct_rtp/apps/Makefile Fri May 27 08:46:09 2011
@@ -27,6 +27,12 @@
include $(ASTTOPDIR)/Makefile.moddir_rules
+clean::
+ rm -f confbridge/*.o confbridge/*.i
+
+$(if $(filter app_confbridge,$(EMBEDDED_MODS)),modules.link,app_confbridge.so): $(subst .c,.o,$(wildcard confbridge/*.c))
+$(subst .c,.o,$(wildcard confbridge/*.c)): _ASTCFLAGS+=$(call MOD_ASTCFLAGS,app_confbridge)
+
ifneq ($(findstring $(OSARCH), mingw32 cygwin ),)
LIBS+= -lres_features.so -lres_ael_share.so -lres_monitor.so -lres_speech.so
LIBS+= -lres_smdi.so
Modified: team/may/ooh323_ipv6_direct_rtp/apps/app_confbridge.c
URL: http://svnview.digium.com/svn/asterisk/team/may/ooh323_ipv6_direct_rtp/apps/app_confbridge.c?view=diff&rev=321272&r1=321271&r2=321272
==============================================================================
--- team/may/ooh323_ipv6_direct_rtp/apps/app_confbridge.c (original)
+++ team/may/ooh323_ipv6_direct_rtp/apps/app_confbridge.c Fri May 27 08:46:09 2011
@@ -4,6 +4,7 @@
* Copyright (C) 2007-2008, Digium, Inc.
*
* Joshua Colp <jcolp at digium.com>
+ * David Vossel <dvossel at digium.com>
*
* See http://www.asterisk.org for more information about
* the Asterisk project. Please do not directly contact
@@ -21,6 +22,7 @@
* \brief Conference Bridge application
*
* \author\verbatim Joshua Colp <jcolp at digium.com> \endverbatim
+ * \author\verbatim David Vossel <dvossel at digium.com> \endverbatim
*
* This is a conference bridge application utilizing the bridging core.
* \ingroup applications
@@ -38,69 +40,183 @@
#include "asterisk/cli.h"
#include "asterisk/file.h"
-#include "asterisk/logger.h"
#include "asterisk/channel.h"
+#include "asterisk/pbx.h"
#include "asterisk/pbx.h"
#include "asterisk/module.h"
#include "asterisk/lock.h"
-#include "asterisk/app.h"
#include "asterisk/bridging.h"
#include "asterisk/musiconhold.h"
#include "asterisk/say.h"
#include "asterisk/audiohook.h"
#include "asterisk/astobj2.h"
+#include "confbridge/include/confbridge.h"
+#include "asterisk/paths.h"
+#include "asterisk/manager.h"
/*** DOCUMENTATION
- <application name="ConfBridge" language="en_US">
- <synopsis>
- Conference bridge application.
- </synopsis>
- <syntax>
- <parameter name="confno">
- <para>The conference number</para>
- </parameter>
- <parameter name="options">
- <optionlist>
- <option name="a">
- <para>Set admin mode.</para>
- </option>
- <option name="A">
- <para>Set marked mode.</para>
- </option>
- <option name="c">
- <para>Announce user(s) count on joining a conference.</para>
- </option>
- <option name="m">
- <para>Set initially muted.</para>
- </option>
- <option name="M" hasparams="optional">
- <para>Enable music on hold when the conference has a single caller. Optionally,
- specify a musiconhold class to use. If one is not provided, it will use the
- channel's currently set music class, or <literal>default</literal>.</para>
- <argument name="class" required="true" />
- </option>
- <option name="1">
- <para>Do not play message when first person enters</para>
- </option>
- <option name="s">
- <para>Present menu (user or admin) when <literal>*</literal> is received
- (send to menu).</para>
- </option>
- <option name="w">
- <para>Wait until the marked user enters the conference.</para>
- </option>
- <option name="q">
- <para>Quiet mode (don't play enter/leave sounds).</para>
- </option>
- </optionlist>
- </parameter>
- </syntax>
- <description>
- <para>Enters the user into a specified conference bridge. The user can exit the conference by hangup only.</para>
- <para>The join sound can be set using the <literal>CONFBRIDGE_JOIN_SOUND</literal> variable and the leave sound can be set using the <literal>CONFBRIDGE_LEAVE_SOUND</literal> variable. These can be unique to the caller.</para>
- <note><para>This application will not automatically answer the channel.</para></note>
- </description>
- </application>
+ <application name="ConfBridge" language="en_US">
+ <synopsis>
+ Conference bridge application.
+ </synopsis>
+ <syntax>
+ <parameter name="confno">
+ <para>The conference number</para>
+ </parameter>
+ <parameter name="bridge_profile">
+ <para>The bridge profile name from confbridge.conf. When left blank, a dynamically built bridge profile created by the CONFBRIDGE dialplan function is searched for on the channel and used. If no dynamic profile is present, the 'default_bridge' profile found in confbridge.conf is used. </para>
+ <para>It is important to note that while user profiles may be unique for each participant, mixing bridge profiles on a single conference is _NOT_ recommended and will produce undefined results.</para>
+ </parameter>
+ <parameter name="user_profile">
+ <para>The user profile name from confbridge.conf. When left blank, a dynamically built user profile created by the CONFBRIDGE dialplan function is searched for on the channel and used. If no dynamic profile is present, the 'default_user' profile found in confbridge.conf is used.</para>
+ </parameter>
+ <parameter name="menu">
+ <para>The name of the DTMF menu in confbridge.conf to be applied to this channel. No menu is applied by default if this option is left blank.</para>
+ </parameter>
+ </syntax>
+ <description>
+ <para>Enters the user into a specified conference bridge. The user can exit the conference by hangup or DTMF menu option.</para>
+ </description>
+ </application>
+ <function name="CONFBRIDGE" language="en_US">
+ <synopsis>
+ Set a custom dynamic bridge and user profile on a channel for the ConfBridge application using the same options defined in confbridge.conf.
+ </synopsis>
+ <syntax>
+ <parameter name="type" required="true">
+ <para>Type refers to which type of profile the option belongs too. Type can be <literal>bridge</literal> or <literal>user</literal>.</para>
+ </parameter>
+ <parameter name="option" required="true">
+ <para>Option refers to <filename>confbridge.conf</filename> option that is being set dynamically on this channel.</para>
+ </parameter>
+ </syntax>
+ <description>
+ <para>---- Example 1 ----</para>
+ <para>In this example the custom set user profile on this channel will automatically be used by the ConfBridge app.</para>
+ <para>exten => 1,1,Answer() </para>
+ <para>exten => 1,n,Set(CONFBRIDGE(user,announce_join_leave)=yes)</para>
+ <para>exten => 1,n,Set(CONFBRIDGE(user,startmuted)=yes)</para>
+ <para>exten => 1,n,ConfBridge(1) </para>
+ <para>---- Example 2 ----</para>
+ <para>This example shows how to use a predefined user or bridge profile in confbridge.conf as a template for a dynamic profile. Here we make a admin/marked user out of the default_user profile that is already defined in confbridge.conf.</para>
+ <para>exten => 1,1,Answer() </para>
+ <para>exten => 1,n,Set(CONFBRIDGE(user,template)=default_user)</para>
+ <para>exten => 1,n,Set(CONFBRIDGE(user,admin)=yes)</para>
+ <para>exten => 1,n,Set(CONFBRIDGE(user,marked)=yes)</para>
+ <para>exten => 1,n,ConfBridge(1)</para>
+ </description>
+ </function>
+ <manager name="ConfbridgeList" language="en_US">
+ <synopsis>
+ List participants in a conference.
+ </synopsis>
+ <syntax>
+ <xi:include xpointer="xpointer(/docs/manager[@name='Login']/syntax/parameter[@name='ActionID'])" />
+ <parameter name="Conference" required="false">
+ <para>Conference number.</para>
+ </parameter>
+ </syntax>
+ <description>
+ <para>Lists all users in a particular ConfBridge conference.
+ ConfbridgeList will follow as separate events, followed by a final event called
+ ConfbridgeListComplete.</para>
+ </description>
+ </manager>
+ <manager name="ConfbridgeListRooms" language="en_US">
+ <synopsis>
+ List active conferences.
+ </synopsis>
+ <syntax>
+ <xi:include xpointer="xpointer(/docs/manager[@name='Login']/syntax/parameter[@name='ActionID'])" />
+ </syntax>
+ <description>
+ <para>Lists data about all active conferences.
+ ConfbridgeListRooms will follow as separate events, followed by a final event called
+ ConfbridgeListRoomsComplete.</para>
+ </description>
+ </manager>
+ <manager name="ConfbridgeMute" language="en_US">
+ <synopsis>
+ Mute a Confbridge user.
+ </synopsis>
+ <syntax>
+ <xi:include xpointer="xpointer(/docs/manager[@name='Login']/syntax/parameter[@name='ActionID'])" />
+ <parameter name="Conference" required="true" />
+ <parameter name="Channel" required="true" />
+ </syntax>
+ <description>
+ </description>
+ </manager>
+ <manager name="ConfbridgeUnmute" language="en_US">
+ <synopsis>
+ Unmute a Confbridge user.
+ </synopsis>
+ <syntax>
+ <xi:include xpointer="xpointer(/docs/manager[@name='Login']/syntax/parameter[@name='ActionID'])" />
+ <parameter name="Conference" required="true" />
+ <parameter name="Channel" required="true" />
+ </syntax>
+ <description>
+ </description>
+ </manager>
+ <manager name="ConfbridgeKick" language="en_US">
+ <synopsis>
+ Kick a Confbridge user.
+ </synopsis>
+ <syntax>
+ <xi:include xpointer="xpointer(/docs/manager[@name='Login']/syntax/parameter[@name='ActionID'])" />
+ <parameter name="Conference" required="true" />
+ <parameter name="Channel" required="true" />
+ </syntax>
+ <description>
+ </description>
+ </manager>
+ <manager name="ConfbridgeLock" language="en_US">
+ <synopsis>
+ Lock a Confbridge conference.
+ </synopsis>
+ <syntax>
+ <xi:include xpointer="xpointer(/docs/manager[@name='Login']/syntax/parameter[@name='ActionID'])" />
+ <parameter name="Conference" required="true" />
+ </syntax>
+ <description>
+ </description>
+ </manager>
+ <manager name="ConfbridgeUnlock" language="en_US">
+ <synopsis>
+ Unlock a Confbridge conference.
+ </synopsis>
+ <syntax>
+ <xi:include xpointer="xpointer(/docs/manager[@name='Login']/syntax/parameter[@name='ActionID'])" />
+ <parameter name="Conference" required="true" />
+ </syntax>
+ <description>
+ </description>
+ </manager>
+ <manager name="ConfbridgeStartRecord" language="en_US">
+ <synopsis>
+ Start recording a Confbridge conference.
+ </synopsis>
+ <syntax>
+ <xi:include xpointer="xpointer(/docs/manager[@name='Login']/syntax/parameter[@name='ActionID'])" />
+ <parameter name="Conference" required="true" />
+ <parameter name="RecordFile" required="false" />
+ </syntax>
+ <description>
+ <para>Start recording a conference. If recording is already present an error will be returned. If RecordFile is not provided, the default record file specified in the conference's bridge profile will be used, if that is not present either a file will automatically be generated in the monitor directory.</para>
+ </description>
+ </manager>
+ <manager name="ConfbridgeStopRecord" language="en_US">
+ <synopsis>
+ Stop recording a Confbridge conference.
+ </synopsis>
+ <syntax>
+ <xi:include xpointer="xpointer(/docs/manager[@name='Login']/syntax/parameter[@name='ActionID'])" />
+ <parameter name="Conference" required="true" />
+ </syntax>
+ <description>
+ </description>
+ </manager>
***/
/*!
@@ -115,69 +231,19 @@
static const char app[] = "ConfBridge";
-enum {
- OPTION_ADMIN = (1 << 0), /*!< Set if the caller is an administrator */
- OPTION_MENU = (1 << 1), /*!< Set if the caller should have access to the conference bridge IVR menu */
- OPTION_MUSICONHOLD = (1 << 2), /*!< Set if music on hold should be played if nobody else is in the conference bridge */
- OPTION_NOONLYPERSON = (1 << 3), /*!< Set if the "you are currently the only person in this conference" sound file should not be played */
- OPTION_STARTMUTED = (1 << 4), /*!< Set if the caller should be initially set muted */
- OPTION_ANNOUNCEUSERCOUNT = (1 << 5), /*!< Set if the number of users should be announced to the caller */
- OPTION_MARKEDUSER = (1 << 6), /*!< Set if the caller is a marked user */
- OPTION_WAITMARKED = (1 << 7), /*!< Set if the conference must wait for a marked user before starting */
- OPTION_QUIET = (1 << 8), /*!< Set if no audio prompts should be played */
-};
-
-enum {
- OPTION_MUSICONHOLD_CLASS, /*!< If the 'M' option is set, the music on hold class to play */
- /*This must be the last element */
- OPTION_ARRAY_SIZE,
-};
-
-AST_APP_OPTIONS(app_opts,{
- AST_APP_OPTION('A', OPTION_MARKEDUSER),
- AST_APP_OPTION('a', OPTION_ADMIN),
- AST_APP_OPTION('c', OPTION_ANNOUNCEUSERCOUNT),
- AST_APP_OPTION('m', OPTION_STARTMUTED),
- AST_APP_OPTION_ARG('M', OPTION_MUSICONHOLD, OPTION_MUSICONHOLD_CLASS),
- AST_APP_OPTION('1', OPTION_NOONLYPERSON),
- AST_APP_OPTION('s', OPTION_MENU),
- AST_APP_OPTION('w', OPTION_WAITMARKED),
- AST_APP_OPTION('q', OPTION_QUIET),
-});
-
-/* Maximum length of a conference bridge name */
-#define MAX_CONF_NAME 32
-
/* Number of buckets our conference bridges container can have */
#define CONFERENCE_BRIDGE_BUCKETS 53
-/*! \brief The structure that represents a conference bridge */
-struct conference_bridge {
- char name[MAX_CONF_NAME]; /*!< Name of the conference bridge */
- struct ast_bridge *bridge; /*!< Bridge structure doing the mixing */
- unsigned int users; /*!< Number of users present */
- unsigned int markedusers; /*!< Number of marked users present */
- unsigned int locked:1; /*!< Is this conference bridge locked? */
- AST_LIST_HEAD_NOLOCK(, conference_bridge_user) users_list; /*!< List of users participating in the conference bridge */
- struct ast_channel *playback_chan; /*!< Channel used for playback into the conference bridge */
- ast_mutex_t playback_lock; /*!< Lock used for playback channel */
-};
-
[... 7760 lines stripped ...]
More information about the asterisk-commits
mailing list