Example #1
0
    def sendMessage(self, message):
        if not isinstance(message, unicode):
            message = message.decode('utf-8')

        print '%s %r' % (time.strftime('%Y-%m-%d %H:%M:%S'), message)
        if message == self.lastMessage:
            if time.time() - self.lastTime < 5:
                print 'Suppressing duplicate message'
                self.dupeMessages += 1
                return
            elif self.dupeMessages > 1:
                message = '%s (repeated %s times)' % (message,
                                                      self.dupeMessages)

        # Otherwise, drop any outstanding dupes for now

        self.lastMessage = message
        self.lastTime = time.time()
        self.dupeMessages = 0

        try:
            s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            s.settimeout(5)
            server = config.get('irccat', 'server')
            port = config.getint('irccat', 'port')
            s.connect((server, port))
            s.send(message.encode('utf-8'))
            s.close()
        except Exception, e:
            print 'Exception in main loop: %s' % repr(e)
    def sendMessage(self, message):
        if not isinstance(message, unicode):
            message = message.decode('utf-8')

        print '%s %r' % (time.strftime('%Y-%m-%d %H:%M:%S'), message)
        if message == self.lastMessage:
            if time.time() - self.lastTime < 5:
                print 'Suppressing duplicate message'
                self.dupeMessages += 1
                return
            elif self.dupeMessages > 1:
                message = '%s (repeated %s times)' % (message, self.dupeMessages)

        # Otherwise, drop any outstanding dupes for now

        self.lastMessage = message
        self.lastTime = time.time()
        self.dupeMessages = 0

        try:
            s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            s.settimeout(5)
            server = config.get('irccat', 'server')
            port = config.getint('irccat', 'port')
            s.connect((server, port))
            s.send(message.encode('utf-8'))
            s.close()
        except Exception, e:
            print 'Exception in main loop: %s' % repr(e)
    def sendMessage(self, message):
        if not isinstance(message, unicode):
            message = message.decode('utf-8')

        print repr(message)

        try:
            s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            s.settimeout(5)
            server = config.get('irccat', 'server')
            port = config.getint('irccat', 'port')
            s.connect((server, port))
            s.send(message.encode('utf-8'))
            s.close()
        except Exception, e:
            print 'Exception in main loop: %s' % repr(e)
Example #4
0
    def doorOpened(self, serial, name):

        # To stop a race condition between us and the irc announce bot
        time.sleep(2)

        print "%s opened the front door, logging" % name

        lastseen = {}

        picklefile = config.get('lastseen', 'picklefile')

        if os.path.exists(picklefile):
            lastseen = pickle.load(open(picklefile))

        lastseen[name.lower()] = datetime.datetime.now()

        pickle.dump(lastseen, open(picklefile, 'wb'))
    def doorOpened(self, serial, name):

        # To stop a race condition between us and the irc announce bot
        time.sleep(2)

        print "%s opened the front door, logging" % name

        lastseen = {}

        picklefile = config.get('lastseen', 'picklefile')
        
        if os.path.exists(picklefile):
            lastseen = pickle.load(open(picklefile))

        lastseen[name.lower()] = datetime.datetime.now()

        pickle.dump(lastseen, open(picklefile, 'wb'))
def reload_lastseen():
    global lastseen
    lastseen = {}
    lastseenfile = config.get('lastseen', 'picklefile')
    if os.path.exists(lastseenfile):
        lastseen = pickle.load(open(lastseenfile))