Пример #1
0
    def __init__(self):
        self._verboseMode = True
        self._version = "PyAIML 0.8.6"
        self._brain = PatternMgr()
        self._respondLock = threading.RLock()
        self._textEncoding = "utf-8"

        # set up the sessions
        self._sessions = {}
        self._addSession(self._globalSessionID)

        self._currentPlugin = ""
        self.plugins = {}

        # Set up the bot predicates
        self._botPredicates = {}
        self.setBotPredicate("name", "Nameless")

        # set up the word substitutors (subbers):
        self._subbers = {}
        self._subbers['gender'] = WordSub(DefaultSubs.defaultGender)
        self._subbers['person'] = WordSub(DefaultSubs.defaultPerson)
        self._subbers['person2'] = WordSub(DefaultSubs.defaultPerson2)
        self._subbers['normal'] = WordSub(DefaultSubs.defaultNormal)

        # set up the element processors
        self._elementProcessors = {
            "bot": self._processBot,
            "condition": self._processCondition,
            "date": self._processDate,
            "formal": self._processFormal,
            "gender": self._processGender,
            "get": self._processGet,
            "gossip": self._processGossip,
            "id": self._processId,
            "input": self._processInput,
            "javascript": self._processJavascript,
            "learn": self._processLearn,
            "li": self._processLi,
            "lowercase": self._processLowercase,
            "person": self._processPerson,
            "person2": self._processPerson2,
            "plugin": self._processPlugin,
            "random": self._processRandom,
            "text": self._processText,
            "sentence": self._processSentence,
            "set": self._processSet,
            "size": self._processSize,
            "sr": self._processSr,
            "srai": self._processSrai,
            "star": self._processStar,
            "system": self._processSystem,
            "template": self._processTemplate,
            "that": self._processThat,
            "thatstar": self._processThatstar,
            "think": self._processThink,
            "topicstar": self._processTopicstar,
            "uppercase": self._processUppercase,
            "version": self._processVersion,
        }
Пример #2
0
    def __init__(self):
        self._verboseMode = True
        self._version = "python-aiml {}".format(VERSION)
        self._brain = PatternMgr()
        self._respondLock = threading.RLock()
        self.setTextEncoding( None if PY3 else "utf-8" )

        # 建立会话
        self._sessions = {}
        self._addSession(self._globalSessionID)

        # 设置机器人谓词
        self._botPredicates = {}
        self.setBotPredicate("name", "Nameless")

        # 设置单词替换器 (subbers),来自WordSub文件:
        self._subbers = {}
        self._subbers['gender'] = WordSub(DefaultSubs.defaultGender)
        self._subbers['person'] = WordSub(DefaultSubs.defaultPerson)
        self._subbers['person2'] = WordSub(DefaultSubs.defaultPerson2)
        self._subbers['normal'] = WordSub(DefaultSubs.defaultNormal)
        
        # 设置元素处理器
        self._elementProcessors = {
            "bot":          self._processBot,
            "condition":    self._processCondition,
            "date":         self._processDate,
            "formal":       self._processFormal,
            "gender":       self._processGender,
            "get":          self._processGet,
            "gossip":       self._processGossip,
            "id":           self._processId,
            "input":        self._processInput,
            "javascript":   self._processJavascript,
            "learn":        self._processLearn,
            "li":           self._processLi,
            "lowercase":    self._processLowercase,
            "person":       self._processPerson,
            "person2":      self._processPerson2,
            "random":       self._processRandom,
            "text":         self._processText,
            "sentence":     self._processSentence,
            "set":          self._processSet,
            "size":         self._processSize,
            "sr":           self._processSr,
            "srai":         self._processSrai,
            "star":         self._processStar,
            "system":       self._processSystem,
            "template":     self._processTemplate,
            "that":         self._processThat,
            "thatstar":     self._processThatstar,
            "think":        self._processThink,
            "topicstar":    self._processTopicstar,
            "uppercase":    self._processUppercase,
            "version":      self._processVersion,
        }
Пример #3
0
    def __init__(self, sessionStore=None):
        self._verboseMode = True
        self._version = "PyAIML 0.8.6"
        self._brain = PatternMgr()
        self._respondLock = threading.RLock()
        self._textEncoding = "utf-8"

        #set up the logger
        #author: ictar
        self._logger = logging.getLogger(__name__)
        self._logger.setLevel(logging.INFO)
        self._handler = logging.FileHandler('XIXI_Kernel.log')
        self._handler.setLevel(logging.INFO)
        self._handler.setFormatter(
            logging.Formatter(
                '%(asctime)s - %(filename)s:%(lineno)d - %(levelname)s - %(message)s'
            ))
        self._logger.addHandler(self._handler)
        self._logger.info("begin to log")

        # set up the sessions
        if sessionStore is not None:
            self._sessions = sessionStore
        else:
            self._sessions = {}
        self._addSession(self._globalSessionID)

        # Set up the bot predicates
        self._botPredicates = {}
        self.setBotPredicate("name", "Nameless")

        # set up the word substitutors (subbers):
        self._subbers = {}
        self._subbers['gender'] = WordSub(DefaultSubs.defaultGender)
        self._subbers['person'] = WordSub(DefaultSubs.defaultPerson)
        self._subbers['person2'] = WordSub(DefaultSubs.defaultPerson2)
        self._subbers['normal'] = WordSub(DefaultSubs.defaultNormal)

        # set up the element processors
        self._elementProcessors = {
            "bot": self._processBot,
            "condition": self._processCondition,
            "date": self._processDate,
            "formal": self._processFormal,
            "gender": self._processGender,
            "get": self._processGet,
            "gossip": self._processGossip,
            "id": self._processId,
            "input": self._processInput,
            "javascript": self._processJavascript,
            "learn": self._processLearn,
            "li": self._processLi,
            "lowercase": self._processLowercase,
            "person": self._processPerson,
            "person2": self._processPerson2,
            "random": self._processRandom,
            "text": self._processText,
            "sentence": self._processSentence,
            "set": self._processSet,
            "size": self._processSize,
            "sr": self._processSr,
            "srai": self._processSrai,
            "star": self._processStar,
            "system": self._processSystem,
            "template": self._processTemplate,
            "that": self._processThat,
            "thatstar": self._processThatstar,
            "think": self._processThink,
            "topicstar": self._processTopicstar,
            "uppercase": self._processUppercase,
            "version": self._processVersion,
        }