def get_groups(): appid = request.appid uid = request.uid groups = Group.get_groups(g._db, appid, uid) fields = request.args.get("fields", '') fields = fields.split(",") for obj in groups: gid = obj['id'] if "members" in fields: members = Group.get_group_members(g._db, gid) for m in members: name = User.get_user_name(g.rds, appid, m['uid']) m['name'] = name if name else '' if not m.get('nickname'): m['nickname'] = "" obj['members'] = members if "quiet" in fields: q = User.get_group_do_not_disturb(g.rds, appid, uid, gid) obj['do_not_disturb'] = bool(q) resp = {"data":groups} return make_response(200, resp)
def upgrade_group(gid): """从普通群升级为超级群""" appid = request.appid group = Group.get_group(g._db, gid) members = Group.get_group_members(g._db, gid) if not group: raise ResponseMeta(400, "group non exists") Group.update_group_super(g._db, gid, 1) content = "%d,%d,%d" % (gid, appid, 1) publish_message(g.rds, "group_upgrade", content) v = { "group_id": gid, "group_name": group['name'], "timestamp": int(time.time()), "super": 1 } op = {"upgrade": v} send_group_notification(appid, gid, op, None) resp = {"success": True} return make_response(200, resp)
def upgrade_group(gid): """从普通群升级为超级群""" appid = request.appid group = Group.get_group(g._db, gid) members = Group.get_group_members(g._db, gid) if not group: raise ResponseMeta(400, "group non exists") Group.update_group_super(g._db, gid, 1) content = "%d,%d,%d"%(gid, appid, 1) publish_message(g.rds, "group_upgrade", content) v = { "group_id":gid, "group_name":group['name'], "timestamp":int(time.time()), "super":1 } op = {"upgrade":v} send_group_notification(appid, gid, op, None) resp = {"success":True} return make_response(200, resp)
def get_group(gid): appid = request.appid uid = request.uid obj = Group.get_group(g._imdb, gid) members = Group.get_group_members(g._imdb, gid) for m in members: name = User.get_user_name(g.rds, appid, uid) m['name'] = name if name else '' obj['members'] = members q = User.get_user_notification_quiet(g.rds, appid, uid, gid) obj['quiet'] = bool(q) resp = {"data":obj} return make_response(200, resp)
def get_group(gid): appid = request.appid uid = request.uid obj = Group.get_group(g._db, gid) members = Group.get_group_members(g._db, gid) for m in members: name = User.get_user_name(g.rds, appid, m['uid']) m['name'] = name if name else '' if not m.get('nickname'): m['nickname'] = "" obj['members'] = members q = User.get_group_do_not_disturb(g.rds, appid, uid, gid) obj['do_not_disturb'] = bool(q) resp = {"data":obj} return make_response(200, resp)
def get_groups(): appid = request.appid uid = request.uid groups = Group.get_groups(g._imdb, appid, uid) fields = request.args.get("fields", '') fields = fields.split(",") for obj in groups: gid = obj['id'] if "members" in fields: members = Group.get_group_members(g._imdb, gid) for m in members: name = User.get_user_name(g.rds, appid, uid) m['name'] = name if name else '' obj['members'] = members if "quiet" in fields: q = User.get_user_notification_quiet(g.rds, appid, uid, gid) obj['quiet'] = bool(q) resp = {"data":groups} return make_response(200, resp)