ve7cc => '0,VE7CC program special,yesno',
lastmsgpoll => '0,Last Msg Poll,atime',
inscript => '9,In a script,yesno',
+ handle_xml => '9,Handles XML,yesno',
inqueue => '9,Input Queue,parray',
);
use vars qw($VERSION $BRANCH);
-
-main::mkver($VERSION = q$Revision$);
+$VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ );
+$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/ || (0,0));
+$main::build += $VERSION;
+$main::branch += $BRANCH;
# object destruction
sub DESTROY
return $channels{$call} = $self;
}
+# rebless this channel as something else
+sub rebless
+{
+ my $self = shift;
+ my $class = shift;
+ return $channels{$self->{call}} = bless $self, $class;
+}
+
sub rec
{
my ($self, $msg) = @_;
# obtain a channel object by callsign [$obj = DXChannel::get($call)]
sub get
{
- return $channels{$_[0]};
+ my $call = shift;
+ return $channels{$call};
}
# obtain all the channel objects
sub is_node
{
my $self = shift;
- return $self->{'sort'} =~ /[ACRSX]/;
+ return $self->{'sort'} =~ /[ACRSXW]/;
}
# is it an ak1a node ?
sub is_ak1a
return unless $conn;
my $call = $self->{call};
- for (@_) {
-# chomp;
- my @lines = split /\n/;
- for (@lines) {
- $conn->send_later("D$call|$_");
- dbg("-> D $call $_") if isdbg('chan');
+ foreach my $l (@_) {
+ for (ref $l ? @$l : $l) {
+ my @lines = split /\n/;
+ for (@lines) {
+ $conn->send_later("D$call|$_");
+ dbg("-> D $call $_") if isdbg('chan');
+ }
}
}
- $self->{t} = time;
+ $self->{t} = $main::systime;
}
# send a file (always later)