Thursday, January 04, 2007

Web-Meetme, Scheduled conferencing for Asterisk

I came across this package a while back and have been playing a bit with it. But I really got it working after Dan Austin released the version 3.0 just a two days ago. Then again I had to switch to SVN version in order get it completeley working.
Managed conferencing solution using Asterisk, Web-MeetMe and a database-driven scheduler. From the projects readme.
Web-MeetMe for Asterisk
Web-MeetMe is a collection of PHP pages that leverage
the database for scheduling and the Asterisk Manager interface
to monitor and control active conferences.

The scheduler currently supports these features:
+ Conference number conflict avoidance
+ Recurring conferences
* Daily, weekly or bi-weekly
+ Enforces a user password if a admin password
is set
+ Seperate views for past, current and future
conferences
+ Editing future conferences
* Includes a series of conferences
+ Deleting past conferences
+ CDR-like view of past conferences
* Includes a link to conference recordings
+ One click features to-
* Extend an active conference (time)
* Kick out all participants
* Out-call to include participants
+ Optional early join features
* fuzzystart allows a caller to enter a
room early (in seconds, set in cbmysql.conf)
* earlyalert notifies a call that their
conference has not yet started, if they
enter a valid conference number and the
conference is scheduled to start soon.
(in seconds, set in cbmysql.conf)

App_cbmysql
When combined with a database, MySQL or Postgress,
CBMySQL can authenticate a caller, verify that the conference
they are attempting to join is scheduled and enforce the
maximum participent count.

CBMySQL can distinguish between a conference
administrator and a standard user based on pins. Different
options may be set in the configuration file to join the
caller to the conference based on their status. A standard
user might be joined in a listen only mode as an example.

CBEnd
CBEnd is a small PHP script that monitors for active
conferences. When it identifies a current conference, it checks
the scheduler database and enforces the conference duration.
The default behaviour is to announce that the conference is to
end five minutes before the scheduled end time. This allows the
conference owner or administrator to update the conference using
Web-MeetMe to extend the duration.

CBEnd uses the Asterisk Manager interface to issue commands
to the conferencing application. The current commands include
identifying active conferences and the 'Kick all' command.

This script is also responsible for maintaining the
CDR tables. The script is optional, but not using it limits
the overall system functionality.

** Installation
* Dependencies
- Asterisk 1.4 or later
- MySQL 3.23 or later.
!! Other databases may work, but testing
!! and development have been against MySQL
- PHP 4.3 or later
!! Reports depend on mod_gd and GD-2.0.28
!! or later
!! PEAR::DB (php-pear)

* Install Web-MeetMe
Download the latest Web-MeetMe tgz file from
http://www.sf.net/projects/web-meetme and extract it to your webservers
document root.
* Setup the database
Create a table called booking in your database. The
table is described in ./cbmysql/db-tables-v5.txt

* Compile and install CBMySQL
App_cbmysql is now included in the web-meetme package,
located in ./cbmysql. To install just run make; make install

Copy the sample cbmysql.conf to /etc/asterisk and create
a dialplan similar to the one in cb-extensions.conf.sample
Modify the settings to suit your system. The location of the
mysql.sock file is likely not correct, check /etc/my.conf for
the correct location.

Modify the ../web-meetme/lib/defines.php to match you
database settings.

Copy ../web-meetme/phpagi/phpagi.example.conf to
/etc/asterisk and modify it to match the settings in your
manager.conf

If you intend to use the authentication functions,
it is strongly recommended that you use SSL and force all
conenctions to the Web-MeetMe pages to use HTTPS.

* LDAP or Active Directory integration
Edit ./lib/defines and set the AUTH_TYPE to adLDAP.
Set the ADMIN_GROUP to appropriate list, the default is
"Domain Admins", but you might not want the network folks
controlling your telephony systems. Optionally you can
chanege the browser session timeout.

Edit ./lib/adLDAP and replace all instances of
"yourdomain" and "yourserver" with the values for your
network.

* Usage
If all of the steps have been followed, you should be
able to open your browser, connect to the Web-MeetMe page and
schedule a conference. A new conference start time defaults
to the time it is scheduled, so modify it if needed. Any
required fields that are left blank will be auto-generated.
Note the conference room number and password.

Dial the number you have assigned for conferencing, and
try the conference you have just added. If the time and password
are correct, you will be joined to the conference.

You can now use the Web-Meetme monitor function to manage
your conference.

Links;
Web-Meetme download
Asterisk IPPBX


0 comments:

Blog Widget by LinkWithin