From aa9abf355544fb39beb79aa1f89159994982c523 Mon Sep 17 00:00:00 2001 From: Serhiy Mytrovtsiy Date: Wed, 23 Nov 2022 19:34:17 +0100 Subject: [PATCH] feat: added RSSI, noise, and transmit rate to the SSID tooltip (#1187) --- Modules/Net/main.swift | 3 +-- Modules/Net/popup.swift | 16 +++++++++++++++- Modules/Net/readers.swift | 2 +- 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/Modules/Net/main.swift b/Modules/Net/main.swift index 8555c4cb..d68d2815 100644 --- a/Modules/Net/main.swift +++ b/Modules/Net/main.swift @@ -34,10 +34,10 @@ public struct Network_addr { public struct Network_wifi { var countryCode: String? = nil var ssid: String? = nil + var bssid: String? = nil var RSSI: Int? = nil var noise: Int? = nil var transmitRate: Double? = nil - var transmitPower: Int? = nil var standard: String? = nil var mode: String? = nil @@ -54,7 +54,6 @@ public struct Network_wifi { self.RSSI = nil self.noise = nil self.transmitRate = nil - self.transmitPower = nil self.standard = nil self.mode = nil self.security = nil diff --git a/Modules/Net/popup.swift b/Modules/Net/popup.swift index b460d5b2..29d8905d 100644 --- a/Modules/Net/popup.swift +++ b/Modules/Net/popup.swift @@ -346,6 +346,20 @@ internal class Popup: NSStackView, Popup_p { if let v = value.wifiDetails.RSSI { self.ssidField?.stringValue += " (\(v))" } + var rssi = localizedString("Unknown") + if let v = value.wifiDetails.RSSI { + rssi = "\(v) dBm" + } + var noise = localizedString("Unknown") + if let v = value.wifiDetails.noise { + noise = "\(v) dBm" + } + var txRate = localizedString("Unknown") + if let v = value.wifiDetails.transmitRate { + txRate = "\(v) Mbps" + } + self.ssidField?.toolTip = "RSSI: \(rssi)\nNoise: \(noise)\nTransmit rate: \(txRate)" + self.standardField?.stringValue = value.wifiDetails.standard ?? localizedString("Unknown") self.securityField?.stringValue = value.wifiDetails.security ?? localizedString("Unknown") self.channelField?.stringValue = value.wifiDetails.channel ?? localizedString("Unknown") @@ -353,7 +367,7 @@ internal class Popup: NSStackView, Popup_p { let number = value.wifiDetails.channelNumber ?? localizedString("Unknown") let band = value.wifiDetails.channelBand ?? localizedString("Unknown") let width = value.wifiDetails.channelWidth ?? localizedString("Unknown") - self.channelField?.toolTip = "Channel number: \(number)\nChannel band: \(band)\nChannel width: \(width)" + self.channelField?.toolTip = "Channel number: \(number)\nChannel band: \(band)\nChannel width: \(width)\nTransmit rate: \(txRate)" } else { self.ssidField?.stringValue = localizedString("Unavailable") self.standardField?.stringValue = localizedString("Unavailable") diff --git a/Modules/Net/readers.swift b/Modules/Net/readers.swift index 5fccdfca..37921336 100644 --- a/Modules/Net/readers.swift +++ b/Modules/Net/readers.swift @@ -328,12 +328,12 @@ internal class UsageReader: Reader { if let interface = CWWiFiClient.shared().interface(withName: self.interfaceID), self.usage.connectionType == .wifi { self.usage.wifiDetails.ssid = interface.ssid() + self.usage.wifiDetails.bssid = interface.bssid() self.usage.wifiDetails.countryCode = interface.countryCode() self.usage.wifiDetails.RSSI = interface.rssiValue() self.usage.wifiDetails.noise = interface.noiseMeasurement() self.usage.wifiDetails.transmitRate = interface.transmitRate() - self.usage.wifiDetails.transmitPower = interface.transmitPower() self.usage.wifiDetails.standard = interface.activePHYMode().description self.usage.wifiDetails.mode = interface.interfaceMode().description