Exemplo n.º 1
0
class Sender(Thread):

    def __init__(self, config):
        Thread.__init__(self)
        self.config = config
        self.store = None
        self.start()
                
    def run(self):
        while True:
            while self.store == None:
                print("Sender:\t\tConectando a MongoDB")
                self.store = DB().connect(self.config['db_host'], self.config['db_name'], self.config['client_name'])
                time.sleep(1)      

            try:
                reg = self.store.find_one()
                if reg != None:
                    self.cli = Client(self.config['sender_host'], self.config['sender_port'])
                    self.cli.send(reg['data'])
                    print('Sender:\t\t['+self.config['client_name']+'] -> '+ reg['id'] + ' - ' + reg['data'])
                    self.store.remove(reg)
            except:
                print('Sender:\t\tError en MongoDB, reintentando...')
                time.sleep(1)