Пример #1
0
def router_register():
    '''
        路由器注册
    '''
    form = request.form
    if not 'token' in form:
        return 'error'
    token = form['token']
    if token != 'djqoidjqoq12e941nqdqnfhoho-==':
        return 'error'

    from lib.tools import generate_code
    routerid = generate_code()

    from model.redisdb import RedisDB
    con = RedisDB().con
    while con.exists('routerid2key:%s'%routerid):
        routerid = generate_code()

    routerkey = generate_code()

    con.set('routerid2key:%s'%routerid, routerkey)
    import os
    os.system("mkdir tmp/router/%s"%routerid)
    os.system("touch tmp/router/%s/ins.json"%routerid)
    return jsonify(routerid=routerid,routerkey=routerkey)
Пример #2
0
def set_status(fromUser, choice):
    from model.redisdb import RedisDB
    con = RedisDB().con
    if con.exists('WECHAT_STATUS:'+fromUser) == False:
        con.set('WECHAT_STATUS:'+fromUser, 0)
    if choice == 0:
        con.set('WECHAT_STATUS:'+fromUser, 0)
    elif choice == 1:
        if con.get('WECHAT_STATUS:'+fromUser) == '1':
            num = con.get('WECHAT_IMG_NUM:'+fromUser)
            con.set('WECHAT_STATUS:'+fromUser, 0)
            return int(num)
        else:
            con.set('WECHAT_STATUS:'+fromUser, 1)
            con.set('WECHAT_IMG_NUM:'+fromUser, 0)
            con.expire('WECHAT_STATUS:'+fromUser, 1800)
            import os
            path = os.path.realpath(__file__)
            path = '/'.join(path.split('/')[:-2])
            os.system("mkdir %s/tmp/user/%s"%(path,fromUser))
            os.system("mkdir %s/tmp/user/%s/recent"%(path,fromUser))
            os.system("mkdir %s/tmp/user/%s/sanguosha"%(path,fromUser))
            return -1
    elif choice == 2:
        con.set('WECHAT_STATUS:'+fromUser, '201')
Пример #3
0
def getbind():
    args = request.args
    openid = args['openid']
    from model.redisdb import RedisDB
    con = RedisDB().con
    if con.exists('WECHAT_BIND:'+openid) == False:
        return jsonify(num=1, routerid=con.get('WECHAT_BIND:'+openid))
    return jsonify(num=0)
Пример #4
0
def get_status(fromUser):
    from model.redisdb import RedisDB
    con = RedisDB().con

    if con.exists('WECHAT_STATUS:'+fromUser) == False:
        con.set('WECHAT_STATUS:'+fromUser, 0)

    return con.get('WECHAT_STATUS:'+fromUser)
Пример #5
0
def random_choose_music():
    import requests, urllib, json
    from model.redisdb import RedisDB
    con = RedisDB().con
    if con.exists("WECHAT_HOST_SONG") == False:
        url = "http://tingapi.ting.baidu.com/v1/restserver/ting?"
        data = {
            'from':'qianqian',
            'version':'2.1.0',
            'method':'baidu.ting.billboard.billList',
            'format':'json',
            'type':'2',
            'offset':'0',
            'size':'50'
        }
        res = requests.get(url + urllib.urlencode(data))
        data = json.loads(res.text)
        song_list = data['song_list']

        song_id_list = []
        for item in song_list:
            song_id = item['song_id']
            song_id_list.append(song_id)

        song_url = 'http://ting.baidu.com/data/music/links?'
        song_id_str = ','.join(song_id_list)

        res = requests.get(song_url + urllib.urlencode({'songIds':song_id_str}))

        data = json.loads(res.text)
        data = data['data']
        songList = data['songList']

        result = []
        for item in songList:
            songName = item['songName']
            artistName = item['artistName']
            showLink = item['showLink']
            if 'yinyueshiting.baidu.com' in showLink:
                result.append(json.dumps({
                    'songName':songName,
                    'artistName':artistName,
                    'showLink':showLink
                    }))
        for item in result:
            con.rpush('WECHAT_HOST_SONG', item)
        con.expire('WECHAT_HOST_SONG', 7200)

    from random import randint
    hotsong = con.lrange("WECHAT_HOST_SONG", 0, -1)
    length = len(hotsong)
    num = randint(0, length-1)
    return json.loads(hotsong[num])