Python API for Hisense Televisions¶
A work-in-progress python API for Hisense televisions based off of mqtt-hisensetv.
Installation¶
Linux¶
sudo -H python3.8 -m pip install hisensetv
Windows¶
py -3.8 -m pip install hisensetv
CLI Usage¶
usage: hisensetv [-h] [--authorize] [--get {sources,volume}]
[--key {back,down,exit,left,menu,power,right,up}] [--no-ssl] [-v]
hostname
Hisense TV control.
positional arguments:
hostname Hostname or IP for the TV.
optional arguments:
-h, --help show this help message and exit
--authorize Authorize this API to access the TV.
--get {sources,volume}
Gets a value from the TV.
--key {back,down,exit,left,menu,power,right,up}
Sends a keypress to the TV.
--no-ssl Do not connect with SSL (required for some models).
-v, --verbose Logging verbosity.
One Time Setup¶
Note: This is not required for all models!
hisensetv 10.0.0.128 --authorize
Please enter the 4-digit code: 7815
Keypresses¶
hisensetv 10.0.0.28 --key up
[2020-02-29 13:48:52,064] [INFO ] sending keypress: up
Gets¶
hisensetv 10.0.0.28 --get volume
[2020-02-29 13:49:00,800] [INFO ] volume: {
"volume_type": 0,
"volume_value": 1
}
No SSL¶
Some models do not have self-signed certificates and will fail to connect
without --no-ssl
.
Please open an issue if yours is not listed here!
- H43A6250UK
Limitations¶
Concurrency¶
- Multiple instances of this class will conflict with one-another.
- Not thread-safe.
- This API really should be asyncio in 2020, but asyncio is not yet part of the paho mqtt library (see 455).
Reliability¶
- The concurrency issues contribute to reliability issues in general.
- Unit tests do not exist yet.