friedrith / node-wifi

📶 NodeJS tool to manage wifi (connections, scans)
MIT License
395 stars 161 forks source link

List all BSSIDs for each SSID, on Windows #68

Open Kirbo opened 5 years ago

Kirbo commented 5 years ago

I was expecting node-wifi to return all the SSIDS and BSSIDS also on Windows as it does on macOS.

On macOS it returns something like this:

[ { mac: '<censored>',
    bssid: '<censored>',
    ssid: 'Pingu',
    channel: 11,
    frequency: 2462,
    signal_level: -56.5,
    quality: 1,
    security: 'WPA2-Personal',
    security_flags: 'CCMP ',
    mode: 'Unknown' },
  { mac: '<censored>',
    bssid: '<censored>',
    ssid: 'Pingu',
    channel: 36,
    frequency: 5180,
    signal_level: -56.5,
    quality: 6,
    security: 'WPA2-Personal',
    security_flags: 'CCMP ',
    mode: 'Unknown' },
  { mac: '<censored>',
    bssid: '<censored>',
    ssid: 'Pingu',
    channel: 100,
    frequency: 5500,
    signal_level: -58,
    quality: 6,
    security: 'WPA2-Personal',
    security_flags: 'CCMP ',
    mode: 'Unknown' },
  { mac: '<censored>',
    bssid: '<censored>',
    ssid: 'Pingu',
    channel: 11,
    frequency: 2462,
    signal_level: -51.5,
    quality: 97,
    security: 'WPA2-Personal',
    security_flags: 'CCMP ',
    mode: 'Unknown' },
  { mac: '<censored>',
    bssid: '<censored>',
    ssid: 'Koti_5DE1',
    channel: 1,
    frequency: 2412,
    signal_level: -91,
    quality: 18,
    security: 'WPA2-Personal',
    security_flags: 'CCMP ',
    mode: 'Unknown' },
  { mac: '<censored>',
    bssid: '<censored>',
    ssid: 'TP-Link',
    channel: 2,
    frequency: 2417,
    signal_level: -80,
    quality: 40,
    security: 'WPA2-Personal',
    security_flags: 'CCMP ',
    mode: 'Unknown' },
  { mac: '<censored>',
    bssid: '<censored>',
    ssid: 'DNA-WLAN-A5CBA4',
    channel: 6,
    frequency: 2437,
    signal_level: -89,
    quality: 22,
    security: 'WPA2-Personal',
    security_flags: 'CCMP ',
    mode: 'Unknown' },
  { mac: '<censored>',
    bssid: '<censored>',
    ssid: 'DNA-WLAN-2G-A5CBA4',
    channel: 6,
    frequency: 2437,
    signal_level: -89,
    quality: 22,
    security: 'WPA2-Personal',
    security_flags: 'CCMP ',
    mode: 'Unknown' } ]

On Windows it used to return only:

[ { mac: '<censored>',
    bssid: '<censored>',
    ssid: 'Pingu',
    channel: 11,
    frequency: 2462,
    signal_level: -51.5,
    quality: 97,
    security: 'WPA2-Personal',
    security_flags: 'CCMP ',
    mode: 'Unknown' },
  { mac: '<censored>',
    bssid: '<censored>',
    ssid: 'Koti_5DE1',
    channel: 1,
    frequency: 2412,
    signal_level: -91,
    quality: 18,
    security: 'WPA2-Personal',
    security_flags: 'CCMP ',
    mode: 'Unknown' },
  { mac: '<censored>',
    bssid: '<censored>',
    ssid: 'TP-Link',
    channel: 2,
    frequency: 2417,
    signal_level: -80,
    quality: 40,
    security: 'WPA2-Personal',
    security_flags: 'CCMP ',
    mode: 'Unknown' },
  { mac: '<censored>',
    bssid: '<censored>',
    ssid: 'DNA-WLAN-A5CBA4',
    channel: 6,
    frequency: 2437,
    signal_level: -89,
    quality: 22,
    security: 'WPA2-Personal',
    security_flags: 'CCMP ',
    mode: 'Unknown' },
  { mac: '<censored>',
    bssid: '<censored>',
    ssid: 'DNA-WLAN-2G-A5CBA4',
    channel: 6,
    frequency: 2437,
    signal_level: -89,
    quality: 22,
    security: 'WPA2-Personal',
    security_flags: 'CCMP ',
    mode: 'Unknown' },
  { mac: '<censored>',
    bssid: '<censored>',
    ssid: 'Koti_5DE1_5G',
    channel: 36,
    frequency: 5180,
    signal_level: -87,
    quality: 26,
    security: 'WPA2-Personal',
    security_flags: 'CCMP ',
    mode: 'Unknown' } ]

But after my modification, it will return all the BSSIDs for each SSID as well, since I need this kind of behaviour on my other project.

Kirbo commented 5 years ago

Includes also another fix for BSSID/MAC starting with 00: on macOS