wifiscan.WifiScanner.scan( self )
newap = 0
self.newaps = False
- for mac,max_rss in self.scanlist.iteritems() :
+ for mac,rss in self.scanlist.iteritems() :
stored = self.db.db.execute( "SELECT rss, lat, lon FROM ap WHERE mac='%s'" % mac ).fetchone()
- if stored :
- if not self.aps.has_key( mac ) :
- self.aps[ mac ] = list(stored[1:])
- if stored[0] > max_rss :
- max_rss = stored[0]
- self.db.update( mac , max_rss , self.tstamp , self.info[4:] )
+ if not self.aps.has_key( mac ) :
+ if stored :
+ self.aps[mac] = tuple(stored[1:])
+ else :
+ newap += 1
+ self.db.add( mac , rss , self.tstamp , self.info[4:] )
+ self.aps[mac] = tuple(self.info[4:6])
+ continue
+
+ if stored[0] < rss :
self.oldpos[mac] = self.aps[mac][0] , self.aps[mac][1]
- else :
- newap += 1
- if not self.aps.has_key( mac ) :
- self.aps[ mac ] = [ 0 , 0 ]
- self.db.add( mac , max_rss , self.tstamp , self.info[4:] )
- self.aps[mac][0] += self.info[4]
- self.aps[mac][1] += self.info[5]
+ self.db.update( mac , rss , self.tstamp , self.info[4:] )
+ self.aps[mac] = tuple(self.info[4:6])
+ elif stored :
+ self.db.seen_update( mac , self.tstamp )
+
if newap :
self.newap += newap
self.newaps = True