import json import uuid from datetime import datetime from pathlib import Path class CaptureMetadata: def __init__(self, device_id, capture_dir): self.device_id = device_id self.capture_id = str(uuid.uuid4()) self.capture_date = datetime.now().isoformat() self.capture_dir = Path(capture_dir) self.capture_file = "" self.start_time = "" self.stop_time = "" self.tcpdump_command = "" self.interface = "" self.device_ip_address = "" def build_capture_file_name(self): self.capture_file = f"{self.device_id}_{self.capture_id}.pcap" def to_dict(self): return self.__dict__ def save_to_file(self, file_path=None): file_path = file_path or self.capture_dir / 'metadata.json' with open(file_path, 'w') as f: json.dump(self.to_dict(), f, indent=4)