OurNet::BBS - Component Object Model for BBS systems

    This document describes version 1.67 of OurNet::BBS, released November
    11, 2010.

        use strict;
        use OurNet::BBS;
        # use OurNet::BBS 'big5'; # use unicode strings internally

        my $BBS = OurNet::BBS->new({
            backend => 'MELIX',             # use the Melix BBS backend
            bbsroot => '/home/melix',       # where to find the BBS data

        my $brd = $BBS->{boards}{sysop};    # the sysop board
        my $mtime;

        printf (
            "This BBS has %d boards, %d groups.\n",
            scalar keys(%{$BBS->{boards}}),
            scalar keys(%{$BBS->{groups}}),

        eval { $mtime = $brd->{articles}->mtime };
        die "Error: cannot read board $board -- $@\n" if $@;

        printf (
            "The $board board has %d articles, %d top-level archive entries.\n",
            $#{$brd->{articles}}, $#{$brd->{archives}},

        # A simple Sysop board article monitor
        print "Watching for new articles...\n";

        while (1) {
            print "=== wait here ($mtime) ===\n";
            sleep 5 until ($brd->{articles}->refresh);

            foreach my $article (@{$brd->{articles}}) {
                print "Found article: $article->{title}\n" 
                    if $article->btime > $mtime;

            $mtime = $brd->{articles}->mtime;

    (Currently, this project exists mainly for historical/archival purposes,
    not for active development.)

    OurNet-BBS is a cross-protocol distributed network, built as an
    abstraction layer over telnet BBS-based systems used in Hong Kong, China
    and Taiwan. It implements a flexible object model for different BBS
    backends, along with an asymmetric authentication and remote procedure
    call protocol.

    This project aims to become a *protocol agnostic* middle-ware solution
    for identity-based information storage & retrieval, much like the
    Project Jabber's goal toward instant messaging, or Project JXTA's aim
    toward distributed services.

    For some of its practical uses, search for OurNet::BBSApp on CPAN, and
    the sample scripts in the eg/ directory in this module's distribution.

    This section has been moved to the ChangeLog file in the source

    OurNet::BBS::Tutorial for a general overview of the OurNet::BBS model.

    OurNet::BBS::Roadmap for the design goals, components, and related

    Chia-Liang Kao <>, Audrey Tang <>.

    Copyright 2001-2010 by Chia-Liang Kao <>, Audrey Tang

    This program is free software; you can redistribute it and/or modify it
    under the same terms as Perl itself.

    See <>