Metadata-Version: 1.2
Name: hisensetv
Version: 0.2.0
Summary: MQTT interface to Hisense televisions.
Home-page: https://github.com/newAM/hisensetv
Author: Alex M.
Author-email: 7845120+newAM@users.noreply.github.com
License: MIT
Description: 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
        =====
        .. code:: bash
        
            sudo -H python3.8 -m pip install hisensetv
        
        Windows
        =======
        .. code:: bash
        
            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.
        
        .. |Black| image:: https://img.shields.io/badge/code%20style-black-000000.svg
            :target: https://github.com/psf/black
        .. |Build Status| image:: https://api.travis-ci.com/newAM/hisensetv.svg?branch=master
           :target: https://travis-ci.com/newAM/hisensetv
        .. |PyPi Version| image:: https://img.shields.io/pypi/v/hisensetv
            :target: https://pypi.org/project/hisensetv/
        .. |docs| image:: https://readthedocs.org/projects/hisensetv/badge/?version=latest
           :target: https://hisensetv.readthedocs.io/en/latest/?badge=latest
        .. _mqtt-hisensetv: https://github.com/Krazy998/mqtt-hisensetv
        .. _455: https://github.com/eclipse/paho.mqtt.python/issues/455
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Requires-Python: >=3.6
