예제 #1
0
파일: chat.py 프로젝트: lllmy/kingdemo
def clear_msg(sender, to_user):
    msg = REDIS_DB.get(to_user)
    if msg:
        msg = json.loads(msg)
        msg[sender] = 0

    REDIS_DB.set(to_user, json.dumps(msg))
예제 #2
0
파일: chat.py 프로젝트: lllmy/kingdemo
def get_redis(to_user):
    msg = REDIS_DB.get(to_user)
    if msg:
        msg = json.loads(msg)
        msg["count"] = sum(msg.values())

        return msg
예제 #3
0
파일: chat.py 프로젝트: lllmy/kingdemo
def get_redis_random(toy_id):
    toy_msg = REDIS_DB.get(toy_id)
    if toy_msg:
        toy_msg = json.loads(toy_msg)
        for sender, count in toy_msg.items():
            if count:
                return sender, count

    return None, None
예제 #4
0
def get_redis_all(to_user):
    self_redis = REDIS_DB.get(to_user)

    chat_dict = {'count': 0}
    if self_redis:
        chat_dict = json.loads(self_redis)  # {'联系人1号':1,'联系人2号':3}
        # 添加一个未读数据的总和
        chat_dict['count'] = sum(chat_dict.values())
    return chat_dict
예제 #5
0
def get_connection(**kwargs):
    _RQ_DEFAULT_CONNECTION = {
        'HOST': REDIS_HOST,
        'PORT': 6379,
        'DB': REDIS_DB.get('tasks'),
        'PASSWORD': '',
        'DEFAULT_TIMEOUT': 360,
    }
    _RQ_DEFAULT_CONNECTION.update(kwargs)
    return _RQ_DEFAULT_CONNECTION
예제 #6
0
def get_redis_all(to_user):
    to_user_msg = REDIS_DB.get(to_user)
    if to_user_msg:
        to_user_msg = json.loads(to_user_msg)
        #{"toy1":1,"toy2":1,"toy3":2}
        to_user_msg['count'] = sum(to_user_msg.values())

        return to_user_msg

    else:
        return {'count': 0}
예제 #7
0
파일: redis_msg.py 프로젝트: wliustc/Darily
def get_reids_one(to_user, from_user):
    to_user_msg = REDIS_DB.get(to_user)
    if to_user_msg:
        to_user_msg = json.loads(to_user_msg)
        count = to_user_msg.get(from_user, 0)

        to_user_msg[from_user] = 0
        REDIS_DB.set(to_user, json.dumps(to_user_msg))

        return count
    else:
        return 0
예제 #8
0
def set_redis(to_user, from_user):
    # toy:{app:2}
    to_user_msg = REDIS_DB.get(to_user)
    if to_user_msg:
        to_user_msg = json.loads(to_user_msg)
        if to_user_msg.get(from_user):
            to_user_msg[from_user] += 1
        else:
            to_user_msg[from_user] = 1
    else:
        to_user_msg = {from_user: 1}

    REDIS_DB.set(to_user, json.dumps(to_user_msg))
예제 #9
0
def set_redis(sender, to_user):
    user_msg = REDIS_DB.get(to_user)
    if not user_msg:
        REDIS_DB.set(to_user, json.dumps({sender: 1}))
    else:
        user_msg = json.loads(user_msg)
        if not user_msg.get(sender):
            user_msg[sender] = 1

        else:
            user_msg[sender] += 1

        REDIS_DB.set(to_user, json.dumps(user_msg))
예제 #10
0
def set_redis(to_user, from_user):
    # 如果app给玩具发消息,那么站在app的角度上to_user就是玩具,from_user就是app
    # 这里的to_user也是玩具,所以get(to_user)就是get自己
    self_redis = REDIS_DB.get(to_user)  # 查看数据库中是否存在自己的空间,如果有就+1,没有就创建
    if self_redis:
        chat_dict = json.loads(self_redis)  # 先到redis中loads,看看有没有数据
        chat_dict.setdefault(from_user, 0)
        chat_dict[from_user] += 1
        REDIS_DB.set(to_user, json.dumps(chat_dict))

    else:
        # {'我':{'联系人1号':1,'联系人2号':3}}  redis中没有字典类型,需要哈希存储能拿字典
        # 所以我们可以换思路,把字典给json,变成字符串
        chat = {from_user: 1}  # 因为一次只能发一条消息,所以默认为1
        REDIS_DB.set(to_user, json.dumps(chat))
예제 #11
0
파일: noguri.py 프로젝트: logonmy/noguri
def get_config():
    # 1. 获取应用配置
    app_list_str = REDIS_DB.get('_all_app_list')
    app_list = []
    if app_list_str:
        app_list = app_list_str.split(',')

    app_config_dict = {}
    pipe = REDIS_DB.pipeline()
    for appname in app_list:
        pipe.hgetall(appname + '_config')

    res_list = pipe.execute()
    for i in range(len(res_list)):
        app_config_dict[app_list[i]] = res_list[i]

    return app_config_dict
예제 #12
0
def get_redis_one_toy(to_user, from_user):
    to_user_msg = REDIS_DB.get(to_user)
    if to_user_msg:
        to_user_msg = json.loads(to_user_msg)
        count = to_user_msg.get(from_user, 0)

        if count == 0:
            for key, value in to_user_msg.items():
                if value:
                    count = to_user_msg.get(key)
                    from_user = key

        to_user_msg[from_user] = 0
        REDIS_DB.set(to_user, json.dumps(to_user_msg))

        return count, from_user
    else:
        return 0
예제 #13
0
def get_redis(to_user, from_user):
    # 如果app给玩具发消息,那么站在app的角度上to_user就是玩具,from _user就是app
    # 这里的to_user也是玩具,所以get(to_user)就是get自己
    self_redis = REDIS_DB.get(to_user)
    count = 0
    if self_redis:
        chat_dict = json.loads(self_redis)  # 先到redis中loads,看看有没有数据
        chat_dict.setdefault(from_user, 0)
        count = chat_dict[from_user]

        if count == 0:
            key, value = re_get_redis(chat_dict)
            if key:
                from_user = key
                count = value

        chat_dict[from_user] = 0
        REDIS_DB.set(to_user, json.dumps(chat_dict))
    return from_user, count
예제 #14
0
파일: chat.py 프로젝트: lllmy/kingdemo
def get_redis_count(sender, to_user):
    msg = REDIS_DB.get(to_user)
    if msg:
        msg = json.loads(msg)
        return msg[sender]