def queueHandle(self): if self.dmb.queue_to_send: for rec in self.dmb.queue_to_send: sended = 0 log.info(rec['jid']) for j in rec['jid']: if rec.get('send') or self.ui.getStatus(j): queue_output.put( (j, rec.get('message'), rec.get('extra'))) sended = 1 break if not sended: post = rec.get('post') message = rec.get('message') comment = rec.get('comment') id_recommend = rec.get('id_recommend') try: self.dmb.addToSendQueue(login=rec['login'], post=post, comment=comment, id_recommend=id_recommend, message=message) except dmbError: log.debug('%d %s %s' % (sys.exc_traceback.tb_lineno, sys.exc_type, sys.exc_value)) except: log.error('%d %s %s' % (sys.exc_traceback.tb_lineno, sys.exc_type, sys.exc_value)) tick = time.time() self.dmb.queue_to_send = [] tick = time.time() - tick log.debug('%s %s' % ('queueHandle', tick))
def queueHandle(self): if self.dmb.queue_to_send: for rec in self.dmb.queue_to_send: sended = 0 log.info(rec['jid']) for j in rec['jid']: if rec.get('send') or self.ui.getStatus(j): queue_output.put((j, rec.get('message'), rec.get('extra'))) sended = 1 break if not sended: post = rec.get('post') message = rec.get('message') comment = rec.get('comment') id_recommend = rec.get('id_recommend') try: self.dmb.addToSendQueue(login = rec['login'], post = post, comment = comment, id_recommend = id_recommend, message = message) except dmbError: log.debug('%d %s %s' % (sys.exc_traceback.tb_lineno, sys.exc_type, sys.exc_value)) except: log.error('%d %s %s' % (sys.exc_traceback.tb_lineno, sys.exc_type, sys.exc_value)) tick = time.time() self.dmb.queue_to_send = [] tick = time.time() - tick log.debug('%s %s' % ('queueHandle', tick))
def presenceHandler(self, jid, state): try: login = self.dmb.getLogin(jid) queue = self.dmb.getSendQueue(login) message = '' for q in queue: message += q queue_output.put((jid, message, {})) self.dmb.delFromSendQueue(login) except dmbError as exc: log.debug('%d %s %s' % (sys.exc_traceback.tb_lineno, sys.exc_type, sys.exc_value))
def presenceHandler(self, jid, state): try: login = self.dmb.getLogin(jid) queue = self.dmb.getSendQueue(login) message = '' for q in queue: message += q queue_output.put((jid, message, {})) self.dmb.delFromSendQueue(login) except dmbError as exc: log.debug( '%d %s %s' % (sys.exc_traceback.tb_lineno, sys.exc_type, sys.exc_value))
def run(self): global is_run while is_run: try: jid, message, login = queue_input.get(timeout=10) log.info('%s %s' % (jid, message)) if not login: try: login = self.dmb.getLogin(jid=jid) except dmbErrorAuth: login = '******' try: self.dmb.def_locale = self.dmb.getUserParams( login)['locale'] except: log.error('%d %s %s' % (sys.exc_traceback.tb_lineno, sys.exc_type, sys.exc_value)) try: tick = time.time() if jid == config.admin: mesg = adminParsing(self.dmb, login=unicode(login), text=unicode(message), jid=jid) else: mesg = parsing(self.dmb, login=unicode(login), text=unicode(message), jid=jid) tick = time.time() - tick log.debug('%s %s' % (message.split(' ')[0], tick)) except SystemExit: log.info('exit') is_run = None self.ui.is_run = None sys.exit() except dmbError as exc: log.error('%d %s %s' % (sys.exc_traceback.tb_lineno, sys.exc_type, sys.exc_value)) mesg = '%s %s' % (exc.getText(), self.dmb.getText(exc.getCode())) except: log.error('%d %s %s' % (sys.exc_traceback.tb_lineno, sys.exc_type, sys.exc_value)) mesg = self.dmb.getText('ERR7') queue_output.put((jid, mesg, {})) self.queueHandle() except Queue.Empty: pass
def run(self): global is_run while is_run: try: jid, message, login = queue_input.get(timeout = 10) log.info('%s %s' % (jid, message)) if not login: try: login = self.dmb.getLogin(jid = jid) except dmbErrorAuth: login = '******' try: self.dmb.def_locale = self.dmb.getUserParams(login)['locale'] except: log.error('%d %s %s' % (sys.exc_traceback.tb_lineno, sys.exc_type, sys.exc_value)) try: tick = time.time() if jid == config.admin: mesg = adminParsing(self.dmb, login = unicode(login), text = unicode(message), jid = jid) else: mesg = parsing(self.dmb, login = unicode(login), text = unicode(message), jid = jid) tick = time.time() - tick log.debug('%s %s' % (message.split(' ')[0], tick)) except SystemExit: log.info('exit') is_run = None self.ui.is_run = None sys.exit() except dmbError as exc: log.error('%d %s %s' % (sys.exc_traceback.tb_lineno, sys.exc_type, sys.exc_value)) mesg = '%s %s' % (exc.getText(), self.dmb.getText(exc.getCode())) except: log.error('%d %s %s' % (sys.exc_traceback.tb_lineno, sys.exc_type, sys.exc_value)) mesg = self.dmb.getText('ERR7') queue_output.put((jid, mesg, {})) self.queueHandle() except Queue.Empty: pass