Example #1
0
class IRCBot(irc.IRCClient):
    
    """Python Twisted IRC BOT. irc.IRCClient specialization."""
    
    lineRate = 1
    
    def _get_nickname(self):
        return self.factory.nickname
    nickname = property(_get_nickname)

    def connectionMade(self):
        irc.IRCClient.connectionMade(self)
        try:
            logfile = open(self.factory.log_filename, "a")
        except IOError, error:
            sys.stderr.write("ERROR: %s\n" % error)
            sys.exit(1)
        self.logger = MessageLogger(logfile)
        self.logger.log(
            "[connected at %s]" %
            time.asctime(time.localtime(time.time()))
        )
        self.data_manager = DataManager(self.logger)
        self.karmrator = KarmaRateLimiter()
        self.reddit = RedditManager()
        # Singleton WelcomeMachine class
        self.welcome_machine = WelcomeMachine(self.factory.cm.greetings_file_path)
Example #2
0
import paho.mqtt.client as mqtt
from topic import Topic

BASE_TOPIC = Topic("433MHz")

from blind import Blind
from fountain import Fountain
from message_logger import MessageLogger
listeners = [Blind('inner'), Blind('outer'), Fountain(), MessageLogger()]


def on_connect(client, userdata, flags, rc):
    print("Connected with result code " + str(rc))
    client.subscribe(str(BASE_TOPIC + "#"))


class MQTT433MHz(object):
    def __init__(self, *argv):
        self.client = mqtt.Client(*argv)
        self.client.on_connect = on_connect
        for listener in listeners:
            listener.attach(self.client, BASE_TOPIC)
import datetime
from hashlib import sha256
from functools import wraps, partial
from flask import (Flask, render_template, request, url_for, redirect,
                   make_response, session, flash)

from db_connect import connect
from translate import microsoft_translate
from message_logger import MessageLogger
from chatbot import Chatbot

app = Flask(__name__)
app.config[
    'SECRET_KEY'] = '12fa-d9_0?10\'!9_h0vfefq0["n92039ngb/\'23rf2"12a1li_'
message_logger = MessageLogger()
chatbot = Chatbot()


def hash_password(password):
    """Return the sha256 hexdigest of password"""
    return sha256(bytes(password, "utf-8")).hexdigest()


def execute_mysql_command(instruction):
    """Execute mysql commands like DELETE and INSERT. Does not include
    SELECT command.
    """
    mydb = connect()
    mycursor = mydb.cursor()
    mycursor.execute(instruction)
    mydb.commit()
Example #4
0
 def connectionMade(self):
     irc.IRCClient.connectionMade(self)
     self.logger = MessageLogger(open(self.factory.filename, "a"))
     self.logger.log("[connected at %s]" %
                     time.asctime(time.localtime(time.time())))