OurNet::BBS - Component Object Model for BBS systems
This document describes version 1.66 of OurNet::BBS, released October 30, 2003.
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;
}
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.
If you are new to the telnet-bbs platform, please download a copy of Melix BBS
software (in English, Traditional Chinese and Simplified Chinese) at
<http://melix.elixus.org/>.
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
distribution.
OurNet::BBS::Tutorial for a general overview of the
OurNet::BBS model.
OurNet::BBS::Roadmap for the design goals, components, and related discussions.
<http://melix.elixus.org/> for development news, new releases, and binary
distributions.
Chia-Liang Kao <clkao@clkao.org>, Autrijus Tang
<autrijus@autrijus.org>
Copyright 2001, 2002, 2003 by Chia-Liang Kao <clkao@clkao.org>, Autrijus
Tang <autrijus@autrijus.org>.
This program is free software; you can redistribute it and/or modify it under
the same terms as Perl itself.
See <http://www.perl.com/perl/misc/Artistic.html>