add function code to filename
authorDobrica Pavlinusic <dpavlin@rot13.org>
Sat, 3 Oct 2020 18:10:13 +0000 (20:10 +0200)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Sat, 3 Oct 2020 18:10:13 +0000 (20:10 +0200)
zc-mqtt

diff --git a/zc-mqtt b/zc-mqtt
index 579282b..0b44a06 100755 (executable)
--- a/zc-mqtt
+++ b/zc-mqtt
@@ -89,7 +89,10 @@ while (1) {
        mkdir "$queue" if ( ! -e "$queue" );
        mkdir "$queue/$dir" if ( ! -e "$queue/$dir" );
        mkdir "$queue/$dir/up" if ( ! -e "$queue/$dir/up" );
-       write_file "$queue/$dir/up/$t", $msg->string;
+
+       my $function_code = unpack('C',substr($msg->message,2,1));
+
+       write_file "$queue/$dir/up/$t.$function_code", $msg->message;
 
        mkdir "$queue/$dir/down" if ( ! -e "$queue/$dir/down" );
        mkdir "$queue/$dir/down/.done" if ( ! -e "$queue/$dir/down/.done" );
@@ -107,6 +110,7 @@ while (1) {
                                retain => 0, #$retain,
                                topic => $topic,
                                message => $raw);
+                       $pending =~ s{$queue/$dir/down/}{};
                        rename "$queue/$dir/down/$pending", "$queue/$dir/down/.done/$pending";
                }
       }