Meeting Room Booking System (MRBS) offers a quick and easy way to book various people, systems, rooms, etc. MRBS is also free and easy to use, which has made a number of my clients quite happy. Since reviewing MRBS for TechRepublic in March 2009, the open source, server-based tool has undergone a number of changes, so I decided to take a fresh look at installing and configuring it for our DIY readers.
- PHP4/5 with MySQL and/or PostgreSQL support
- MySQL or PostgreSQL
- Any web server that is supported by PHP
Installation note: For this post, I will install MRBS on a Ubuntu 11.04 deployment, but any machine that meets the system requirements will work.
Installation step-by-step instructions
Step one: Download the necessary file
From the MRBS SourceForge download page, grab the latest stable build of the application. After you download the file, move the file into the document root of your web server (for my Ubuntu server, this is /var/www).
Step two: Unpack the file
From the command line, using the tar command (with root or sudo privileges), unpack the downloaded file like so: tar xvzf mrbs-XXX.tar.gz (where XXX is the release number). This will create a new directory, mrbs-XXX (where XXX is the release number). For ease of use, it is important to change the name of this directory, which you can do with the command (with root or sudo privileges): mv mrbs-XXX mrbs (where XXX is the release number).
Step three: Create the database
I prefer using a tool like MySQL-Workbench to create the database. If you’d rather use the command line, follow these steps:
- Open a terminal window.
- Issue the command (with root or sudo privileges): mysqladmin create mrbs.
- Change into the /var/www/mrbs directory.
- Issue the command (with root or sudo privileges): mysql mrbs < tables.my.sql.
- If you want to add sample data (this is optional), issue the command (with root or sudo privileges): mysql mrbs < sample-data.sql.
Step four: Configure MRBS
The configuration of MRBS is handled within the /var/www/mrbs/web/config.inc.php file. Open that file in your favorite editor and look for the following:
- $timezone = “”; Set this to the proper time zone. For a listing of proper PHP timezones, view this page.
- $dbsys = “mysql”; Make sure this is set to the correct database type.
- $db_host = “localhost”; Make sure this is set to the hostname of the machine serving up MRBS.
- $db_database = “mrbs”; For our purposes, this should be set as shown.
- $db_login = “root”; This parameter needs to be set to the database admin user.
- $db_password = “PASSWORD”; Set this to the db admin password.
Step five: Configure authentication
I will show you a very basic authentication system that will get MRBS up and running quickly, though it’s the least secure type of authentication. If you want to make your system more secure, check out the various methods of authentication.
Authentication is configured within the config.inc.php file. You won’t find anything in that file referring to authentication because it has to be added. For basic authentication, you should add the following under the “/* Add lines from systemdefaults…” section to fit your needs:
$auth["admin"] = "USERNAME"; $auth["session"] = "php"; $auth["type"] = "config"; $auth["user"]["USERNAME"] = "PASSWORD";
The admin line indicates the users who are admin level; more than one user can be an administrator. You should replace everything in ALL CAPS with information specific to your users. And for multiple users, just add new $auth["user"] lines for each.
Step six: Log in
You can log in to your MRBS installation by pointing your browser to http://ADRESS_TO_SERVER/mrbs/web/. You will see the login prompt where the admin credentials should be entered. Once that is finished, start out by adding Areas and then adding Rooms within areas (Figure A).
Area and room setup is incredibly simple, and you can add as many areas or rooms as you need.
With a bit of creativity, you can customize MRBS to fit your needs. For example, if you want to use MRBS to schedule engineers, you could create an Engineer Area and then add a Room for each engineer (the room will be the engineer’s name) (Figure B).
MRBS can be set up for human resources and not just physical resources.
I encourage you to play around with the setup — I think you’ll find it incredibly easy to handle.