def event(self):
     e = Event()
     e.server = self._cfg.server
     e.btype = sname(self)
     e.txt = input()
     e.txt = e.txt.rstrip()
     e.origin = "root@shell"
     return e
Beispiel #2
0
 def parsing(self, txt):
     rawstr = str(txt)
     obj = Event()
     obj.server = self._cfg.server
     obj.cc = self.cc
     obj.btype = sname(self)
     obj.arguments = []
     arguments = rawstr.split()
     obj.origin = arguments[0]
     if obj.origin.startswith(":"):
         obj.origin = obj.origin[1:]
         if len(arguments) > 1: obj.command = arguments[1]
         if len(arguments) > 2:
             txtlist = []
             adding = False
             for arg in arguments[2:]:
                 if arg.startswith(":"):
                     adding = True
                     txtlist.append(arg[1:])
                     continue
                 if adding: txtlist.append(arg)
                 else: obj.arguments.append(arg)
             obj.txt = " ".join(txtlist)
     else:
         obj.command = obj.origin
         obj.origin = self._cfg.server
     try:
         obj.nick, obj.userhost = obj.origin.split("!")
     except:
         pass
     if obj.arguments: obj.target = obj.arguments[-1]
     else: obj.target = ""
     if obj.target.startswith("#"): obj.channel = obj.target
     if not obj.txt and len(arguments) == 1: obj.txt = arguments[1]
     if not obj.txt: obj.txt = rawstr.split(":")[-1]
     return obj