Skip to content

Configuring the Website

Leonardo Crauss Daronco edited this page Sep 26, 2014 · 8 revisions

Note: this is a currently draft

Mconf-Web stores all its configurations in a database and provides a management interface in the website where an admin user can edit most of these configurations. All important site-wide configurations should be available in this management page. If they are not, feel free to require a change posting an issue in our issue tracker.

There are basically 3 ways to configure the website:

  • Using the management area in the website: this is what you should do, see more about it below;
  • Pre-populate the database before creating it, using setup_conf.yml file: useful for development or to setup more than one website (see this page);
  • Hacking the source code and directly editing the database: you'll only need to do it if you need to change something that is not yet configurable using the management page. You'll also need knowledge in Rails if you need this.

It is also important to point out that the majority of the things you might change in the configurations of Mconf-Web will require a restart in the application. See more about it in the following of this page.

Management area

When you first setup Mconf-Web, an administrator user will be created. The default username, email and password are defined in the setup_conf.yml. By default these configurations are:

Log in with this user and you will have access to the management area using a link in the top bar:

Top bar management link

Clicking on this link will take you to the page showing you website's configurations. It will look similar to the page in the image below:

Website configuration page

Clicking in the "Edit" button you can edit all these parameters and also see tooltips explaining how they work:

Tips on the configuration page

Some of the most important things to edit are the username and the password of an email account that will be used to send all emails generated in Mconf-Web (registration confirmations, password resets, webconference invitations, and others). You can configure any SMTP account (by default we use a Gmail account). Changing any property related to this require you to restart the server to take effect.

The attributes currently available to be configured in this page are:

  • Name: The name of your website.
  • Description: A description for your website.
  • Application Domain: The domain of your server (e.g. my-server.com).
  • SMTP login: Login in your SMTP server (e.g. [email protected]).
  • SMTP password: Your SMTP password.
  • SMTP server: Your SMTP server (e.g. smtp.gmail.com).
  • SMTP domain: The domain of your SMTP server (e.g. gmail.com).
  • SMTP port: Port used for SMTP (e.g. 587).
  • Use TLS in SMTP: Mark if your need to use TLS in SMTP.
  • Auto start TLS in SMTP: When set to true, detects if STARTTLS is enabled in your SMTP server and starts to use it.
  • SMTP authentication type: Authentication type for SMTP (e.g. login).
  • SMTP sender: Email used to send the emails (e.g. [email protected]).
  • Language: Default language for your website (e.g. en).
  • Timezone: Default timezone for the website.
  • Signature: Signature used in emails sent from your website (e.g. Mconf).
  • SSL: Mark if you need to use SSL/HTTPS in your website. This is necessary so the application can generate links with HTTPS instead of HTTP when necessary (e.g. in emails that have links to the application).
  • Analytics Code: Code for Google Analytics (e.g. UA-12345678-9).
  • Feedback URL: URL that will be opened after a user logs out of a conference (e.g. a Google Drive doc such as https://docs.google.com/spreadsheet/viewform?hl=en_US&pli=1&formkey=123456789123456789#gid=0).
  • Send email on error: Mark if you want to receive emails when an exception occurs in your server.
  • Debug emails recipients: List of emails that should receive debug messages.
  • Debug emails subject prefix: Prefix used in the subject in debug messages (e.g. [mconf-web error]).
  • Enable Shibboleth: Mark if you want to allow shibboleth login in your website.
  • Shibboleth environment variables: Shibboleth variables that the application will read from the environment (e.g. shib-.*).
  • Shibboleth field for email: Shibboleth variable that will be used as the user's email (e.g. Shib-inetOrgPerson-mail).
  • Shibboleth field for name: Shibboleth variable that will be used as the user's name (e.g. Shib-inetOrgPerson-sn).
  • Shibboleth field for login: Shibboleth variable that will be used as the user's login (e.g. Shib-inetOrgPerson-id)
  • Help page: Address of any web page that will be linked in the "Help" link at the footer. Can be an external web site and has to include the entire URL with the protocol (e.g. http://mywebsite.com/mconf-web-help).
  • LDAP: Enable authentication: Mark if you want to allow login via LDAP in your website.
  • LDAP: Server IP or domain: Insert the IP or domain of the LDAP server (e.g. '192.111.22.33' or 'ldapserver.any.com')
  • LDAP: Server port: Insert the port which will be used to connect to the LDAP server (for LDAPS connection use 636)
  • LDAP: Full DN for the user: Insert the full DN (Distinguished Name) of the user to be used to connect to the LDAP server
  • LDAP: User password: Insert the password for the user that is going to access the LDAP server
  • LDAP: Full DN for UsersTreebase: This specifies the LDAP branch (DN) where the users that need to authenticate are located
  • LDAP: Field to obtain the username: Specifies which attribute returned by LDAP will be used to obtain the username of a user (e.g.: 'uid')
  • LDAP: Field to obtain the user's email: Specifies which attribute returned by LDAP will be used to obtain the email of a user (e.g.: 'mail')
  • LDAP: Field to obtain the user's full name: Specifies which attribute returned by LDAP will be used to obtain the full name of a user (e.g.: 'cn')
  • Require admins to approve new registrations: When checked, users will be able to register new accounts, but they will only be allowed to access the site once an administrator approves his account. Otherwise the users can freely access the website after registration. Be aware that if there are pending approvals and you uncheck this flag, these users will not be automatically approved!

Web conference configurations

Aside from site-wide configurations, the management area tab shows link to manage spaces, users, spams, and your web conferences servers and rooms. The web conference page will look similar to:

Configuring the webconference server

In this page you can alter your web conference server's information, manage its rooms and also see the current activity in the server. Note: currently only one web conference server can be used. Even if you add more servers, all rooms will be created in the first one.

The attributes you can configure in a server are:

  • Name: A name to identify the server;
  • URL: The URL to the API of the server, in the format http://server.com/bigbluebutton/api;
  • Security salt: The salt (or shared secret) of this server;
  • Version: The version of the Mconf-Live/BigBlueButton on this server (0.7, 0.8, etc);
  • String ID: A string to identify the server internally and use in URLs.

User permissions

Another important feature is to be able to make any user in the website an administrator. To do that, go to the user management page, find the target user and click in the "edit" icon near his/her name:

Editing a user

You will see a page where you can edit the information about the user and, in the bottom, you can mark a checkbox that turns the user into an administrator (he/she will have full control of the website!):

Page to edit a user

Restarting the server

See this page.

Note: When the application is restarted the first access will take a while to complete, since all the Rails environment must be loaded. Also, other processes (currently only delayed_job) required by Mconf-Web will be restarted and it might take the same amount of time for them to be started again.