X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FThingy%2FHi.pm;fp=perl%2FThingy%2FHi.pm;h=f274d6c8e0482206c33e8bec551f0253d23db3fb;hb=4327a846608d5828537a3c37f90848db0f10d06f;hp=0000000000000000000000000000000000000000;hpb=40e8bb424384f2aa4f772e02cb2caedbc41525cd;p=spider.git diff --git a/perl/Thingy/Hi.pm b/perl/Thingy/Hi.pm new file mode 100644 index 00000000..f274d6c8 --- /dev/null +++ b/perl/Thingy/Hi.pm @@ -0,0 +1,53 @@ +# +# Generate Hi (Hello) Thingies +# +# $Id$ +# +# Copyright (c) 2004 Dirk Koopman G1TLH +# + +package Thingy::Hi; + +use strict; + +use vars qw($VERSION $BRANCH); +$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; + +use vars qw(@ISA); + +@ISA = qw(Thingy); + +# this is my version of a PC18 +sub new +{ + my $pkg = shift; + my $tonode = shift; + my $t = $pkg->SUPER::new( _tonode=>$tonode, + id=>'DXSpider', v=>$main::version, b=>$main::build); + return $t; +} + +sub normal +{ + my $t = shift; + my $dxchan = DXChannel->get($t->{_fromnode}); + my $r = Route::Node::get($t->{_fromnode}) || Route::Node->new($t->{_fromnode}); + $r->version($t->{v}); + $r->build($t->{b}); + $r->software($t->{id}); + $r->np(1); + $r->lid($t->{_msgid}); + $r->lastupdate($main::systime); + + if ($dxchan->state eq 'init') { + my $ot = Thingy::Hi->new($t->{_fromnode}); + $dxchan->t_send($ot); + $dxchan->state('normal'); + } +} + +1; +