From 2881f171ffa55268cc5d09a34deded7fb5162861 Mon Sep 17 00:00:00 2001 From: Alexander Borg Date: Wed, 17 Sep 2025 19:52:35 +0200 Subject: [PATCH] Fix jwt-token --- test_enhanced_detection.py | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/test_enhanced_detection.py b/test_enhanced_detection.py index 7f4c5d4..07b6ce6 100644 --- a/test_enhanced_detection.py +++ b/test_enhanced_detection.py @@ -59,7 +59,7 @@ def show_drone_types(): if drone_id in DRONE_TYPES: print(f" {drone_id:2d}: {DRONE_TYPES[drone_id]}") -def send_detection(drone_type=2, drone_id=None, geo_lat=0, geo_lon=0, rssi=-45, freq=2400, show_response=True): +def send_detection(drone_type=2, drone_id=None, geo_lat=0, geo_lon=0, rssi=-45, freq=2400, device_id=None, show_response=True): """ Send a drone detection packet @@ -70,16 +70,27 @@ def send_detection(drone_type=2, drone_id=None, geo_lat=0, geo_lon=0, rssi=-45, geo_lon: Longitude coordinate rssi: Signal strength freq: Frequency + device_id: Device ID to use (uses global DEVICE_ID if None) show_response: Whether to print the response """ + # Use provided device_id or fall back to global DEVICE_ID + if device_id is None: + device_id = DEVICE_ID + else: + # Convert to int if it's a numeric string + try: + device_id = int(device_id) if device_id.isdigit() else device_id + except (AttributeError, ValueError): + pass # Keep as-is if conversion fails + # Generate drone_id if not specified if drone_id is None: drone_id = int(time.time()) % 100000 # Use timestamp for uniqueness # Create detection packet matching your original format packet = { - "device_id": DEVICE_ID, + "device_id": device_id, "geo_lat": float(geo_lat), "geo_lon": float(geo_lon), "device_timestamp": int(time.time()), @@ -95,7 +106,7 @@ def send_detection(drone_type=2, drone_id=None, geo_lat=0, geo_lon=0, rssi=-45, print(f"📡 Sending detection:") print(f" Drone Type: {drone_type} ({drone_name})") print(f" Drone ID: {drone_id}") - print(f" Device ID: {DEVICE_ID}") + print(f" Device ID: {device_id}") print(f" Location: ({geo_lat}, {geo_lon})") print(f" RSSI: {rssi}, Freq: {freq}") @@ -197,6 +208,8 @@ def main(): help='Drone type (0-18), default: 2 (Orlan)') parser.add_argument('--drone-id', '-d', type=int, default=None, help='Specific drone ID to simulate (auto-generated if not specified)') + parser.add_argument('--device-id', type=str, default='1941875381', + help='Device ID to use for detection (default: 1941875381)') parser.add_argument('--simulate', '-s', action='store_true', help='Run approach simulation instead of single detection') parser.add_argument('--steps', type=int, default=10, @@ -218,7 +231,7 @@ def main(): print("🎯 ENHANCED DRONE DETECTION TEST") print("="*70) print(f"API URL: {API_BASE_URL}") - print(f"Device ID: {DEVICE_ID}") + print(f"Device ID: {args.device_id}") print("="*70) if args.list_types: @@ -235,6 +248,7 @@ def main(): simulate_drone_approach( drone_type=args.drone_type, drone_id=args.drone_id, + device_id=args.device_id, steps=args.steps ) else: @@ -246,7 +260,8 @@ def main(): geo_lat=args.lat, geo_lon=args.lon, rssi=args.rssi, - freq=args.freq + freq=args.freq, + device_id=args.device_id ) if __name__ == "__main__":