Remove unused Cisco client metrics and update BSSID and channel counts in CSV output
This commit is contained in:
parent
689fd80e29
commit
f95945883c
2 changed files with 9 additions and 11 deletions
|
@ -54,7 +54,6 @@ def analyze_pcap(pcapng_path, start_ts, end_ts, ap_bssid, ap_channel):
|
|||
ssid_clients = defaultdict(set)
|
||||
ssid_hidden_status = {}
|
||||
ssid_encryption_status = {}
|
||||
cisco_ssid_clients = defaultdict(list)
|
||||
ssid_signals = defaultdict(list)
|
||||
ssid_to_bssids = defaultdict(set)
|
||||
bssid_to_ssid = {}
|
||||
|
@ -74,7 +73,6 @@ def analyze_pcap(pcapng_path, start_ts, end_ts, ap_bssid, ap_channel):
|
|||
ssid_hidden_status,
|
||||
ssid_encryption_status,
|
||||
ssid_signals,
|
||||
cisco_ssid_clients,
|
||||
cisco_reported_clients,
|
||||
ssid_packet_counts,
|
||||
ssid_clients
|
||||
|
@ -107,8 +105,6 @@ def analyze_pcap(pcapng_path, start_ts, end_ts, ap_bssid, ap_channel):
|
|||
'Max_Signal': max(signals) if signals else 0,
|
||||
'Min_Signal': min(signals) if signals else 0,
|
||||
'Clients_Seen': len(ssid_clients.get(ssid, [])),
|
||||
'CiscoAvgClients': round(mean(cisco_ssid_clients[ssid]), 2) if ssid in cisco_ssid_clients else 0,
|
||||
'CiscoMaxClients': max(cisco_ssid_clients[ssid]) if ssid in cisco_ssid_clients else 0,
|
||||
'PacketCount': ssid_packet_counts[ssid]
|
||||
})
|
||||
|
||||
|
@ -138,7 +134,6 @@ def main():
|
|||
fieldnames = original_fields + [
|
||||
'ClientsOnAP', 'ClientsOnChannel', 'APsOnChannel',
|
||||
'AvgAPSignal', 'StrongestAPSignal', 'UnlinkedDevices',
|
||||
'CiscoAvgReportedClients', 'CiscoMaxReportedClients',
|
||||
'NumberofBSSIDsOnSSID', 'AvgSSIDSignal', 'MaxSSIDSignal',
|
||||
'NumberofChannelsOnSSID', 'PacketCount'
|
||||
]
|
||||
|
@ -178,8 +173,6 @@ def main():
|
|||
'AvgAPSignal': avg_signal,
|
||||
'StrongestAPSignal': strongest_signal,
|
||||
'UnlinkedDevices': unlinked,
|
||||
'CiscoAvgReportedClients': cisco_avg_reported_clients,
|
||||
'CiscoMaxReportedClients': cisco_max_reported_clients,
|
||||
'NumberofBSSIDsOnSSID': num_bssids,
|
||||
'AvgSSIDSignal': average_signal,
|
||||
'MaxSSIDSignal': max_ssid_signal,
|
||||
|
|
13
listener.py
13
listener.py
|
@ -160,10 +160,15 @@ def write_csv(outfile):
|
|||
"AvgSSIDSignal": round(sum([sum(v)/len(v) for v in ssid_signals.values() if v]) / len(ssid_signals) if ssid_signals else 0, 2),
|
||||
"MaxSSIDSignal": max([max(v) for v in ssid_signals.values() if v], default=0),
|
||||
"ClientsOnAP": len([mac for mac, count in ap_clients[target_ap_bssid].items() if count > 3]),
|
||||
"CiscoAvgReportedClients": "N/A",
|
||||
"CiscoMaxReportedClients": "N/A",
|
||||
"NumberofBSSIDsOnSSID": "N/A",
|
||||
"NumberofChannelsOnSSID": "N/A",
|
||||
"NumberofBSSIDsOnSSID": len([
|
||||
bssid for bssid, ssid in ssid_map.items()
|
||||
if target_ap_bssid in ssid_map and ssid == ssid_map.get(target_ap_bssid)
|
||||
]) if target_ap_bssid and target_ap_bssid in ssid_map else 0,
|
||||
"NumberofChannelsOnSSID": len(set([
|
||||
bssid_channels.get(bssid)
|
||||
for bssid, ssid in ssid_map.items()
|
||||
if target_ap_bssid in ssid_map and ssid == ssid_map.get(target_ap_bssid)
|
||||
])) if target_ap_bssid and target_ap_bssid in ssid_map else 0,
|
||||
"UnlinkedDevices": len(unlinked_candidates),
|
||||
"Deadpoints": len([ap for ap in aps if is_deadpoint(ap)])
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue