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¶
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.