def index(self): """ Lists all servers """ servers = [] for s in meta.getAllServers(): servers.append({ 'id': s.id(), 'name': get_server_conf(meta, s, 'registername'), 'address': '%s:%s' % ( get_server_conf(meta, s, 'host'), get_server_port(meta, s), ), 'host': get_server_conf(meta, s, 'host'), 'port': get_server_port(meta, s), 'running': s.isRunning(), 'users': (s.isRunning() and len(s.getUsers())) or 0, 'maxusers': get_server_conf(meta, s, 'users') or 0, 'channels': (s.isRunning() and len(s.getChannels())) or 0, 'uptime_seconds': s.getUptime() if s.isRunning() else 0, 'uptime': str( timedelta(seconds=s.getUptime()) if s.isRunning() else '' ), 'log_length': s.getLogLen() }) # Workaround response due to jsonify() not allowing top-level json response # https://github.com/mitsuhiko/flask/issues/170 return Response(json.dumps(servers, sort_keys=True, indent=4), mimetype='application/json')
def index(self): """ Lists all servers """ servers = [] for s in meta.getAllServers(): servers.append({ 'id': s.id(), 'name': get_server_conf(meta, s, 'registername'), 'address': '%s:%s' % ( get_server_conf(meta, s, 'host'), get_server_port(meta, s), ), 'host': get_server_conf(meta, s, 'host'), 'port': get_server_port(meta, s), 'running': s.isRunning(), 'users': (s.isRunning() and len(s.getUsers())) or 0, 'maxusers': get_server_conf(meta, s, 'users') or 0, 'channels': (s.isRunning() and len(s.getChannels())) or 0, 'uptime_seconds': s.getUptime() if s.isRunning() else 0, 'uptime': str( timedelta(seconds=s.getUptime()) if s.isRunning() else '' ), 'log_length': s.getLogLen(), 'users': [s.getUsers()[uid].name for uid in s.getUsers().keys()] if s.isRunning() else None, }) return Response(json.dumps(servers, sort_keys=True, indent=4), mimetype='application/json')
def index(self): """ Lists all stats """ stats = { 'all_servers': len(meta.getAllServers()), 'booted_servers': len(meta.getBootedServers()), 'users_online': get_all_users_count(meta), 'murmur_version': meta.getVersion()[3], 'murmur-rest_version': '0.1', 'uptime': meta.getUptime() } # Workaround response due to jsonify() not allowing top-level json response # https://github.com/mitsuhiko/flask/issues/170 return Response(json.dumps(stats, sort_keys=True, indent=4), mimetype='application/json')
def index(self): """ Lists all servers """ servers = [] for s in meta.getAllServers(): host = get_server_conf(meta, s, 'host') port = get_server_port(meta, s) is_running = s.isRunning() uptime = s.getUptime() if is_running else 0 servers.append({ 'id': s.id(), 'name': get_server_conf(meta, s, 'registername'), 'address': '%s:%s' % (host, port), 'host': host, 'port': port, 'running': is_running, 'users': (is_running and len(s.getUsers())) or 0, 'maxusers': get_server_conf(meta, s, 'users') or 0, 'channels': (is_running and len(s.getChannels())) or 0, 'uptime_seconds': uptime if is_running else 0, 'uptime': str(timedelta(seconds=uptime) if is_running else ''), 'log_length': s.getLogLen() }) return jsonify(servers)