]> kaliko git repositories - sid.git/blobdiff - sid/echo.py
Moved the send logic to Plugin
[sid.git] / sid / echo.py
index aec0b9d9c954e65f7f6c4b3db1ef716b5e06f1b6..bb7e66a8163ae6246ba84b14a3351f9ec62fdcd9 100644 (file)
@@ -39,9 +39,7 @@ class Echo(Plugin):
         nick = pres['muc']['nick']
         self.online.add(nick)
         while self.inbox.get(nick, []):
-            self.bot.send_message(mto=self.bot.room,
-                              mbody=self.inbox.get(nick).pop(),
-                              mtype='groupchat')
+            self.send(self.inbox.get(nick).pop())
         self.inbox.pop(nick)
 
     def _went_offline(self, pres):
@@ -51,16 +49,19 @@ class Echo(Plugin):
 
     @botcmd
     def tell(self, message, args):
-        """drop a message to be delivred when someone gets online.
+        """drop a message to be sent when someone gets online.
         !tell queue        : messages in queue
         !tell <nick> <msg> : append <msg> to <nick> in queue"""
         if not len(args):
-            return 'Missing arguments:\n{}'.format(self.tell.__doc__)
+            self.send('Missing arguments:\n{}'.format(self.tell.__doc__))
+            return
         if len(args) == 1 and args[0] == 'queue':
-            return '\n'.join(['{0}:\n\t{1}'.format(k, '\n'.join(v))
-                              for k, v in self.inbox.items()])
+            self.send('\n'.join(['{0}:\n\t{1}'.format(k, '\n'.join(v))
+                              for k, v in self.inbox.items()]))
+            return
         if len(args) < 2:
-            return 'Please provide a message:\n{}'.format(self.tell.__doc__)
+            self.send('Please provide a message:\n{}'.format(self.tell.__doc__))
+            return
         sender = message['from'].resource
         recipient = message['body'].split()[1]
         tell_msg = ' '.join(message['body'].split()[2:])