Initial implementation of AP positions update
authorjaviplx <javiplx@gmail.com>
Fri, 13 May 2011 22:36:02 +0000 (22:36 +0000)
committerjaviplx <javiplx@gmail.com>
Fri, 13 May 2011 22:36:02 +0000 (22:36 +0000)
git-svn-id: file:///svnroot/wifihood/trunk@158 c51dfc6a-5949-4919-9c8e-f207a149c383

wifiscanner/wifimap/replay.py
wifiscanner/wifimap/scanner.py
wifiscanner/wifiscanner

index 2eee9c4..649828e 100644 (file)
@@ -35,6 +35,7 @@ class ReplayScanner ( gobject.GObject ) :
         # Values from the Scanner object
         self.newap = 0
         self.newaps = False
+        self.aps = []
 
     def start ( self , timeout=5000 ) :
         self.scan_timeout = timeout
@@ -73,8 +74,9 @@ class ReplayScanner ( gobject.GObject ) :
         newap = 0
         self.newaps = False
         for mac,max_rss in self.scanlist.iteritems() :
-            stored = self.db.get( mac )
+            stored = self.db.db.execute( "SELECT rss, lat/n, lon/n FROM ap WHERE mac='%s'" % mac ).fetchone()
             if stored :
+                self.aps.append( stored[1:] )
                 if stored[0] > max_rss :
                     max_rss = stored[0]
                 self.db.update( mac , max_rss , self.tstamp , self.info[4:] )
index 0a71c61..c6488c1 100644 (file)
@@ -25,6 +25,7 @@ class Scanner ( gps.GPSObject , wifiscan.WifiScanner ) :
         # Values to be set by wireless scans
         self.newap = 0
         self.newaps = False
+        self.aps = []
 
     def start ( self , timeout=5000 ) :
         gps.GPSObject.start( self )
@@ -41,8 +42,9 @@ class Scanner ( gps.GPSObject , wifiscan.WifiScanner ) :
         newap = 0
         self.newaps = False
         for mac,max_rss in self.scanlist.iteritems() :
-            stored = self.db.get( mac )
+            stored = self.db.db.execute( "SELECT rss, lat/n, lon/n FROM ap WHERE mac='%s'" % mac ).fetchone()
             if stored :
+                self.aps.append( stored[1:] )
                 if stored[0] > max_rss :
                     max_rss = stored[0]
                 self.db.update( mac , max_rss , self.tstamp , self.info[4:] )
index df243d3..f1fe5e4 100755 (executable)
@@ -63,6 +63,8 @@ class scanner ( wifimap.ReplayScanner ) :
             if self.newaps :
                 pointsize += 2
             self.map.plot( pixmap , ( float(self.info[4]) , float(self.info[5]) ) , "red" , pointsize )
+            while self.aps :
+                self.map.plot( pixmap , self.aps.pop() , "green" , 1 )
             self.map.get_pixbuf().get_from_drawable( pixmap , pixmap.get_colormap() , 0, 0 , 0 , 0 , self.map.win_x, self.map.win_y )
             self.map.show()