A simple Python wrapper for the TP-Link Omada Software Controller API.
Currently this is just the bare-minimum required to log in, get site settings, push site settings, and log out.
``` from omada import Omada
omada = Omada('omada.cfg')
settings = omada.getSiteSettings()
settings['led']['enable'] = False
I use this in a cron schedule to turn my site LED setting off at night and back on in the morning.
Turn the LED on:
$ python led.py on
Turn the LED off:
$ python led.py off
These are simple apps to display similar output to the "Clients" and "Devices" page on the web interface.
$ python clients.py
USERNAME IP ADDRESS STATUS
00-11-22-33-44-55 192.168.1.123 CONNECTED
Make sure you have your Settings file configured correctly for these to work.
You can store your controller settings in a configuration file to avoid hard-coding them in your scripts.
Currently supported settings:
baseurl- the base url to the controller
site- the name of the site in the controller (usually
verify- set this to
Falseto ignore self-signed certificate errors
warnings- set this to
Falseto hide urllib3 warnings when
verbose- set this to
Trueto force low-level reqeusts to output debugging info
username- the username to log in as
password- the password for the user
baseurl = https://omadacontroller.local:8043
site = Default
verify = False
username = apiuser
password = secretpassword
For my wife, who asked that I turn off the device LEDs at night. :heart:
I was looking for a way to automate uploading new SSL certificates to my controller and found your API. I've been successfully using this code to update my SSL certificates on my controller, so I figured I'd contribute back what I added.
In addition to #8 it would be nice to have tags as well. This would enable distributions who want to run your tests to fetch the package from GitHub instead of PyPI.
Hi. Any change you'd be willing to publish this to as a PyPI package?