fix up times and move things around for pc92
[spider.git] / perl / DXProtout.pm
index 657057c9e03cbb99f056457018714bdc050af177..6b06fb13440d615f40f9cba4d16702bc7be8000b 100644 (file)
@@ -25,7 +25,7 @@ $BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/  || (0,0))
 $main::build += $VERSION;
 $main::branch += $BRANCH;
 
-use vars qw($sentencelth $handle_xml);
+use vars qw($sentencelth);
 
 $sentencelth = 180;
 
@@ -123,8 +123,8 @@ sub pc17
 # Request init string
 sub pc18
 {
-       my $flags = "";
-       $flags .= " xml" if $handle_xml
+       my $flags = " pc92";
+       $flags .= " xml" if DXXml::available()
        return "PC18^DXSpider Version: $main::version Build: $main::build$flags^$DXProt::myprot_version^";
 }
 
@@ -374,9 +374,50 @@ sub pc85
        return "PC85^$tonode^$fromnode^$call^$msg^~";
 }
 
-# spider route broadcast
-sub pc90
+# spider route broadcasts
+#
+
+
+sub _gen_pc92
+{
+       my $sort = shift;
+       my $ext = shift;
+       my $s = "PC92^$main::mycall^" . gen_pc9x_t() . "^$sort";
+       for (@_) {
+               $s .= "^" . _encode_pc92_call($_, $ext);
+       }
+       return $s . '^H99^';
+}
+
+sub gen_pc92_with_time
+{
+       my $call = shift;
+       my $sort = shift;
+       my $t = shift;
+       my $ext = 1;
+       my $s = "PC92^$call^$t^$sort";
+       for (@_) {
+               $s .= "^" . _encode_pc92_call($_, $ext);
+       }
+       return $s . '^H99^';
+}
+
+# add a local one
+sub pc92a
+{
+       return _gen_pc92('A', 0, @_);
+}
+
+# delete a local one
+sub pc92d
+{
+       return _gen_pc92('D', 0, @_);
+}
+
+# send a config
+sub pc92c
 {
+       return _gen_pc92('C', 1, @_);
 }
 
 1;