Controlling Speedify from Python
In addition to controlling Speedify via the command line interface, or the graphical user interface, we now offer a Python library which exposes all of the functionality of the command line to your Python code.
The speedify-py open source library is available here: https://github.com/speedify/speedify-py
speedify-py is a wrapper around the Speedify command line, which makes it much easier to use. The JSON output is parsed into Python dictionaries, and errors are raised as Python exceptions.
It has been tested on Linux, Windows and macOS.
There are a number of sample programs that can help you get started: https://github.com/speedify/speedify-py/tree/master/sample
measure_speeds.py: Iterates through many combinations of settings, and runs a speed test for each, logging results, and ultimately outputting which set of setting gave the best performance.
speedify_import.py: Takes a JSON file of settings, in the same key, value pairs that MDM uses, and applies them to Speedify.
- speedify_export.py: Reads all of your current settings from Speedify and outputs a JSON file (suitable for use with speedify_import.py)
- speedify_default.py: Writes all of your settings back to the defaults which Speedify installs with
- speedify_login.py: Demonstrates some common usage of the API. Logs in a user, sets some settings, connects, and then list the adapters on the system.
stat_callbacks_sample.py: Demonstrates a long running program that watches for changes in state (connect, disconnect, etc.) and changes in Wi-Fi networks. This could be come the basis for programs that logs statistics, notify you on events, or changing settings on certain networks.
These samples are meant to whet your appetite and get you thinking about what you might like to do with Speedify and your own programs.