diff --git a/src/endpoints/general.py b/src/endpoints/general.py index 4f7a82a..f45e678 100644 --- a/src/endpoints/general.py +++ b/src/endpoints/general.py @@ -1,3 +1,5 @@ +import base64 + import flask_definitions from flask_definitions import * import os @@ -8,13 +10,13 @@ def file_survival_biome_definition_des_mayan(): get_remote_ip() try: print("Responded to file survival biome definition des mayan api call POST") - graylog_logger(level="info", handler="general-File-Handle", message=request.get_json()) + logger.graylog_logger(level="info", handler="general-File-Handle", message=request.get_json()) return jsonify({"status": "success"}) except TimeoutError: print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-File-Handle", message=f"Error in file_survival_biome_definition_des_mayan: {e}") + logger.graylog_logger(level="error", handler="general-File-Handle", message=f"Error in file_survival_biome_definition_des_mayan: {e}") @app.route("/gamenews/messages", methods=["GET"]) @@ -32,7 +34,7 @@ def gamenews(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-Game-News", message=f"Error in gamenews: {e}") + logger.graylog_logger(level="error", handler="general-Game-News", message=f"Error in gamenews: {e}") @app.route("/api/v1/config/VER_LATEST_CLIENT_DATA", methods=["GET"]) @@ -45,7 +47,7 @@ def config_ver_latest_client_data(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-ver-latest-data", message=f"Error in config_ver_latest_client_data: {e}") + logger.graylog_logger(level="error", handler="general-ver-latest-data", message=f"Error in config_ver_latest_client_data: {e}") @app.route("/api/v1/utils/contentVersion/latest/2.2", methods=["GET"]) @@ -61,7 +63,7 @@ def content_version_latest(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-content-version", message=f"Error in content_version_latest: {e}") + logger.graylog_logger(level="error", handler="general-content-version", message=f"Error in content_version_latest: {e}") @app.route("/gameservers.dev", methods=["POST"]) @@ -75,7 +77,7 @@ def gameservers_dev(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-gameserver-dev", message=f"Error in gameservers_dev: {e}") + logger.graylog_logger(level="error", handler="general-gameserver-dev", message=f"Error in gameservers_dev: {e}") @app.route("/api/v1/config/UseMirrorsMM_Steam", methods=["GET"]) @@ -88,7 +90,7 @@ def config_use_mirrors_mm_steam(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-use-mirrors-mm-steam", message=f"Error in config_use_mirrors_mm_steam: {e}") + logger.graylog_logger(level="error", handler="general-use-mirrors-mm-steam", message=f"Error in config_use_mirrors_mm_steam: {e}") @app.route("/crashreport/unreal/CrashReporter/Ping", methods=["GET"]) @@ -101,7 +103,7 @@ def crashreporter_ping(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-crashreporter-ping", message=f"Error in crashreporter_ping: {e}") + logger.graylog_logger(level="error", handler="general-crashreporter-ping", message=f"Error in crashreporter_ping: {e}") @app.route("/tex", methods=["GET"]) @@ -113,7 +115,7 @@ def tex_get(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-tex", message=f"Error in tex_get: {e}") + logger.graylog_logger(level="error", handler="general-tex", message=f"Error in tex_get: {e}") @app.route("/") @@ -123,7 +125,7 @@ def root(): return jsonify({"status": "success"}) # return render_template("index.html") except Exception as e: - graylog_logger(level="error", handler="general-root", message=f"Error in root: {e}") + logger.graylog_logger(level="error", handler="general-root", message=f"Error in root: {e}") @app.route('/favicon.ico') @@ -136,7 +138,7 @@ def favicon(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-favicon", message=f"Error in favicon: {e}") + logger.graylog_logger(level="error", handler="general-favicon", message=f"Error in favicon: {e}") @app.route("/api/v1/healthcheck", methods=["GET"]) @@ -148,7 +150,7 @@ def healthcheck(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-healthcheck", message=f"Error in healthcheck: {e}") + logger.graylog_logger(level="error", handler="general-healthcheck", message=f"Error in healthcheck: {e}") @app.route("/api/v1/services/tex") @@ -164,7 +166,7 @@ def services_tex(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-services-tex", message=f"Error in services_tex: {e}") + logger.graylog_logger(level="error", handler="general-services-tex", message=f"Error in services_tex: {e}") @app.route("/api/v1/utils/contentVersion/latest/2.11", methods=["GET"]) @@ -178,7 +180,7 @@ def content_version(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-content-version", message=f"Error in content_version: {e}") + logger.graylog_logger(level="error", handler="general-content-version", message=f"Error in content_version: {e}") @app.route("/api/v1/utils/contentVersion/latest/0", methods=["GET"]) @@ -192,7 +194,7 @@ def content_version0(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-content-version0", message=f"Error in content_version0: {e}") + logger.graylog_logger(level="error", handler="general-content-version0", message=f"Error in content_version0: {e}") @app.route("/api/v1/utils/contentVersion/latest/1.1", methods=["GET"]) @@ -206,7 +208,7 @@ def content_version1(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-content-version1", message=f"Error in content_version1: {e}") + logger.graylog_logger(level="error", handler="general-content-version1", message=f"Error in content_version1: {e}") @app.route("/api/v1/consent/eula2", methods=["PUT", "GET"]) @@ -220,7 +222,7 @@ def consent_eula(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-consent-eula", message=f"Error in consent_eula: {e}") + logger.graylog_logger(level="error", handler="general-consent-eula", message=f"Error in consent_eula: {e}") elif request.method == "GET": try: print("Responded to consent eula api call GET") @@ -229,7 +231,7 @@ def consent_eula(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-consent-eula", message=f"Error in consent_eula: {e}") + logger.graylog_logger(level="error", handler="general-consent-eula", message=f"Error in consent_eula: {e}") @app.route("/api/v1/consent/eula", methods=["GET"]) @@ -244,7 +246,7 @@ def consent_eula0(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-consent-eula0", message=f"Error in consent_eula0: {e}") + logger.graylog_logger(level="error", handler="general-consent-eula0", message=f"Error in consent_eula0: {e}") @app.route("/api/v1/consent/privacyPolicy", methods=["GET"]) @@ -259,7 +261,7 @@ def privacy_policy(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-privacy-policy", message=f"Error in consent_eula0: {e}") + logger.graylog_logger(level="error", handler="general-privacy-policy", message=f"Error in consent_eula0: {e}") @app.route("/api/v1/utils/contentVersion/latest/2.5", methods=["GET"]) @@ -273,4 +275,33 @@ def content_version2_5(): print("Timeout error") return jsonify({"status": "error"}) except Exception as e: - graylog_logger(level="error", handler="general-content-version2_5", message=f"Error in content_version2_5: {e}") \ No newline at end of file + logger.graylog_logger(level="error", handler="general-content-version2_5", message=f"Error in content_version2_5: {e}") + + +@app.route("/file///", methods=["POST", "GET"]) +def file_gold_rush(seed, map_name, game_version): + get_remote_ip() + + print(game_version) + print(seed) + print(map_name) + + file_name = f"{game_version}_{seed}_{map_name}.b64" + folder_path = os.path.join(app.root_path, "map_seeds") + file_path = os.path.join(folder_path, file_name) + os.makedirs(folder_path, exist_ok=True) + + if request.method == "GET": + if os.path.isfile(file_path): + with open(file_name, "r") as files: + data = files.read() + encoded_data = base64.b64encode(data) + return encoded_data + + if request.method == "POST": + data = request.get_data() + decoded_data = base64.b64decode(data) + with open(file_path, "wb") as files: + files.write(decoded_data) + return {"status": "success"} +