X-Git-Url: http://average.org/gitweb/?a=blobdiff_plain;f=gps303%2Fbacklog.py;h=1322286457be68471ee3605d4850429afab904dc;hb=8bf5efdf4f5d069b108e6fd8140f5ebd930b538e;hp=39dfcbcfbb6b2d70ada9f0871e9ae83dbebea8fa;hpb=96538346bd332d76d2cac5d6a0ef2b4e4a40de30;p=loctrkd.git diff --git a/gps303/backlog.py b/gps303/backlog.py index 39dfcbc..1322286 100644 --- a/gps303/backlog.py +++ b/gps303/backlog.py @@ -3,24 +3,16 @@ from .opencellid import qry_cell from .evstore import initdb, fetch from .gps303proto import GPS_POSITIONING, WIFI_POSITIONING, parse_message -from .zmsg import LocEvt -OCDB = None -def blinit(evdb, ocdb): - global OCDB - OCDB = ocdb +def blinit(evdb): initdb(evdb) + def backlog(imei, backlog): result = [] - for packet in fetch(imei, (GPS_POSITIONING.PROTO, WIFI_POSITIONING.PROTO), backlog): + for packet in fetch( + imei, (GPS_POSITIONING.PROTO, WIFI_POSITIONING.PROTO), backlog + ): msg = parse_message(packet) - if isinstance(msg, GPS_POSITIONING): - result.append(LocEvt(devtime=msg.devtime, lon=msg.longitude, - lat=msg.latitude, is_gps=True, imei=imei)) - elif isinstance(msg, WIFI_POSITIONING): - lat, lon = qry_cell(OCDB, msg.mcc, msg.gsm_cells) - result.append(LocEvt(devtime=msg.devtime, lon=lon, - lat=lat, is_gps=False, imei=imei)) return reversed(result)