sensorgauges
[svn42.git] / checkphone.pl
index 6b3c67b..979c838 100755 (executable)
@@ -4,9 +4,7 @@ use Socket;
 use strict;
 my $fh;
 
-my $socketfile = $ARGV[0] || "/var/run/tuer/door_cmd.socket";
-sleep(1) while (! -S $socketfile);
-my $socketaddr = sockaddr_un($socketfile);
+my $zmqclient = "/flash/tuer/door_client_zmq";
 
 my $keys;
 my %good;
@@ -20,8 +18,9 @@ while (<$keys>)
                $good{$1}=$2;
        }
 }
-my $id = $ARGV[2];
-my $action = $ARGV[1];
+my $id = $ARGV[1];
+$id =~ s/^0/+43/;
+my $action = $ARGV[0];
 if ($good{$id})
 {
        if ($action == 1591)
@@ -29,6 +28,8 @@ if ($good{$id})
          send_to_fifo("close Phone ".$good{$id});
         } elsif ($action == 1590) {
          send_to_fifo("open Phone ".$good{$id});
+        } elsif ($action == 1592) {
+         send_to_fifo("reset Phone ".$good{$id});
         } else {
           send_to_fifo("log invalid action $action, but valid Phone $id");
         }
@@ -39,8 +40,9 @@ exit 0;
 
 sub send_to_fifo
 {
-       socket(my $conn, PF_UNIX, SOCK_STREAM,0) || die "socket: $!";
-       connect($conn, $socketaddr) || die "socket connect: $!";
+  open(my $conn, "| ".$zmqclient);
+       #socket(my $conn, PF_UNIX, SOCK_STREAM,0) || die "socket: $!";
+       #connect($conn, $socketaddr) || die "socket connect: $!";
        print $conn shift(@_)."\n";
        close($conn);
 }