예제 #1
0
]
def backupParse(s):
    global parseStrings
    for fmt in parseStrings:
        try:
            return datetime.datetime.strptime(s,fmt)
        except:pass
    return None

try:
    import parsedatetime.parsedatetime as pdt
    import parsedatetime.parsedatetime_consts as pdc
    c = pdc.Constants()
    p = pdt.Calendar(c)
    parser = lambda s:datetime.datetime(*p.parse(s)[0][:6])
    log.debug("Using parsedatetime")
except:
    parser = backupParse
    log.debug("Using backup parser")

try:
    import cPickle as pickle
    log.debug("Using cPickle")
except:
    import pickle
    log.debug("Using pickle.")


def saveAlarms(alarms):
    try:
        log.debug("Saving alarms",storeFile,alarms)
예제 #2
0
파일: Connector.py 프로젝트: x90/SuperBot2
from Configuration import ConfigFile
from Logging import LogFile
from twisted.words.protocols import irc
from twisted.internet import protocol,reactor
import sys,traceback
#these events get given to plugins to give back to the the ircconnector
log = LogFile("IRCConnector")
log.debug("Connector imported")
class IRCConnectorEvents:

    def __init__(self): pass

    def join(self,channel, key=None):
        return "join",channel,key
    def part(self,channel, message=None): 
        return "part",channel,messages
    def kick(self,channel, user, message=None): 
        return "kick",channel,user,message
    def topic(self,channel, message=None):
        return "topic",channel,message
    def say(self, channel, message, length=None):
        return "say",channel,message,1024
    def msg(self, user, message, length=None):
        return "msg",user,message,1024
    def notice(self,user, message):
        return "notice",user, message
    def away(self,message=""):
        return "away",message
    def back(self):
        return "back"
    def setNick(self,nickname):
예제 #3
0
파일: Core.py 프로젝트: scjudd/SuperBot2
        log.debug("Starting")
        log.debug("Auto loading plugins")
        self._PluginManager.AutoLoad()
        log.debug("Auto load complete")

        if self._Connector:
            log.debug("Connector starting")
            self._Connector.Start()
        #else log error?

    def Stop(self):
        log.debug("Stopping")
        if self._PluginDispatcher: self._PluginDispatcher.Stop()
        if self._PluginManager: self._PluginManager.Stop()
        if self._Connector: self._Connector.Stop()


if __name__=="__main__":
    try:
        c = Core()
        try:
            c.Start()
        except Exception as e:
            log.error(e)
            raise
        c.Stop()
    except Exception as e:
        log.error(e)
        raise
    log.debug("End of core")
예제 #4
0
import sys
import traceback
from Configuration import ConfigFile
from Logging import LogFile
from twisted.words.protocols import irc
from twisted.internet import protocol, reactor
#these events get given to plugins to give back to the the ircconnector
log = LogFile("IRCConnector")
log.debug("Connector imported")


class IRCConnectorEvents:
    def __init__(self):
        pass

    def join(self, channel, key=None):
        return "join", channel, key

    def part(self, channel, message=None):
        return "part", channel, messages

    def kick(self, channel, user, message=None):
        return "kick", channel, user, message

    def topic(self, channel, message=None):
        return "topic", channel, message

    def say(self, channel, message, length=None):
        return "say", channel, message, 1024

    def msg(self, user, message, length=None):
예제 #5
0
from Hook import bindFunction, requires, prefers
from Logging import LogFile
log = LogFile("GD")
log.debug("Log start")
import sys
@requires("Google")
@prefers("Colors")
class Google_Define:
    @bindFunction(message="!gd (?P<term>[a-zA-Z ]+) ?(?P<definition>\d*)")
    def g_define(self, term, response, target, colorize, gdefine, definition):
        log.debug("g_define",term, response, target, colorize, gdefine, definition)

        d = gdefine(term.strip().replace(' ', '+'), definition) 

        if colorize:
            return response.msg(target, colorize(
                "<{C3}Google Define{}: %s [{B}%s{} of %s]>" % d))
        else:
            return response.msg(target,
                    "<Google Define: %s [%s of %s]>" % d)
예제 #6
0
    global parseStrings
    for fmt in parseStrings:
        try:
            return datetime.datetime.strptime(s, fmt)
        except:
            pass
    return None


try:
    import parsedatetime.parsedatetime as pdt
    import parsedatetime.parsedatetime_consts as pdc
    c = pdc.Constants()
    p = pdt.Calendar(c)
    parser = lambda s: datetime.datetime(*p.parse(s)[0][:6])
    log.debug("Using parsedatetime")
except:
    parser = backupParse
    log.debug("Using backup parser")

try:
    import cPickle as pickle
    log.debug("Using cPickle")
except:
    import pickle
    log.debug("Using pickle.")


def saveAlarms(alarms):
    try:
        log.debug("Saving alarms", storeFile, alarms)
예제 #7
0
from Hook import bindFunction, requires, prefers
from Logging import LogFile
log = LogFile("GD")
log.debug("Log start")
import sys


@requires("Google")
@prefers("Colors")
class Google_Define:
    @bindFunction(message="!gd (?P<term>[a-zA-Z ]+) ?(?P<definition>\d*)")
    def g_define(self, term, response, target, colorize, gdefine, definition):
        log.debug("g_define", term, response, target, colorize, gdefine,
                  definition)

        d = gdefine(term.strip().replace(' ', '+'), definition)

        if colorize:
            return response.msg(
                target,
                colorize("<{C3}Google Define{}: %s [{B}%s{} of %s]>" % d))
        else:
            return response.msg(target, "<Google Define: %s [%s of %s]>" % d)
예제 #8
0
from Hook import *
parser = None
from Logging import LogFile
log = LogFile("Seen")
import datetime


storeFile = "SeenStore.pkl"
try:
    import cPickle as pickle
    log.debug("Using cPickle")
except:
    import pickle
    log.debug("Using pickle.")

def now():
    return datetime.datetime.now().strftime("%H:%M:%S")

def saveState(state):
    try:
        pickle.dump(state,file(storeFile,"w"))
    except:
        log.exception("Failed to store pickle.")

def loadState():
    try:
        return pickle.load(file(storeFile))
    except:
        log.exception("Failed to load pickle")
        return None
예제 #9
0
from Hook import *
parser = None
from Logging import LogFile
log = LogFile("Seen")
import datetime

storeFile = "SeenStore.pkl"
try:
    import cPickle as pickle
    log.debug("Using cPickle")
except:
    import pickle
    log.debug("Using pickle.")


def now():
    return datetime.datetime.now().strftime("%H:%M:%S")


def saveState(state):
    try:
        pickle.dump(state, file(storeFile, "w"))
    except:
        log.exception("Failed to store pickle.")


def loadState():
    try:
        return pickle.load(file(storeFile))
    except:
        log.exception("Failed to load pickle")