]> www.average.org Git - loctrkd.git/blobdiff - gps303/lookaside.py
Rename gps303proto to zx303proto
[loctrkd.git] / gps303 / lookaside.py
index fb976a00acfd1a968aded27af08d72f4883faf17..2e759d1ef109ec2a227d5f772ee981a6c0b2bf52 100644 (file)
@@ -9,7 +9,7 @@ from struct import pack
 import zmq
 
 from . import common
-from .gps303proto import parse_message, WIFI_POSITIONING
+from .zx303proto import parse_message, proto_name, WIFI_POSITIONING
 from .zmsg import Bcast, Resp, topic
 
 log = getLogger("gps303/lookaside")
@@ -22,7 +22,7 @@ def runserver(conf: ConfigParser) -> None:
     zctx = zmq.Context()  # type: ignore
     zsub = zctx.socket(zmq.SUB)  # type: ignore
     zsub.connect(conf.get("collector", "publishurl"))
-    zsub.setsockopt(zmq.SUBSCRIBE, topic(WIFI_POSITIONING.PROTO))
+    zsub.setsockopt(zmq.SUBSCRIBE, topic(proto_name(WIFI_POSITIONING)))
     zpush = zctx.socket(zmq.PUSH)  # type: ignore
     zpush.connect(conf.get("collector", "listenurl"))
 
@@ -38,7 +38,9 @@ def runserver(conf: ConfigParser) -> None:
                 msg,
             )
             try:
-                lat, lon = qry.lookup(msg.mcc, msg.mnc, msg.gsm_cells, msg.wifi_aps)
+                lat, lon = qry.lookup(
+                    msg.mcc, msg.mnc, msg.gsm_cells, msg.wifi_aps
+                )
                 resp = Resp(
                     imei=zmsg.imei,
                     when=zmsg.when,  # not the current time, but the original!
@@ -50,7 +52,10 @@ def runserver(conf: ConfigParser) -> None:
                 log.warning("Lookup for %s resulted in %s", msg, e)
 
     except KeyboardInterrupt:
-        pass
+        zsub.close()
+        zpush.close()
+        zctx.destroy()  # type: ignore
+        qry.shut()
 
 
 if __name__.endswith("__main__"):