X-Git-Url: http://www.average.org/gitweb/?p=loctrkd.git;a=blobdiff_plain;f=gps303%2Fbacklog.py;h=1322286457be68471ee3605d4850429afab904dc;hp=39dfcbcfbb6b2d70ada9f0871e9ae83dbebea8fa;hb=5e1e7a4d37a1e149d5e899dada7b55a863cd8e64;hpb=9d43b364c397f1f50bd8620e487cbc8fc7189f20 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)