]> www.average.org Git - loctrkd.git/blobdiff - loctrkd/zmsg.py
Implement sending commands from the web interface
[loctrkd.git] / loctrkd / zmsg.py
index da0dc77e39da6f38d7eaefe5adbdfe897f928b28..6539d5f18f67b8e3e88faa760ccbadb104af2861 100644 (file)
@@ -173,18 +173,21 @@ class Resp(_Zmsg):
 
 
 class Rept(_Zmsg):
-    """Broadcast Zzmq message with "rectified" proto-agnostic json data"""
+    """Broadcast zmq message with "rectified" proto-agnostic json data"""
 
-    KWARGS = (("imei", None), ("payload", ""))
+    KWARGS = (("imei", None), ("payload", ""), ("pmod", None))
 
     @property
     def packed(self) -> bytes:
         return (
             pack(
-                "16s",
-                "0000000000000000"
+                "16s16s",
+                b"0000000000000000"
                 if self.imei is None
                 else self.imei.encode(),
+                b"                "
+                if self.pmod is None
+                else self.pmod.encode(),
             )
             + self.payload.encode()
         )
@@ -194,4 +197,8 @@ class Rept(_Zmsg):
         self.imei = (
             None if imei == b"0000000000000000" else imei.decode().strip("\0")
         )
-        self.payload = buffer[16:].decode()
+        pmod = buffer[16:32]
+        self.pmod = (
+            None if pmod == b"                " else pmod.decode().strip("\0")
+        )
+        self.payload = buffer[32:].decode()