5768447816
git-svn-id: http://bigbluebutton.googlecode.com/svn/trunk@3037 af16638f-c34d-0410-8cfa-b39d5352b314
108 lines
5.1 KiB
Plaintext
108 lines
5.1 KiB
Plaintext
AppKonference is a fork of AppConference. It comprises a set of enhancements
|
|
needed to migrate a MeetMe application to AppConference. The goals of this
|
|
project are scalability and stability focused on voice.
|
|
|
|
Here's the url to the AppKonference sourceforge site:
|
|
http://sourceforge.net/projects/appkonference/
|
|
|
|
You can check out the code for the AppKonference project using subversion:
|
|
svn co https://appkonference.svn.sourceforge.net/svnroot/appkonference
|
|
|
|
Here is a brief summary of the changes to AppConference:
|
|
|
|
Added commands to mute/unmute a conference, increase/decrease conference
|
|
volume, increase/decrease member volume, and start/stop moh for a member.
|
|
|
|
Changed play sound command so that more than one sound can be entered on
|
|
the command line.
|
|
|
|
Added conference parameter, max_users, that limits conference members to a user
|
|
specified maximum.
|
|
|
|
Added channel variable, KONFERENCE, which is set to MAXUSERS or KICKED after
|
|
exiting the application so that the reason for leaving a conference can be
|
|
determined in the dial plan.
|
|
|
|
Added application, KonferenceCount, was so that the member count can be used in
|
|
the dial plan.
|
|
|
|
Added new AMI event messages for mute status: ConferenceMemberMute,
|
|
ConferenceMemberUnmute, ConferenceMute, and ConferenceUnmute.
|
|
|
|
Added conference flags to ConferenceDTMF, ConferenceJoin, ConferenceState, and
|
|
ConferenceLeave AMI event messages.
|
|
|
|
Added "x" option so that when a moderator leaves callers get kicked.
|
|
|
|
Added "a" option which sets vad and telephone flags on conference entry.
|
|
|
|
Changed formatting of conference list command to include new listening
|
|
state and did some rearrangement so that the channel name is displayed without
|
|
truncation.
|
|
|
|
Fixes for locking: First, fixed the conference thread so that the
|
|
conference list lock is only locked when it's required. Second, changed the
|
|
conference mutex to a rdlock for greater concurrency. Third, changed the way
|
|
sounds are handled so the member lock is not held over calls to asterisk
|
|
procedures.
|
|
|
|
Fixes for compiling with asterisk 1.6 and ifdef'ing out video and/or text
|
|
and/or dtmf. The default is voice only. To compile with video, text, and dtmf
|
|
change the defaults in the Makefile or specify them on the command line: make
|
|
VIDEO=1 TEXT=1 DTMF=1.
|
|
|
|
Added an examples directory for a simple AMI based application and web site.
|
|
|
|
Changed find_member so that members are located via a hash table rather than a
|
|
sequential search through the conference and member lists. The size of the
|
|
table is configurable via the Makefile and the default is 997 buckets. To
|
|
change the default table size either edit the Makefile default or specify the
|
|
value on the command line: make CHANNEL_TABLE_SIZE=1009. Table entries are
|
|
list heads and chaining is used to resolve collisions so that the number of
|
|
entries is not limited to the number of buckets in the table. A bucket field
|
|
is added to the conference list command output so that a channel name can be
|
|
correlated with its hash table entry.
|
|
|
|
Changed add_member and remove_member for voice so that adding or removing a
|
|
member control block is O(1). Specifically, the allocation of member id's is
|
|
changed to work like MeetMe, that is, the member id list is ordered, new
|
|
entries are placed at the end of the list, and the next member id allocated is
|
|
the highest active id (the entry at the end of the list) plus one. Further,
|
|
member control blocks are doubly linked so that removing a block doesn't
|
|
require running the list to find the back pointer required to update the member
|
|
list.
|
|
|
|
Changed conference_kickchannel, dropping the conference name argument, so that
|
|
its signature is consistent with the other commands which refer to a member by
|
|
channel name.
|
|
|
|
Added conference parameter, type, that can be used to partition users into
|
|
groups within a conference which can be managed differently via the AMI. The
|
|
ConferenceJoin, ConferenceLeave, and ConferenceDTMF events are updated to
|
|
include the new type field.
|
|
|
|
Added command to display the conference version number. The version number is
|
|
either the AppKonference release number or the subversion revision number if the
|
|
code was checked out from the AppKonference repository.
|
|
|
|
Fix to bump the conference thread's priority and change its scheduling
|
|
algorithm to fifo when asterisk is started realtime with the "-p" option.
|
|
|
|
Added conference parameter, spy, which specifies a conference member channel
|
|
name, the spyee. When a conference is entered in spy mode, the spyer receives
|
|
voice only from the spyee. If unmuted, the spyer can whisper to the spyee,
|
|
that is, spyer voice is mixed with conference voice and sent to the spyee.
|
|
Note that this initial implementation limits one spyer per spyee and a spyer
|
|
can not be a spyee.
|
|
|
|
Added a new field, spy, to the conference list command output. The spy
|
|
field is the id of the spyee if the member is a spyer; otherwise, the asterisk
|
|
character is used to indicate the member is not a spyer.
|
|
|
|
Changed the application argument delimiter from the forward slash, "/", to the
|
|
comma character, ",", to simplify parsing of channel name parameters and to be
|
|
consistent with other asterisk applications.
|
|
|
|
Added "H" option which enables "music on hold" if there is only one member in
|
|
the conference.
|