Example #1
0
	def __init__(self, *args, **kwargs):
		super(Example, self).__init__(*args, **kwargs)
		
		self.classroom_instance = classroom()
		
		self.InitUI()
		self.Centre()
		self.Show(True)
Example #2
0
    def __init__(self, *args, **kwargs):
        super(Example, self).__init__(*args, **kwargs)

        self.classroom_instance = classroom()

        self.InitUI()
        self.Centre()
        self.Show(True)
Example #3
0
def webSocketApp(environ, start_response):
    ws = environ['wsgi.websocket']
    while True:
        data = ws.receive()
        #if data is None:
        #    break
		# process the data, i.e. print it:
        result = {}
        data = json.loads(data);
        print data['app']
        app = data['app']
        if app == 'zanryu':
            result = zanryu.zanryu(data['building'], data['floor'], data['room'], data['login'], data['pass'])
        elif app == 'classroom':
            result = classroom.classroom(data['day'], data['period'], data['login'], data['pass'])
        elif app == 'report':
            result = report.report(data['login'], data['pass'])
        else:
            result = pe.pe(data['year'], data['month'], data['day'], data['sport'], data['period'], data['login'], data['pass']) 
#            result = data
        print result
        ws.send(result)
Example #4
0
def processMessage(message):
    if message['MsgType'] == 'text':
        # 根据用户发来的消息返回对应的消息
        if message['Content'] in ['?', 'help', u'?', u'帮助']:
            # 帮助信息
            articles = getHelpInfoArticles()
            return makeNewsMessage(message['FromUserName'], message['ToUserName'], articles)
        elif isConsultingLibrary(message['Content']):
            # 用户查询人文图书馆座位信息
            # 以文字消息形式返回
            response = getLibrarySeatText()
            return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
        elif message['Content'].startswith('/:'):
            # 用户发送表情则返回音乐
            response = getMusicByExpression(message['Content'])
            if (type(response) is types.UnicodeType) or (type(response) is types.StringType):
                return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
            else:
                return makeMusicMessage(message['FromUserName'], message['ToUserName'], response)
        elif u'教' in message['Content']:
            # 查询教室排课信息, 处理的是文字输入
            response = classroom(message['Content'])
            return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
        elif isTypeOfMusic(message['Content']):
            # 根据音乐类型返回音乐消息
            dict = getTypeDict(message['Content'])
            music = getRandomMusicByType(dict)
            if music['Title'] == '':
                return makeTextMessage(message['FromUserName'], message['ToUserName'], '抱歉,未找到该类型的音乐,换个类型试试吧~')
            else:
                return makeMusicMessage(message['FromUserName'], message['ToUserName'], music)
        elif 'test' in message['Content']:
            # 测试通道
            response = message['Content']
            return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
        else:
            # 判断输入是否为某个教室
            # 若是一个教室则返回教室信息
            # 否则原样返回
            response = getRoomCourseInfo(message['Content'])
            return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
    elif message['MsgType'] == 'event':
        # 响应用户事件
        if message['Event'] == 'subscribe':
            # 响应订阅事件
            # 订阅号欢迎消息
            #response = u'欢迎关注清华自习小助手,请发送“帮助”或“help”查看帮助信息~'
            # 服务号欢迎消息
            adduser(message['FromUserName'])
            response = u'欢迎关注清华自习小助手,请使用帮助菜单查看帮助信息~也可回复“帮助”或“help”哦~'
            return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
        elif message['Event'] == 'unsubscribe':
            # 取消订阅事件
            # 订阅号欢送消息
            #response = u'快点重新关注清华助手!'
            deluser(message['FromUserName'])
            response = u'快点重新关注清华助手!'
            return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
        elif message['Event'] == 'CLICK':
            # 响应点击服务号菜单事件
            if message['EventKey'] == 'COURSE':
                # 教室排课查询
                response = u'查询某教室今天的排课情况\n您可以输入教室编号:\n“6A301”\n“4302”'
                return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
            elif message['EventKey'] == 'LIBRARY':
                # 文图座位查询
                articles = getLibrarySeatNews()
                return makeNewsMessage(message['FromUserName'], message['ToUserName'], articles)
            elif message['EventKey'] == 'CLASSROOM':
                # 空闲教室查询
                response = u'查询某教学楼空闲教室情况\n您可以输入关键词:\n' \
                           u'“四教”\n“六教C区”\n“三教三段2层”\n“今天第三节五教”\n“明天第二节四教三层”\n\n' \
                           u'其中教学楼名称必须指定\n目前支持一到六教'
                return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
            elif message['EventKey'] == 'MEAL':
                # 推荐吃饭地点
                articles = food_articles()
                return makeNewsMessage(message['FromUserName'], message['ToUserName'], articles)
            elif message['EventKey'] == 'STUDY':
                # 推荐自习室
                response = recommend_classroom()
                return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
            elif message['EventKey'] == 'MUSIC':
                # 推荐音乐
                articles = formMusicTypeList()
                return makeNewsMessage(message['FromUserName'], message['ToUserName'], articles)
            elif message['EventKey'] == 'SIGNIN':
                # 签到功能
                times = signin(message['FromUserName'], message['CreateTime'])
                response = str(times)
                return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
            elif message['EventKey'] == 'HELP':
                # 帮助功能
                articles = getHelpInfoArticles()
                return makeNewsMessage(message['FromUserName'], message['ToUserName'], articles)
            else:
                # 其他事件不响应
                response = u'抱歉...暂不支持响应此事件'
                return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
    else:
        # 其他类型的消息不支持
        response = u'暂不支持非文字消息'
        return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
