Skip to content

To explore creating an application that detects available connections at once from wifi and bluetooth

Notifications You must be signed in to change notification settings

bisohns/signalum

Repository files navigation


Build Status License: MIT PyPI version

Signalum

A Linux Package to detect and analyze existing connections from wifi and bluetooth. Also checkout the Desktop Application.

Installation

    pip install signalum

Development

    git clone git@github.com:bisoncorps/signalum.git

    sudo apt-get install bluetooth libbluetooth-dev
    
    cd signalum

    pip install -r requirements.txt

Usage

   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 Demo

  ▄▄▄▄    ▄                         ▀▀█           ▄▄▄▄▄▄
 █▀   ▀   █     ▄▄▄▄  ▄ ▄▄    ▄▄▄     █    ▄   ▄      █▀  ▄▄▄
 ▀█▄▄▄    █    █▀ ▀█  █▀  █  ▀   █    █    ▀▄ ▄▀    ▄█   █▀  █
     ▀█   ▀    █   █  █   █  ▄▀▀▀█    █     █▄█    ▄▀    █▀▀▀▀
 ▀▄▄▄█▀   █    ▀█▄▀█  █   █  ▀▄▄▀█    ▀▄▄   ▀█    ██▄▄▄▄ ▀█▄▄▀
                ▄  █                        ▄▀
                 ▀▀                        ▀▀
                 ▀▀                        ▀▀
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   

Contribution

You are very welcome to modify and use them in your own projects.

License (MIT)

This project is opened under the MIT 2.0 License which allows very broad use for both academic and commercial purposes.

About

To explore creating an application that detects available connections at once from wifi and bluetooth

Resources

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages