projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed lack of stream?
[spider.git]
/
perl
/
DXMsg.pm
diff --git
a/perl/DXMsg.pm
b/perl/DXMsg.pm
index f66f98d7f8778c22084a234a6a189e37881f6302..92c113304726f82aaa8efaf75e4841b328e9ac2d 100644
(file)
--- a/
perl/DXMsg.pm
+++ b/
perl/DXMsg.pm
@@
-143,7
+143,7
@@
sub process
my @f = split /\^/, $line;
my ($pcno) = $f[0] =~ /^PC(\d\d)/; # just get the number
my ($tonode, $fromnode) = @f[1, 2];
my @f = split /\^/, $line;
my ($pcno) = $f[0] =~ /^PC(\d\d)/; # just get the number
my ($tonode, $fromnode) = @f[1, 2];
- my $stream = $f[3] if
$pcno > 29 && $pcno <= 33
;
+ my $stream = $f[3] if
($pcno >= 29 && $pcno <= 33) || $pcno == 42
;
SWITCH: {
if ($pcno == 28) { # incoming message
SWITCH: {
if ($pcno == 28) { # incoming message
@@
-1187,6
+1187,7
@@
sub import_msgs
my @out = import_one($main::me, \@msg, $splitit);
Log('msg', @out);
}
my @out = import_one($main::me, \@msg, $splitit);
Log('msg', @out);
}
+ queue_msg(0);
}
# import one message as a list in bbs (as extended) mode
}
# import one message as a list in bbs (as extended) mode
@@
-1206,7
+1207,9
@@
sub import_one
# first line;
my $line = shift @$ref;
# first line;
my $line = shift @$ref;
- my @f = split /\s+/, $line;
+ my @f = split /\b/, $line;
+ @f = map {s/\s+//g; length $_ ? $_ : ()} @f;
+
unless (@f && $f[0] =~ /^(:?S|SP|SB|SEND)$/ ) {
my $m = "invalid first line in import '$line'";
dbg($m) if isdbg('msg');
unless (@f && $f[0] =~ /^(:?S|SP|SB|SEND)$/ ) {
my $m = "invalid first line in import '$line'";
dbg($m) if isdbg('msg');
@@
-1223,16
+1226,16
@@
sub import_one
;
} elsif ($notincalls && ($f eq 'RR')) {
$rr = '1';
;
} elsif ($notincalls && ($f eq 'RR')) {
$rr = '1';
- } elsif (
$f eq '@' && @f) { # this is bbs syntax, for origin
-
$origin = uc
shift @f;
+ } elsif (
($f =~ /^[\@\.\#\$]$/ || $f eq '.#') && @f) { # this is bbs syntax, for AT
+ shift @f;
} elsif ($f eq '<' && @f) { # this is bbs syntax for from call
$from = uc shift @f;
} elsif ($f =~ /^\$/) { # this is bbs syntax for a bid
next;
} elsif ($f eq '<' && @f) { # this is bbs syntax for from call
$from = uc shift @f;
} elsif ($f =~ /^\$/) { # this is bbs syntax for a bid
next;
- } elsif ($f =~ /^<
\S+
/) { # this is bbs syntax for from call
-
($from) = $f =~ /^<(\S+)$/
;
- } elsif ($f =~ /^\
@\S+/) { # this is bbs syntax for origin
-
($origin) = $f =~ /^\@(\S+)$/
;
+ } elsif ($f =~ /^<
(\S+)
/) { # this is bbs syntax for from call
+
$from = $1
;
+ } elsif ($f =~ /^\
$\S+/) { # this is bbs syntax for bid
+ ;
} else {
# callsign ?
} else {
# callsign ?