@title;noquote@ @signatory;noquote@ @context_bar;noquote@

Why

@package_name@ was created to publish the conversation logs of the #openacs IRC channel at OpenACS in a way that allowed the logs to be indexed and subject to the OpenACS permission system.

Background

While Dave Beckett's IRC Chat logger also can generate a HTML log @package_name@ improves upon Dave's logger in several ways:

  1. By transforming the RDF log to HTML one is free to create HTML logs in any format desired.
  2. Once transformed to HTML the log is stored in an Edit-This-Page page which allows selective permissions on the log and causes the log to be indexed by the site's search engine.
  3. Furthermore placing the log in an Edit-This-Page page the log encapsules the log with the master template of site.

Installation

Note: This release has been developed on PostgreSQL only. Please report any problems you might find in the OpenACS bugtracker. The bugtracker can also be used to contribute patches to the @package_name@ package (for example to add Oracle support).

The @package_name@ requires tDOM and Edit-This-Page to be installed. tDOM provides the XML parsing and XSLT capabilities that @package_name@ relies upon. Please follow the installation instructions included with tDOM. Edit-This-Page is another OpenACS module and is available from OpenACS.

Included with @package_name@ is a modified copy of Dave Beckett's RDF IRC Chat Logger. Dave's Perl script has been modified to allow the bot to respond in private to messages originating in the public channel. The logger script is located in the perl directory of @package_name@, type ./logger --help for a complete list of command line options.

During the development of @package_name@ the Code Mill used the following parameters to start logging


logger \ 
-nick eavesdrop \ 
-lroot /web/thecodemill/data/eavesdrop/log/ \ 
-log %Y-%m-%d \ 
-admin /web/thecodemill/data/eavesdrop/admin/ \ 
-uroot "http://www.thecodemill.biz/irc/log/" \ 
bla irc://irc.freenode.net/openacs
      

Place logger under supervision using daemontools or crontab to guarantee that the bot stays connected to the IRC channel it is logging.

Check this usenet message should you be experiencing problems with the perl package Net::IRC which logger depends on.

With tDOM installed and logger connected to the IRC channel it is time to mount and configure @package_name@.

Usage

  1. Mount @package_name@ directly under an instance of Edit-This-Page. E.g. if /irc/log/ is an instance of Edit-This-Page then mount @package_name@ at /irc/log/logger/.
  2. Configured @package_name@. Configuration is via @package_name@ parameters. The package has 4 parameters:
    1. irc_channel_name

      The name of the IRC channel being logged. This should match the name of the IRC channel that the Perl logger script is logging. E.g. #openacs

    2. xsl_stylesheet

      The full path to the XSL stylesheet to be used to transform the RDF log into HTML. The default.xsl stylesheet in the data directory of the @package_name@ package will be used if no value is specified.

    3. irc_rdf_dir

      The full path to the directory containing the logger RDF files. This is the directory that the Perl logger script writes the RDF (and text) log files to. E.g. /web/thecodemill/data/eavesdrop/log/

    4. irc_log_interval

      The interval (in seconds) with which IRC Logger should check for changes in the current RDF file. The default is 300 seconds (or 5 minutes).

Last but not least, restart AOLserver to start scheduled procedure irc::logger::scheduled_update that checks for updates of today's IRC log and puts an Edit-This-Page page of the log directly under the instance of Edit-This-Page that @package_name@ is mounted under.

@package_name@ can be mounted more than once. Each instance processing the logs of a different bot. New logs are added to the top of the page, preceded by a link called 'current' which is a symlink to the latest IRC log.

There is an additional 'current' link in @package_name@ for ease of linking to the latest IRC log from other packages or from external sites. This additional link is necessary because the 'current' link on the page listing the IRC logs can not be referred to as /irc/log/current. Edit-This-Page does not redirect the request for /irc/log/current to the latest log but produces a '404 Page not found' error instead. Hence the additional 'current' link at /irc/log/logger/current.

@package_name@ will link to the user's profile and include the full name for users of the site who have entered their IRC nick as their OpenACS screen name.

Credits

The @package_name@ was designed and written by Bart Teeuwisse of the Code Mill for OpenACS.

The @package_name@ is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

The @package_name@ is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

A copy of the GNU General Public License is included. If not write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA