]> git.neil.brown.name Git - plato.git/commitdiff
gsmd: extent retry timeout to get SIM card id.
authorNeilBrown <neilb@suse.de>
Fri, 5 Dec 2014 00:03:10 +0000 (11:03 +1100)
committerNeilBrown <neilb@suse.de>
Fri, 5 Dec 2014 00:09:30 +0000 (11:09 +1100)
If there  is a no sim card, we don't want to check for it
every 10 seconds.
Instead use an exponential retry, but at least every hour.

Signed-off-by: NeilBrown <neil@brown.name>
gsm/gsmd2.py

index ef93af7c645d9d802d6a797ade10cce628ef66f5..f9b20366877412fa1f3c75c88aef4b7921f8275e 100644 (file)
@@ -855,9 +855,11 @@ class SIM_ID(Engine):
     def __init__(self):
         Engine.__init__(self)
         self.CIMI = None
+        self.timeout = 2500
 
     def set_on(self, state):
         if state:
+            self.timeout = 2500
             self.retry(100)
         else:
             self.CIMI = None
@@ -872,7 +874,9 @@ class SIM_ID(Engine):
                 self.retry(False)
                 return False
         if not self.CIMI:
-            self.retry(10000)
+            self.retry(self.timeout)
+            if self.timeout < 60*60*1000:
+                self.timeout += self.timeout
         return False
 
     def do_retry(self):