A Linux Package to detect and analyze existing connections from wifi and bluetooth. Also checkout the Desktop Application.
pip install signalum
git clone git@github.com:bisoncorps/signalum.git
sudo apt-get install bluetooth libbluetooth-dev
cd signalum
pip install -r requirements.txt
from signalum.core import _bluetooth as bt
from signalum.core import _wifi as wf
kwargs = dict()
# avoid showing graph when calling from code
kwargs['graph'] = False
kwargs['color'] = False
kwargs['analyze_all'] = True
# no extra info
kwargs['show_extra_info'] = True
wf_devices = wf.wifilyze(**kwargs)
# contains two lists, first is the list of cell objects
# print all properties of first Cell object
print(wf_devices[0][0].__dict__)
# {'ssid': 'Dexter',
# ... ,
# 'address': '***********',
# 'encrypted': True,
# 'encryption_type': 'wpa2',
# 'signal': -33,}
# show device names
kwargs['show_names'] = True
kwargs['show_extra_info']
bt_devices = bt.bluelyze(**kwargs)
print(bt_devices[0][0])
# ['Deven-Dexter', '***********', -59, 'Phone', 'Smartphone', 'Rendering|Object Transfer|Audio|Information|']
Signalum also comes with a cli tool called signalyze
▄▄▄▄ ▄ ▀▀█ ▄▄▄▄▄▄
█▀ ▀ █ ▄▄▄▄ ▄ ▄▄ ▄▄▄ █ ▄ ▄ █▀ ▄▄▄
▀█▄▄▄ █ █▀ ▀█ █▀ █ ▀ █ █ ▀▄ ▄▀ ▄█ █▀ █
▀█ ▀ █ █ █ █ ▄▀▀▀█ █ █▄█ ▄▀ █▀▀▀▀
▀▄▄▄█▀ █ ▀█▄▀█ █ █ ▀▄▄▀█ ▀▄▄ ▀█ ██▄▄▄▄ ▀█▄▄▀
▄ █ ▄▀
▀▀ ▀▀
▀▀ ▀▀
usage: signalyze [-h] [-o OUTPUT] [--show-name] [-b | -w | -all] [--show-graph | --show-extra-info]
optional arguments:
-h, --help show this help message and exit
-o OUTPUT, --output OUTPUT save to an output csv file
--show-name Show Device name and mac address
-b, --bluetooth Analyze only bluetooth
-w, --wifi Analyze only wifi
-all, --analyze-all Analyze both wifi and bluetooth
--show-graph Show Realtime graph of nearby devices
--show-extra-info Show extra information like services and device classification
You are very welcome to modify and use them in your own projects.
This project is opened under the MIT 2.0 License which allows very broad use for both academic and commercial purposes.