def putevent(self, origin, channel, txt, event=None, wait=0, showall=False, nooutput=False): """ insert an event into the callbacks chain. """ assert origin if event: e = cpy(event) ; e.addwaiting(event) else: e = EventBase() e.cbtype = "CMND" e.bot = self e.origin = origin e.ruserhost = origin e.auth = origin e.userhost = origin e.channel = channel e.txt = unicode(txt) e.nick = e.userhost.split('@')[0] e.usercmnd = e.txt.split()[0] e.iscommand = False #e.iscallback = False e.allowqueues = True e.onlyqueues = False e.closequeue = True e.showall = showall e.nooutput = nooutput e.wait = wait e.bind(self) self.put(e) return e
def putevent(self, origin, channel, txt, event=None, wait=0, showall=False, nooutput=False): """ insert an event into the callbacks chain. """ assert origin if event: e = cpy(event) else: e = EventBase() e.cbtype = "CMND" e.bot = self e.origin = origin e.ruserhost = origin e.auth = origin e.userhost = origin e.channel = channel e.txt = unicode(txt) e.nick = e.userhost.split('@')[0] e.usercmnd = e.txt.split()[0] e.iscommand = False #e.iscallback = False e.allowqueues = True e.onlyqueues = False e.closequeue = True e.showall = showall e.nooutput = nooutput e.wait = wait e.bind(self) self.put(e) return e
def docmnd(self, origin, channel, txt, event=None, wait=0, showall=False, nooutput=False): """ do a command. """ if event: e = cpy(event) else: e = EventBase() e.cbtype = "CMND" e.bot = self e.origin = origin e.ruserhost = origin e.auth = origin e.userhost = origin e.channel = channel e.txt = unicode(txt) e.nick = e.userhost.split('@')[0] e.usercmnd = e.txt.split()[0] #e.iscommand = True #e.iscallback = False e.allowqueues = True e.onlyqueues = False e.closequeue = True e.showall = showall e.nooutput = nooutput e.bind(self) #if wait: e.direct = True ; e.nothreads = True ; e.wait = wait if cmnds.woulddispatch(self, e) or e.txt[0] == "?": return self.doevent(e)
def dostart(self, botname=None, bottype=None, *args, **kwargs): """ create an START event and send it to callbacks. """ e = EventBase() e.bot = self e.botname = botname or self.cfg.name e.bottype = bottype or self.type e.origin = e.botname e.ruserhost = self.cfg.name +'@' + self.uuid e.userhost = e.ruserhost e.channel = botname e.origtxt = "%s.%s - %s" % (e.botname, e.bottype, str(time.time())) e.txt = e.origtxt e.cbtype = 'START' e.botoutput = False e.ttl = 1 e.nick = self.cfg.nick or self.cfg.name self.doevent(e) logging.debug("%s - START event send to callbacks" % self.cfg.name)
def dostart(self, botname=None, bottype=None, *args, **kwargs): """ create an START event and send it to callbacks. """ e = EventBase() e.bot = self e.botname = botname or self.name e.bottype = bottype or self.type e.origin = botname e.ruserhost = self.botname + '@' + self.uuid e.userhost = e.ruserhost e.channel = botname e.origtxt = str(time.time()) e.txt = e.origtxt e.cbtype = 'START' e.botoutput = False e.ttl = 1 e.nick = self.nick or self.botname self.doevent(e) logging.debug("%s - START event send to callbacks" % botname)
def outmonitor(self, origin, channel, txt, event=None): """ create an OUTPUT event with provided txt and send it to callbacks. """ if event: e = cpy(event) else: e = EventBase() if e.status == "done": logging.debug("%s - outmonitor - event is done .. ignoring" % self.name) return e.bot = self e.origin = origin e.ruserhost = self.botname +'@' + self.uuid e.userhost = e.ruserhost e.auth = e.userhost e.channel = channel e.origtxt = txt e.txt = txt e.cbtype = 'OUTPUT' e.botoutput = True e.nodispatch = True e.ttl = 1 e.nick = self.nick or self.botname e.bind(self) first_callbacks.check(self, e)
def outmonitor(self, origin, channel, txt, event=None): """ create an OUTPUT event with provided txt and send it to callbacks. """ if event: e = cpy(event) else: e = EventBase() if e.status == "done": logging.debug("%s - outmonitor - event is done .. ignoring" % self.name) return e.bot = self e.origin = origin e.ruserhost = self.botname + '@' + self.uuid e.userhost = e.ruserhost e.auth = e.userhost e.channel = channel e.origtxt = txt e.txt = txt e.cbtype = 'OUTPUT' e.botoutput = True e.nodispatch = True e.ttl = 1 e.nick = self.nick or self.botname e.bind(self) first_callbacks.check(self, e)