2. handle @gb7tlh.#35.eu type addresses as well
[spider.git] / cmd / send.pl
index 3c08ddbbb483bac93a733cfe4f7e81ccb64613c5..59b535f73fae60da27fe6388345d4dfa9723752c 100644 (file)
@@ -32,7 +32,7 @@ $loc->{rrreq} = '0';
 
 if ($self->state eq "prompt") {
 
-       my @f = split /\s+/, $line;
+       my @f = split /\b/, $line;
 
        # any thing after send?
        return (1, $self->msg('e6')) if !@f;
@@ -92,6 +92,16 @@ if ($self->state eq "prompt") {
                        ;
                } elsif ($notincalls && ($f eq 'RR')) {
                        $loc->{rrreq} = '1';
+               } elsif ($f eq '<' && @f) {     # this is bbs syntax  for from call
+                       $loc->{from} = uc shift @f;
+               } elsif (($f =~ /^[\@\.\#]$/ || $f eq '.#') && @f) {       # this is bbs syntax, for send it 'to node'
+                       shift @f;
+               } elsif ($f =~ /^\$/) {     # this is bbs syntax  for a bid
+                       next;
+               } elsif ($f =~ /^<\S+/) {     # this is bbs syntax  for from call
+                       ($loc->{from}) = $f =~ /^<(\S+)$/;
+               } elsif ($f =~ /^\@\S+/) {     # this is bbs syntax  for origin
+                       ($loc->{origin}) = $f =~ /^\@(\S+)$/;
                } else {
 
                        # callsign ?
@@ -136,6 +146,8 @@ if ($self->state eq "prompt") {
        $self->func("DXMsg::do_send_stuff");
        $self->state('send1');
        push @out, $self->msg('m1');
+} else {
+       push @out, $self->msg('m17', $self->state);
 }
 
 return (1, @out);