X-Git-Url: http://average.org/gitweb/?a=blobdiff_plain;f=gps303%2Fstorage.py;h=5368efc575e9910bae5da767c0d1adcede239624;hb=1888de5a5dd4bdb85f3fb745341920a9996b278e;hp=9237871d862a2ca6b4dabc7e466114303fbd9960;hpb=80f2fab3fcdf6cd962b0d81f385169dbb7431076;p=loctrkd.git diff --git a/gps303/storage.py b/gps303/storage.py index 9237871..5368efc 100644 --- a/gps303/storage.py +++ b/gps303/storage.py @@ -1,16 +1,12 @@ """ Store zmq broadcasts to sqlite """ from datetime import datetime, timezone -from getopt import getopt from logging import getLogger -from logging.handlers import SysLogHandler -import sys -from time import time import zmq from . import common from .evstore import initdb, stow -from .gps303proto import parse_message +from .gps303proto import proto_of_message from .zmsg import Bcast log = getLogger("gps303/storage") @@ -28,20 +24,26 @@ def runserver(conf): try: while True: zmsg = Bcast(zsub.recv()) - msg = parse_message(zmsg.packet) - log.debug("IMEI %s from %s at %s: %s", zmsg.imei, zmsg.peeraddr, datetime.fromtimestamp(zmsg.when).astimezone(tz=timezone.utc), msg) + log.debug( + "%s IMEI %s from %s at %s: %s", + "I" if zmsg.is_incoming else "O", + zmsg.imei, + zmsg.peeraddr, + datetime.fromtimestamp(zmsg.when).astimezone(tz=timezone.utc), + zmsg.packet.hex(), + ) if zmsg.peeraddr is not None: addr, port = zmsg.peeraddr - peeraddr = str(addr), port + peeraddr = str((str(addr), port)) else: peeraddr = None stow( - peeraddr, - zmsg.when, - zmsg.imei, - msg.length, - msg.PROTO, - msg.payload, + is_incoming=zmsg.is_incoming, + peeraddr=peeraddr, + when=zmsg.when, + imei=zmsg.imei, + proto=proto_of_message(zmsg.packet), + packet=zmsg.packet, ) except KeyboardInterrupt: pass