]> git.neil.brown.name Git - plato.git/commitdiff
gsm-getsms: use recorded SIM card id
authorNeilBrown <neilb@suse.de>
Mon, 14 Jan 2013 20:11:40 +0000 (07:11 +1100)
committerNeilBrown <neilb@suse.de>
Mon, 14 Jan 2013 20:11:40 +0000 (07:11 +1100)
rather than getting it again

gsm/gsm-getsms.py

index 01eaebc04eec2a6b555cfdb5b6b2e4214472fe17..fcc0f51f52ed97fb3e8928489983724541119133 100644 (file)
@@ -205,6 +205,15 @@ def cvt_date(msg):
         dt += sep[i] + msg[i*2+1] + msg[i*2]
     return dt
 
+def recall(key, nofile = ""):
+    try:
+        fd = open("/run/gsm-state/" + key)
+        l = fd.read(1000)
+        l = l.strip()
+        fd.close()
+    except IOError:
+        l = nofile
+    return l
 
 def main():
     mode = 'all'
@@ -238,12 +247,9 @@ def main():
         sys.exit(1)
 
     # get ID of SIM card
-    n,c = chan.chat('AT+CIMI', ['OK', 'ERROR'])
-    CIMI='unknown'
-    for l in c:
-        l = l.strip()
-        if re.match('^\d+$', l):
-            CIMI = l
+    CIMI = recall('sim')
+    if not CIMI or CIMI == 'unknown':
+        sys.exit(1)
 
     mfile = os.path.join(dir, '.sim-mirror-'+CIMI)
     #FIXME lock mirror file