Lets you control Speedify, the bonding VPN, from Python. Nearly everything available to the user interface is available via this library.
This library exposes all of the functionality from the Speedify CLI.
Tested on Windows, macOS, Ubuntu, Raspbian.
Automatically looks for speedify_cli
in a number of standard locations.
You can force it to use a particular location by either setting the environment variable SPEEDIFY_CLI
or by calling speedify.set_cli()
. In either case it takes the full path of the speedify_cli
executable.
Put Speedify in speed mode with UDP transport
import speedify
speedify.mode("speed")
speedify.transport("udp")
Alternatively:
from speedifysettings import apply_setting
#Put Speedify in speed mode with UDP transport
apply_setting("mode", "speed")
apply_setting("transport", "udp")
Apply multiple settings at once, and print current settings:
from speedifysettings import apply_speedify_settings, get_speedify_settings
speedify_settings = '''{"connectmethod" : "closest","encryption" : true, "jumbo" : true,
"mode" : "speed", "privacy_killswitch":false, "privacy_dnsleak": true,
"startupconnect": true, "transport":"auto","overflow_threshold": 30.0,
"adapter_priority_ethernet" : "always","adapter_priority_wifi" : "always",
"adapter_priority_cellular" : "secondary", "adapter_datalimit_daily_all" : 0,
"adapter_datalimit_monthly_all" : 0, "adapter_ratelimit_all" : 0
}'''
#Apply settings
apply_speedify_settings(speedify_settings)
#Print current settings
print(get_speedify_settings())
For the full list of settings, build the sphinx documentation by running make html in the docs/ folder.
Added
dns(str)
streamtest()
directory(str)
gateway(str)
esni(bool)
headercompression(bool)
privacy(str, bool)
daemon(str)
login_auto()
login_oauth(token)
streamingbypass_domains_add(str)
streamingbypass_domains_rem(str)
streamingbypass_domains_set(str)
streamingbypass_ipv4_add(str)
streamingbypass_ipv4_rem(str)
streamingbypass_ipv4_set(str)
streamingbypass_ipv6_add(str)
streamingbypass_ipv6_rem(str)
streamingbypass_ipv6_set(str)
streamingbypass_ports_add(str)
streamingbypass_ports_rem(str)
streamingbypass_ports_set(str)
adapter_overratelimit(str, int)
adapter_dailylimit_boost(str, int)
show_servers()
show_settings()
show_privacy()
show_adapters()
show_currentserver()
show_user()
show_directory()
show_connectmethod()
show_streamingbypass()
show_disconnect()
show_streaming()
show_speedtest()
Changed
adapter_encryption(str, str) -> adapter_encryption(str, str or bool)
encryption(str) -> encryption(str or bool)
mode(str = "speed") -> mode(str)