[project @ add a parser to spoolwatcher]
authorDiane Trout <diane@caltech.edu>
Tue, 11 Dec 2007 08:38:49 +0000 (08:38 +0000)
committerDiane Trout <diane@caltech.edu>
Tue, 11 Dec 2007 08:38:49 +0000 (08:38 +0000)
also simplify the I don't understand your command message so it
doesn't thrown a exception about formatting the string.

gaworkflow/copier.py
gaworkflow/spoolwatcher.py

index a7f1c5c8239526b26626b02798cc106c0b3c816b..f7a0e889ed27cc688bebd9f7e1e4bb68cbc91ee9 100644 (file)
@@ -233,7 +233,7 @@ class CopierBot(rpc.XmlRpcBot):
               msg.append(u"  " + d)
             reply = os.linesep.join(msg)
         else:
-            reply = u"I didn't understand '%s'"+os.linesep+help % (unicode(msg))
+            reply = u"I didn't understand '%s'" % (unicode(msg))
         return reply
 
 def main(args=None):
index e3da123e8e381ebc21642ce047bc4dc11c1a2bdd..ba566cbfa04957e69c813302aa9e701fa0952a9d 100644 (file)
@@ -130,6 +130,27 @@ class SpoolWatcher(rpc.XmlRpcBot):
                 self.startCopy()
                 self.handler.last_event_time = None
     
+    def _parser(self, msg, who):
+        """
+        Parse xmpp chat messages
+        """
+        help = u"I can send [copy] message, or squencer [finished]"
+        if re.match(u"help", msg):
+            reply = help
+        elif re.match("copy", msg):            
+            self.startCopy()
+            reply = u"sent copy message"
+        elif re.match(u"finished", msg):
+            words = msg.split()
+            if len(words) == 2:
+                self.sequencingFinished(words[1])
+                reply = u"sending sequencing finished for %s" % (words[1])
+            else:
+                reply = u"need runfolder name"
+        else:
+            reply = u"I didn't understand '%s'" %(msg)            
+        return reply
+        
     def start(self, daemonize):
         """
         Start application