Skip to content
This repository has been archived by the owner on Mar 27, 2024. It is now read-only.
/ hisensetv Public archive

Python API to control Hisense brand TVs via their internal MQTT broker.

License

Notifications You must be signed in to change notification settings

newAM/hisensetv

Repository files navigation

This repository is no longer maintained. Please email me if you are interested in taking ownership.

Python API for Hisense Televisions

Build Status Black PyPi Version docs

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.

Security

  • The self-signed certificates from the TV are completely bypassed.

About

Python API to control Hisense brand TVs via their internal MQTT broker.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages