Testing Early Alpha & Pre-Releases
Developers and early adopters may wish to experiment with the latest code. Occasionally, the developers may compile a pre-bundled snapshot of working distribution complete with the runtime components. Visit the Telegard.org homepage downloads section to obtain a snapshot build. This article covers testing from a source code checkout.
Getting Prepared
See the article on Setting up your development environment It is recommended to create a symbolic link to the source code checkout that points from the suggested install location to the source code root:
sudo ln -s /home/myuser/repos/telegard /opt/telegard
Where /home/myuser/repos/telegard is the checkout root of the source code tree.
Configuration File
Before starting, you should review and change any configuration parameters in bbs/conf/opentg.conf.yaml:
--- database: type: embedded driver: jdbc:postgresql host: localhost:5432 name: database user: username pass: pass bbs: name: Telegard/2 BBS tagline: Another Installation of OpenTelegard/2 theme: opentg login: attempts: 5 lockout: 8 usehint: true allownew: true signup: default_group: users ask_address: false ask_postal: false ask_country: false ask_phone: false ask_gender: true ask_bday: true ask_custom1: true custom1: How did you hear about us? (75 chars max) ask_custom2: false custom2: Where do you work? (75 chars max) ask_custom3: false custom3: How long have you been using BBS'es?
Database Selection
Telegard ships with the H2 database for rapid deployment. This is the recommended database engine. The configuration file is parsed during startup to check the type of database configured. If embedded' is selected, the remaining variables for this section are ignored. To use Postgresql, additional steps are required to install the JDBC driver and configure the database server and is beyond the scope of this document. Other database engines may work, but are currently untested and unsupported.
Starting H2
H2 has been decoupled from the code, meaning it no longer runs inside of nor started by the Telegard process. This ensures multi-user capability by preventing database locking and allows for more advanced configuration of the engine for future features. A simple init script has been written to start and stop the database, start a web console, and perform backups. This init script is not currently designed for running out of a linux distro's /etc/rc.d directory at this time, but instead a standalone tool. To start the service:
/opt/telegard/h2.init.sh start
Working with the H2 Database
Stopping H2
You should stop the running instance of H2 when completed testing as this will ensure a clean shutdown and disconnect any active connections. To stop the service:
/opt/telegard/h2.init.sh stop
Accessing Web Frontend
H2 Ships with a browser based administration tool for performing SQL functions (insert, update, delete, etc). The web server is included with the tool and runs on port 8082. The provided init script will start the web server and you should be able to point a web browser to the instance on http://localhost:8082. To start the web frontend service:
/opt/telegard/h2.init.sh web
The init script runs in the foreground. To stop the webservice, press 'CTRL-C' to exit. If you choose to background the instance, be sure to shut it down cleanly.
Taking backups
The included initscript for h2 has two functions backup and sqldump with two distinct differences. To make a zip copy of the database file itself, run the following command with the server stopped:
/opt/telegard/h2.init.sh backup
To create a .sql dump file of the schema and data, you can run the following command either while running:
/opt/telegard/h2.init.sh sqldump
Using the Telegard executable
Currently, Telegard is launched by performing the following commands:
cd /opt/telegard/bbs ./tg.rb
OpenTelegard/2 :: Copyright (c) 2008-2010, Chris Tusa.
Distributed by LeafScale Systems, All rights reserved.
Usage:
-g, --genconfig Build sample configuration.
-d, --daemon Run Server Daemon.
-l, --login Perform Local Login to system.
-s, --showuser Show user list
-u, --update Check for & Perform Update.
-t, --test Test.
-v, --version Print version and exit.
-w, --who WFC Style Screen (who is online monitoring)
-h, --help Show this help message.
Note: The command switches shown may change at any time during the development process.(not all features may work)Logins
All logins are uppercase. Typing lowercase characters will convert them during input to uppercase. This is to prevent case-sensitive naming.
Default SYSOP password
changeme is the default password for the sysop user.
Bugs
Reporting Bugs
Bugs are tracked and reported via the Launchpad Project page. Refer to this page for the most up-to-date list of bugs and fixes.
Known Bugs
- An issue is currently present when running the program for this first time against an empty H2 database and additionally occurs during a first time login. This is caused when the database model for the Users and Callhistory tables are created and the Sequel ORM requests a refresh. The error is gone after a 2nd attempt.





