fixed lack of stream?
[spider.git] / perl / DXMsg.pm
index 5691b725dbbda64231cef15696d5f48ea132cc69..92c113304726f82aaa8efaf75e4841b328e9ac2d 100644 (file)
@@ -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 $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
@@ -1208,6 +1208,8 @@ sub import_one
        # first line;
        my $line = shift @$ref;
        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');
@@ -1224,16 +1226,16 @@ sub import_one
                        ;
                } elsif ($notincalls && ($f eq 'RR')) {
                        $rr = '1';
-               } elsif ($f eq '@' && @f) {       # this is bbs syntax, for AT
+               } 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 =~ /^<\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 ?