Example #1
0
def tm():
    import json
    if request.method == 'GET':
        id = request.args.get('id')
        key = 'movie' + str(id)
        if rd.llen(key):
            msgs = rd.lrange(key, 0, 2999)
            res = {'code': 1, 'danmaku': [json.loads(v) for v in msgs]}
        else:
            res = {'code': 1, 'danmaku': []}
        resp = json.dumps(res)
    if request.method == 'POST':
        data = json.loads(request.get_data())
        msg = {
            '__v': 0,
            'author': data['author'],
            'time': data['time'],
            'text': data['text'],
            'color': data['color'],
            'type': data['type'],
            'ip': data['type'],
            '_id': datetime.now().strftime('%Y%m%d%H%M%S') + uuid.uuid4().hex,
            'player': [data['player']]
        }
        res = {'code': 1, 'data': msg}
        resp = json.dumps(res)
        rd.lpush('movie' + str(data['player']), json.dumps(msg))
    return Response(resp, mimetype='application/json')
Example #2
0
def tm():
    if request.method == "GET":
        # 获取弹幕消息队列
        id = request.args.get("id")
        global key
        key = "movie" + str(id)
        if rd.llen(key):
            msgs = rd.lrange(key, 0, 2999)
            res = {
                "code": 0,
                "data": [eval(v.decode("utf8")) for v in msgs]
            }
        else:
            res = {
                "code": 0,
                "data": []
            }
        resp = json.dumps(res)
    if request.method == "POST":
        # 添加弹幕
        data = json.loads(request.get_data())
        msg = [data["time"], data["type"], data["color"], data["author"], data["text"], request.remote_addr,
               datetime.now().strftime("%Y%m%d%H%M%S") + uuid.uuid4().hex]
        res = {
            "code": 0,
            "data": msg
        }
        resp = json.dumps(res)
        rd.lpush(key, json.dumps(msg))
    return Response(resp, mimetype="application/json")
Example #3
0
def status_updated(mapper, connection, target):
    import app.cache.redis_keys as KEYS
    _clear_redis_cache(target)
    timeline_item = KEYS.status_updated.format(
        status_id=target.id,
        user_id=target.user_id)
    rd.lpush(KEYS.timeline_events_queue, timeline_item)
Example #4
0
def tm():
    """
    弹幕
    """

    # 获取弹幕消息
    if request.method == "GET":
        id = request.args.get('id')
        key = "movie" + str(id)
        log('rd.llen(key)', rd.llen(key))
        if rd.llen(key):
            msgs = rd.lrange(key, 0, 2999)
            log('msgs', rd.lrange(key, 0, 2999))
            res = {
                "code": 1,
                "danmaku": [json.loads(v.decode('utf-8')) for v in msgs]
            }
        else:
            res = {"code": 1, "danmaku": []}
        resp = json.dumps(res)
    # 提交新弹幕
    if request.method == "POST":
        d = request.get_data().decode('utf-8')
        log('d', d)
        data = json.loads(d)
        msg = {
            "__v":
            0,
            "author":
            data["author"],
            "time":
            data["time"],
            "text":
            data["text"],
            "color":
            data["color"],
            "type":
            data['type'],
            "ip":
            request.remote_addr,
            "_id":
            datetime.datetime.now().strftime("%Y%m%d%H%M%S") +
            uuid.uuid4().hex,
            "player": [data["player"]]
        }
        res = {"code": 1, "data": msg}
        resp = json.dumps(res)
        rd.lpush("movie" + str(data["player"]), json.dumps(msg))
    return Response(resp, mimetype='application/json')
Example #5
0
def tm():
    import json
    if request.method == "GET":
        #获取弹幕消息队列
        id = request.args.get('id')
        key = "movie" + str(id)
        if rd.llen(key):
            msgs = rd.lrange(key, 0, 2999)
            res = {
                "code": 1,
                "danmaku": [json.loads(v) for v in msgs]
            }
        else:
            res = {
                "code": 1,
                "danmaku": []
            }
        resp = json.dumps(res)
    if request.method == "POST":
        #添加弹幕
        data = json.loads(request.get_data())
        msg = {
            "__v": 0,
            "author": data["author"],
            "time": data["time"],
            "text": data["text"],
            "color": data["color"],
            "type": data['type'],
            "ip": request.remote_addr,
            "_id": datetime.datetime.now().strftime("%Y%m%d%H%M%S") + uuid.uuid4().hex,
            "player": [
                data["player"]
            ]
        }
        res = {
            "code": 1,
            "data": msg
        }
        resp = json.dumps(res)
        rd.lpush("movie" + str(data["player"]), json.dumps(msg))
    return Response(resp, mimetype='application/json')
Example #6
0
def dan_man():
    import json
    if request.method == 'GET':
        id = request.args.get('id')
        key = 'movie' + str(id)  # 拼接key值
        if rd.llen(key):  # 如果有
            msgs = rd.lrange(key, 0, 2999)
            res = {"code": 1, "danmuku": [json.loads(v) for v in msgs]}
        else:
            res = {"code": 1, "danmuku": []}
        resp = json.dumps(res)
    if request.method == 'POST':
        data = json.loads(request.get_data())
        msg = {
            "_v":
            0,
            "author":
            data["author"],
            "time":
            data["time"],
            "text":
            data["text"],
            "color":
            data["color"],
            "type":
            data["type"],
            "ip":
            request.remote_addr,
            "_id":
            datetime.datetime.now().strftime("%Y%m%d%H%M%S") +
            uuid.uuid4().hex,
            "player": [data["player"]]
        }
        res = {"code": 1, "data": msg}
        resp = json.dumps(res)
        rd.lpush("movie" + str(data["player"]), json.dumps(msg))
    return Response(resp, mimetype='application/json')