README of the plasma application for conference screens
========================================================
This application was originally devised by Stuart "Aq" Langridge for LUGRadio
Live in 2006. However, the original version was written in PHP. Barbie rewrote
this version in Perl for YAPC::Europe::2006.
Instructions
------------
1) Register Domain and Create DNS entries
Create your domain for accessing the site. For the examples below we will
assume this to be 'plasma.example.com'. Set up your DNS entries to point to
the correct server IP address.
2) Install Directories and Files
Untar this tarball and copy all the files under the ./cgi-bin and ./html
directories into your directory structure where you will be serving your web
pages from. In the examples below we will assume this is /var/www/plasma.
3) Install Perl Libraries
A version of Perl will need to be installed. The application has been tested
with version 5.6.1, 5.8.0, 5.8.4 and 5.8.7, but should work with all recent
releases.
If you don't already have them, you will need to install the following Perl
libraries from CPAN:
CGI
Image::Size
File::Find::Rule
If you are unfamiliar with installing from CPAN, you will need to run the
CPAN shell from the command line as follows:
$> cpan
cpan> install CGI
cpan> install Image::Size
cpan> install File::Find::Rule
cpan> quit
$>
After each install command above you will see messages display for each stage
of the installation process. If there are any failures, you may need to
consult the appropriate documentation or use an alternative install method
(e.g. from a package repository).
Note that you will need to have root or administrator access on the machine you
are installing these libraries. If you have sudo access, type 'sudo cpan' as
the first command.
If you are running Windows, you may install all of the above via the PPM
application. Simply type 'ppm' from a command line window.
4) Setup Web Server
Set up your web server to serve pages from the ./html directory and Perl
scripts (.pl) from the ./cgi-bin. Below is how this would look in Apache:
ServerName plasma.example.com
ServerAdmin admin@example.com
DocumentRoot /var/www/plasma/html
ScriptAlias /cgi-bin/ /var/www/plasma/cgi-bin/
Options +ExecCGI
ErrorLog /var/www/logs/plasma-error.log
CustomLog /var/www/logs/plasma-access.log common
5) Edit Schedule
Inside the ./cgi-bin/schedule.pl, we include the full schedule for the event.
This is listed in the DATA section at the end of the application. The format
for each entry is:
START | END | ROOM | SPEAKER | TITLE | ABSTRACT
These not be in any particular order, as the application will order these
appropriately when it loads them. The start and end date/time is of the format
YYYYMMDDhhmmss
Include morning, lunch and afternoon breaks, BOFs clean up time, etc using the
examples included.
6) Edit Marquee
The marquee scrolling text is held with the ./cgi-bin/marquee.pl application
in the DATA section. Edit contents as appropriate. Note that each line of the
marquee will be separated by a single whitespace in the actual display.
The top line of the marquee frame is the event name. Edit the '$EVENT_STR' as
required.
7) Edit Photos
The photos that will appear in the right hand panel of the display are all
taken from the directory ./html/photos/dailies. Drop files into this
directory and they will be included in the next refresh. The current refresh
is set at 10 minute intervals, if you wish to change this see the tag
in the ./cgi-bin/photos.pl application.
8) Logos, Images & Colours
In addition to the dynamic side of the application, there are a number of
images used to support the layout. You may need to change these to suit your
needs, although it is recommended you use the same names, otherwise you'll need
to ammend the .pl files.
Images used are:
./html/images/marquee-bg.jpg - background image for the marquee frame
./html/images/schedule-bg.jpg - background image for the schedule frame
./html/images/logo.jpg - your logo for the schedule frame
./html/images/tvstatic.gif - the interference image used between photos
It is recommended you keep the logo image at roughly 100 x 100 pixels.
Main colours are assumed to be white text on a black background. Suitable
colours for the time display in the bottom of the schedule frame, can be
amended through the use of the '$COLOUR_INNER' and '$COLOUR_OUTER' variables,
where the inner is the background colour of the display block and the outer is
the border colour.
9) Run It!
Restart Apache, if you haven't already done so, and point your browser at your
plasma domain, and the pages should load. You may need to tweak image files and
text to suit your application, but that is essentially it.
Have fun.
Copyright 2006 Stuart Langridge (PHP version).
Copyright 2006-2007 Barbie for Miss Barbell Productions.