pythemo


Namepythemo JSON
Version 0.2.1 PyPI version JSON
download
home_pageNone
SummaryA Python client for Themo smart thermostats
upload_time2024-12-18 08:10:27
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/06/1b/b07e094c19b64acebb62ff7790001e4e350cd17fb2eabd994ef04297e0d6/pythemo-0.2.1.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.1",
    "project_urls": null,
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "583e5e612236e3033d443d4bfc008f7505bb1649e90d2290c153d4e2c5176905",
                "md5": "1f80ab9a5c921a2799ef42e963eafd4a",
                "sha256": "fc3caad1eaecd707312f339db4051741a17b61fd7f2629e1316abafd5cc45e8e"
            },
            "downloads": -1,
            "filename": "pythemo-0.2.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "1f80ab9a5c921a2799ef42e963eafd4a",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 5976,
            "upload_time": "2024-12-18T08:10:25",
            "upload_time_iso_8601": "2024-12-18T08:10:25.317553Z",
            "url": "https://files.pythonhosted.org/packages/58/3e/5e612236e3033d443d4bfc008f7505bb1649e90d2290c153d4e2c5176905/pythemo-0.2.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "061bb07e094c19b64acebb62ff7790001e4e350cd17fb2eabd994ef04297e0d6",
                "md5": "25343373b1c8d8660e4a241b58a1b21f",
                "sha256": "bada688fb4134db1d7a607ac89920725988eb5468e96f89a8482954f8babdd1d"
            },
            "downloads": -1,
            "filename": "pythemo-0.2.1.tar.gz",
            "has_sig": false,
            "md5_digest": "25343373b1c8d8660e4a241b58a1b21f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 5040,
            "upload_time": "2024-12-18T08:10:27",
            "upload_time_iso_8601": "2024-12-18T08:10:27.393465Z",
            "url": "https://files.pythonhosted.org/packages/06/1b/b07e094c19b64acebb62ff7790001e4e350cd17fb2eabd994ef04297e0d6/pythemo-0.2.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-18 08:10:27",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "pythemo"
}
        
Elapsed time: 2.73024s