Initializing the root server is actually extremely easy. It is done through a “wizard” interface that walks you through the process.
STEP 1: Getting the Root Server
You get the software from its location in the GitHub Open Source Repository.
This is a link to the downloads page where you can get the zipped file.
NOTE: You should always use this zipped file, as opposed to directly fetching from Git. That is because the project contains Composer Dependencies, You would need to do a `composer install` to get all the required dependencies.
Video Guides
We will be creating new BMLT Video tutorials. They will be made available here as they are completed and uploaded.
- STEP 1: Setting Up A New, Empty MySQL Database and User
- STEP 2: Setting Up The Root Server Directory On Your Hosting Server
- STEP 3: The BMLT Root Server Install Wizard
The file needs to be installed, unzipped, in the HTML directory of a server that fits the criteria we laid out in this page. You will generally place the files up there by FTP.
STEP 2: Set Up The Database
Your next step is to create a completely empty MySQL database, and a MySQL user that has complete rights to that database. You will need them for the wizard.
STEP 3: Start The Install Wizard
Once this has been done, point your browser to the new location, and follow the wizard, as described in this video guide, which will walk you through the steps below.
Once you have installed the directory, point your browser to the root (the main_server directory, or whatever you have named it -it may be the top level directory).
You will see this screen:
Enter The Database Information
Here is where you enter the database information for the database that you set up in Step 2.
At this point, you can test that the database information is sufficient. Press the “TEST” button, and you will see an alert that displays the result of the test.
If the test was successful (the database exists, the user has full rights to it, and it has not already been set up as a BMLT root server database), you will get the result shown in Figure 4.
However, if the database doesn’t exist, the user does not have full rights to it, or there was an error in the information that you provided, you will likely see an alert similar to Figure 5.
If the database information is correct, but the database already has BMLT root server data in it, you will see an alert like Figure 6.
Setting The Server Geographical Center
Once we have the database information correctly entered, we go to the next tab, where we set up the basic center for the entire root server. This information is used as the default location (if one is not set when creating a meeting, it will default to this location).
Google API Key
Before you proceed, you need to set up a Google Cloud Services API Key for JavaScript Google Maps. You will need this key in order to render your maps.
Exact instructions for obtaining this key are available in this post.
Once you have your API Key, you are ready to proceed. Hit “Next”, and you will arrive at this screen:
Enter the API Key in the text box, and hit the “USE KEY” button. The map will appear as seen below (assuming that you entered a valid key):
It is also possible to set a regional bias. This is something that helps the meeting search to find addresses and locations. For example, we have Paris, France, and Paris, Texas. In order to help us to locate Paris, France, over Paris TX, when we enter “Paris,” we may want to set the Region bias to “France”.
Setting Basic Server Parameters
The next tab is where we set up the various basic server parameters. We create a Server Administrator account, and some basic settings for the server (these can be changed after the fact).
Note that the Server Administrator password must pass the criteria set forth in the “Password Length” field (a simple “minimum length” criteria). It’s a very, very good idea to make this an extremely secure password.
You also have a series of choices that you can make about the Server setup. All of these choices can be changed after the fact by editing the configuration file.
Final Setup
Once you reach the final tab, your server is almost set up. You will see something like the screen in Figure 10.
As long as the database information, and the Server Administrator information is correct, you should have an “Initialize Database” button for this screen. If you do not have this button, then you should go back, and review your information.
Press this button. It will set up a “starter” database for you. You will now be left with a screen like that shown in Figure 11.
At this point, the database has been created, but the root server still has no idea how to connect to it.
Notice the large gray area. This is the complete contents of a text file that you will create. For security reasons, we don’t directly create it. Instead, we ask you to copy the text within this gray box (ignore the smaller gray area below), paste it into a text editor, then create a text file, called “auto-config.inc.php”.
You need to use your FTP program to copy this file to the same level as the main_server directory, as shown in Figure 12.
It is important to make sure that this file has the correct file permissions. There are a number of ways that this can be done. The smaller gray box on the page has a command line to do this (if you connect via SSH). The basic permission needs to be 0644, which means that the owner can read and write the file, and others can read it, but only if they are running on the server (this prevents the file from being read directly from the server, thus compromising your database password).
After this, if you refresh the page, you should see the standard login page, as in Figure 13.
Log in with the Server Administrator account that you set up during the wizard. Currently, this is the only user on the system.
Setting Up The First User And Service Body
At this point, you can’t create any meetings or Service bodies (see the choices in Figure 15). That’s because your first step is to set up your first Service Body Administrator user.
Only the Server Administrator can create users and Service bodies. This is a basic security policy. Additionally, even though the Server Administrator has “god” powers, it cannot be assigned to a Service body as its Primary Administrator.
The first thing that you need to do is to create a Service Body Administrator user, so you can have a Service body (if there are no available Service Body Administrators, then you will not be able to create a Service body).
Remember that a single Service Body Administrator can be assigned as the Primary Administrator for more than one Service body, so you only need to create one initial administrator.
Setting Up The First User
Open the “User Administration” disclosure line. You will see a screen like that shown in Figure 16.
Enter the information for the user. Make sure that they are a “Service Body Administrator” user (the default is “Disabled”). Once the information is entered, press the “Create This New User” button, and you should see something like the result screen in Figure 17.
At this point, you should log out, then log back in (as the Server Administrator). This will refresh the choices that you have. When you log back in, you should now see the choices shown in Figure 18.
Setting Up An Initial Service Body
Open the new “Service Body Administration” disclosure line. You will see a screen like that shown in Figure 19.
Enter the information for your first Service body. Note that you only have one choice for Primary Admin. This would be the initial user that you just created.
Once you have created this Service body, you should see some orange text, advising you to reload the screen. The best way to do this, is to sign out, then log back in (this time, you can log in as the new Service Body Administrator, if you choose).
You will now see a new “Meeting Editor” disclosure line. You can now add meetings.
However, you may, at this point, want to do a bulk import.