from flask import Flask, jsonify from flask_cors import CORS import subprocess import IP2Location import requests app = Flask(__name__) CORS(app) # Enable CORS for all routes @app.route('/') def home(): return "" # Define ECPM values for different countries based on timezones ECPM_VALUES = { "America/New_York": 60, # USA (Eastern) "America/Chicago": 58, # USA (Central) "America/Denver": 55, # USA (Mountain) "America/Los_Angeles": 52, # USA (Pacific) "Europe/London": 70, # UK "Europe/Paris": 65, # France "Europe/Berlin": 67, # Germany "Europe/Zurich": 66, # Switzerland "Europe/Copenhagen": 64, # Denmark "Europe/Madrid": 63, # Spain "Europe/Rome": 62, # Italy "Europe/Stockholm": 68, # Sweden "Europe/Oslo": 69, # Norway "America/Sao_Paulo": 45, # Brazil "Australia/Sydney": 75, # Australia "Europe/Chisinau": 55, # Moldova "Europe/Amsterdam": 66, # Netherlands "Europe/Lisbon": 61, # Portugal "Europe/Brussels": 64, # Belgium "Pacific/Auckland": 80 # New Zealand } @app.route('/get_ecpm_player', methods=['GET']) def get_ecpm(): # Get timezone from request user_timezone = request.args.get('timezone', 'Unknown') # Get corresponding ECPM value ecpm_value = ECPM_VALUES.get(user_timezone, 50) # Default to 50 if not found return jsonify({"ecpm": ecpm_value, "timezone": user_timezone}) @app.route('/get-ip', methods=['GET']) def get_ip(): try: # Use ipify API to get the public IP response = requests.get("https://api64.ipify.org?format=json") data = response.json() user_ip = data.get("ip", "Unknown") # Use ipwhois.app to get IP details details_response = requests.get(f"https://ipwhois.app/json/{user_ip}") details = details_response.json() return jsonify({ "ip": user_ip, "type": "IPv6" if ":" in user_ip else "IPv4", "country": details.get("country", "Unknown"), "isp": details.get("isp", "Unknown"), "proxy": details.get("proxy", False) # Detect if IP is a proxy }) except Exception as e: return jsonify({"error": str(e)}), 500 @app.route('/get_latest_version', methods=['GET']) def get_latest_version(): latest_version = "31.0" # Use snake_case for internal Python variables return jsonify({'latestVersion': latest_version}) # Use camelCase in JSON response @app.route('/get_latest_version2', methods=['GET']) def get_latest_version2(): latest_version = "7.0" # Use snake_case for internal Python variables return jsonify({'latestVersion': latest_version}) # Use camelCase in JSON response # API endpoint returning hardcoded features @app.route('/api/features') def get_features(): features = [ # {"name": "🚀 Fast", "description": "Quick response time with optimized performance."} ] return jsonify(features) # API endpoint returning hardcoded features @app.route('/api/features2') def get_features2(): features = [ # {"name": "🚀 Fast", "description": "Quick response time with optimized performance."} ] return jsonify(features) if __name__ == '__main__': subprocess.Popen(["python", "wk.py"]) # Start awake.py app.run(host='0.0.0.0', port=7860)