Example #5
0
import numpy
import cv2
import matplotlib.pyplot as plt
import os.path
from img import img
from datasetoperations import readLearningDataset
from imgrecognizer import recognizer
from array import array
from classroom import classroom
import random
	
if __name__ == '__main__':
	learning = []
	readLearningDataset(learning)
	print(len(learning))
	cr = classroom()
	
	cr.study(learning[random.randint(0,505)])
	
	
	
	###TESTING NEW CLASS
	#r = recognizer()
	#r.generateCoef()
	#print(r.coef)
	
	###TESTING readLearningDataset FUNCTION
	#print(learning[-1].content)
	

Example #6
0
def processMessage(message):

    if message['MsgType'] == 'text':
        # 取出首尾空格和换行
        message['Content'] = message['Content'].strip('\n')
        message['Content'] = message['Content'].strip(' ')
        # 根据用户发来的消息返回对应的消息
        if message['Content'] in ['?', 'help', u'?', u'帮助']:
            # 帮助信息
            articles = getHelpInfoArticles()
            return makeNewsMessage(message['FromUserName'], message['ToUserName'], articles)
        elif isConsultingLibrary(message['Content']):
            # 用户查询人文图书馆座位信息
            # 以图文消息形式返回
            articles = getLibrarySeatNews()
            return makeNewsMessage(message['FromUserName'], message['ToUserName'], articles)
        elif message['Content'].startswith('/:'):
            # 用户发送表情则返回音乐
            response = getMusicByExpression(message['Content'])
            if (type(response) is types.UnicodeType) or (type(response) is types.StringType):
                return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
            else:
                return makeMusicMessage(message['FromUserName'], message['ToUserName'], response)
        elif u'教' in message['Content']:
            # 查询空闲教室信息, 处理的是文字输入
            response = classroom(message['Content'])
            return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
        elif is_classroom(message['Content']):
            # 查询教室排课信息
            response = getRoomCourseInfo(message['Content'])
            return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
        elif isTypeOfMusic(message['Content']):
            # 根据音乐类型返回音乐消息
            dict = getTypeDict(message['Content'])
            music = getRandomMusicByType(dict)
            if music['Title'] == '':
                return makeTextMessage(message['FromUserName'], message['ToUserName'], '抱歉,未找到该类型的音乐,换个类型试试吧~')
            else:
                return makeMusicMessage(message['FromUserName'], message['ToUserName'], music)
        elif message['Content'] == u'签到':
            # 输文字签到
            response = signin(message['FromUserName'], message['CreateTime'])
            return makeNewsMessage(message['FromUserName'], message['ToUserName'], response)
        else:
            # 处理用户的其他输入
            response = u'亲~无法识别您的输入,请输入教室代码、文图相关词语、教室查询字符串或音乐类型等与功能相关的文字。详细情况请查看帮助。'
            return makeTextMessage(message['FromUserName'], message['ToUserName'], response)

    elif message['MsgType'] == 'event':
        # 响应用户事件
        if message['Event'] == 'subscribe':
            # 订阅事件欢迎消息
            adduser(message['FromUserName'])
            response = [{
                'Title': u'清华助手,带您走向人生巅峰!',
                'PicUrl': URL_WELCOME_IMAGE,
                'Url': URL_HELP
            }, {
                'Title': u'清华自习助手提供了人文馆查座、教学楼空闲教室及教室排课查询功能,给我们的自习提供方便;此外还具有听音乐、推荐清华美食、自习签到等功能,等待您的探索~',
                'Url': URL_HELP
            }, {
                'Title': u'点击此消息查看帮助',
                'Url': URL_HELP
            }]
            return makeNewsMessage(message['FromUserName'], message['ToUserName'], response)
        elif message['Event'] == 'unsubscribe':
            # 取消订阅事件
            deluser(message['FromUserName'])
            response = u'谢谢您关注本产品,再见~'
            return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
        elif message['Event'] == 'CLICK':
            # 响应点击服务号菜单事件
            if message['EventKey'] == 'COURSE':
                # 教室排课查询
                response = u'查询某教室今天的排课情况\n您可以输入教室编号:\n“6A301”\n“4302”'
                return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
            elif message['EventKey'] == 'LIBRARY':
                # 文图座位查询
                articles = getLibrarySeatNews()
                return makeNewsMessage(message['FromUserName'], message['ToUserName'], articles)
            elif message['EventKey'] == 'CLASSROOM':
                # 空闲教室查询
                response = u'查询某教学楼空闲教室情况\n您可以输入关键词:\n' \
                           u'“四教”\n“六教C区”\n“三教三段2层”\n“今天第三节五教”\n“明天第二节四教三层”\n\n' \
                           u'其中教学楼名称必须指定\n目前支持一到六教'
                return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
            elif message['EventKey'] == 'MEAL':
                # 推荐吃饭地点
                articles = food_articles()
                return makeNewsMessage(message['FromUserName'], message['ToUserName'], articles)
            elif message['EventKey'] == 'STUDY':
                # 推荐自习室
                response = recommend_classroom()
                return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
            elif message['EventKey'] == 'MUSIC':
                # 推荐音乐
                articles = formMusicTypeList()
                return makeNewsMessage(message['FromUserName'], message['ToUserName'], articles)
            elif message['EventKey'] == 'SIGNIN':
                # 签到功能
                response = signin(message['FromUserName'], message['CreateTime'])
                return makeNewsMessage(message['FromUserName'], message['ToUserName'], response)
            elif message['EventKey'] == 'HELP':
                # 帮助功能
                articles = getHelpInfoArticles()
                return makeNewsMessage(message['FromUserName'], message['ToUserName'], articles)
            else:
                # 其他事件不响应
                response = u'抱歉...暂不支持响应此事件'
                return makeTextMessage(message['FromUserName'], message['ToUserName'], response)
    else:
        # 其他类型的消息不支持
        response = u'暂不支持非文字消息'
        return makeTextMessage(message['FromUserName'], message['ToUserName'], response)