pythemo


Namepythemo JSON
Version 0.2.0 PyPI version JSON
download
home_pageNone
SummaryA Python client for Themo smart thermostats
upload_time2024-10-15 19:25:13
maintainerNone
docs_urlNone
authorYour Name
requires_pythonNone
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # `pythemo` - Python Themo API Client

The `pythemo` repository provides a Python client for interacting with the Themo API. This library allows you to authenticate, fetch, and control devices associated with your Themo account.

## Features

- **Authentication**: Authenticate with the Themo API using your username and password.
- **Device Information**: Fetch all devices associated with your account.
- **Control Devices**: Control device attributes like lights, temperature, mode, and schedules.

## File Descriptions

### models.py

The `models.py` file contains the `Device` class which represents a Themo device. This class provides:

- Initialization of the device with its ID and token.
- Methods to fetch and update the device state and attributes.
- Methods to control the device, including setting lights, temperature, mode, and schedules.

### client.py

The `client.py` file contains the `ThemoClient` class which is responsible for:

- Authenticating the user and obtaining the access token.
- Fetching the client ID.
- Fetching all devices associated with the user's account.
- Closing the client session.

## Usage

To use this library, you need to:

1. Create an instance of the `ThemoClient` class using your Themo account credentials (username and password).
2. Call the `authenticate()` method to obtain the access token.
3. Fetch devices using the `get_all_devices()` method.
4. For each device, you can fetch and update its state, control its attributes, and manage its schedules using methods provided in the `Device` class.

## Dependencies

- `httpx`: A fully featured HTTP client for Python 3.

## Contributions

Contributions to the `pythemo` repository are welcome. Please ensure that you follow the coding conventions and write tests for any new features or changes.

## License

This project is licensed under the MIT License. See the `LICENSE` file for more details.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "pythemo",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": null,
    "author": "Your Name",
    "author_email": "your.email@example.com",
    "download_url": "https://files.pythonhosted.org/packages/4f/5d/812f2101e05582bc770b6635371841d70e819830dc2b7b61cdc8f67c0471/pythemo-0.2.0.tar.gz",
    "platform": null,
    "description": "# `pythemo` - Python Themo API Client\n\nThe `pythemo` repository provides a Python client for interacting with the Themo API. This library allows you to authenticate, fetch, and control devices associated with your Themo account.\n\n## Features\n\n- **Authentication**: Authenticate with the Themo API using your username and password.\n- **Device Information**: Fetch all devices associated with your account.\n- **Control Devices**: Control device attributes like lights, temperature, mode, and schedules.\n\n## File Descriptions\n\n### models.py\n\nThe `models.py` file contains the `Device` class which represents a Themo device. This class provides:\n\n- Initialization of the device with its ID and token.\n- Methods to fetch and update the device state and attributes.\n- Methods to control the device, including setting lights, temperature, mode, and schedules.\n\n### client.py\n\nThe `client.py` file contains the `ThemoClient` class which is responsible for:\n\n- Authenticating the user and obtaining the access token.\n- Fetching the client ID.\n- Fetching all devices associated with the user's account.\n- Closing the client session.\n\n## Usage\n\nTo use this library, you need to:\n\n1. Create an instance of the `ThemoClient` class using your Themo account credentials (username and password).\n2. Call the `authenticate()` method to obtain the access token.\n3. Fetch devices using the `get_all_devices()` method.\n4. For each device, you can fetch and update its state, control its attributes, and manage its schedules using methods provided in the `Device` class.\n\n## Dependencies\n\n- `httpx`: A fully featured HTTP client for Python 3.\n\n## Contributions\n\nContributions to the `pythemo` repository are welcome. Please ensure that you follow the coding conventions and write tests for any new features or changes.\n\n## License\n\nThis project is licensed under the MIT License. See the `LICENSE` file for more details.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A Python client for Themo smart thermostats",
    "version": "0.2.0",
    "project_urls": null,
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d98f8eae4f6446d4663ee05f3b0bf39fe5626c0d9f77942dba0d7c60ab3eeabd",
                "md5": "7740c73e941ca7177fe13a39e1678786",
                "sha256": "f01adfadc74171679f73c7fada874e010c7db616bd83da0b10ea46f144be2406"
            },
            "downloads": -1,
            "filename": "pythemo-0.2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7740c73e941ca7177fe13a39e1678786",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 5954,
            "upload_time": "2024-10-15T19:25:12",
            "upload_time_iso_8601": "2024-10-15T19:25:12.144739Z",
            "url": "https://files.pythonhosted.org/packages/d9/8f/8eae4f6446d4663ee05f3b0bf39fe5626c0d9f77942dba0d7c60ab3eeabd/pythemo-0.2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4f5d812f2101e05582bc770b6635371841d70e819830dc2b7b61cdc8f67c0471",
                "md5": "0d03fd205721c5685b7d5083962b654b",
                "sha256": "d42515cfcb5d49f1b208ff151598116f10f4f5929422ee98705a6fe8d9ea64f8"
            },
            "downloads": -1,
            "filename": "pythemo-0.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "0d03fd205721c5685b7d5083962b654b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 5007,
            "upload_time": "2024-10-15T19:25:13",
            "upload_time_iso_8601": "2024-10-15T19:25:13.052329Z",
            "url": "https://files.pythonhosted.org/packages/4f/5d/812f2101e05582bc770b6635371841d70e819830dc2b7b61cdc8f67c0471/pythemo-0.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-15 19:25:13",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "pythemo"
}
        
Elapsed time: 0.35729s