]> git.neil.brown.name Git - plato.git/commitdiff
gsmd: allow multiple fields from a reponse to be logged.
authorNeilBrown <neilb@suse.de>
Thu, 24 Jan 2013 23:28:58 +0000 (10:28 +1100)
committerNeilBrown <neilb@suse.de>
Thu, 24 Jan 2013 23:28:58 +0000 (10:28 +1100)
Signed-off-by: NeilBrown <neilb@suse.de>
gsm/gsmd.py

index 9d297f72858caaa83594027f017533c5dbb84b27..987e6ba384b1ecba7374a42af2a2a4f3fdbd241f 100644 (file)
@@ -138,6 +138,8 @@ class AtAction(Task):
                 channel.state['matched'] = True
                 if self.record:
                     record(self.record[0], m.expand(self.record[1]))
+                    if len(self.record) > 3:
+                        record(self.record[2], m.expand(self.record[3]))
                 if self.handle:
                     self.handle(channel, line, m)
                 return
@@ -620,8 +622,8 @@ control['init'] = [
     AtAction(at='_OSQI=1', critical=False),
     AtAction(check='+CIMI', ok='(\d\d\d+)', record=('sim','\\1')),
     #_OSIMOP: "YES OPTUS","YES OPTUS","50502"
-    AtAction(check='_OSIMOP', ok='_OSIMOP: ".*",".*","(.*)"',
-             record=('sid','\\1'), critical=False),
+    AtAction(check='_OSIMOP', ok='_OSIMOP: "(.*)",".*","(.*)"',
+             record=('sid','\\2', 'carrier','\\1'), critical=False),
 
     # Make sure to use both 2G and 3G
     AtAction(at='_OPSYS=3,2', critical=False),