trixelserviceclient


Nametrixelserviceclient JSON
Version 0.0.1 PyPI version JSON
download
home_pageNone
SummarySimple Python client for participating in privacy aware environmental monitoring.
upload_time2024-10-06 18:41:10
maintainerNone
docs_urlNone
authorNone
requires_pythonNone
licenseNone
keywords trixel private privacy focused environmental monitoring sensor network
VCS
bugtrack_url
requirements packaging colorlog pynyhtm trixellookupclient trixelmanagementclient
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Trixel Service Client

The *Trixel Service Client (TSC)* is a single unified python module which is used to participate in privacy aware environmental monitoring.
This module is responsible for interacting with the *Trixel Lookup Service (TLS)* and the *Trixel Management Service (TMS)* to provide updates to the trixel-based sensor network.

This module currently only support contributing clients.

## Usage

The core `Client` class contains large parts of the logic and allows for the implementations of derivatives which persist the clients configuration differently.
Persisting the configuration is required as it contains the measurement stations unique identifier and authentication token.

Examples for client implementations and extensions therefore can be found under [src/trixelserviceclient/extended_clients/](src/trixelserviceclient/extended_clients/).
The [PollingPickleClient](src/trixelserviceclient/extended_clients/pickle_client.py) is a complete client implementation that can persist the client configuration in a pickle file for future use.
It requires the definition of a `get_updates` method which provides the to-be-submitted values for the registered sensors.
This variant of the implementation performs all necessary steps for contribution by itself, which includes registration, configuration change synchronization and providing measurement updates.

The `Client` class also build the foundation for the [Trixel service bridges](https://github.com/TillFleisch/TrixelServiceBridges/) and the [Home Assistant Trixel contribution Integration](https://github.com/TillFleisch/TrixelNetworkIntegration).

## Development

The client implementation uses both the generated [TSM python client module](https://pypi.org/project/trixelmanagementclient/) and the [TLS python client module](https://pypi.org/project/trixellookupclient/).
They are listed in the requirements file among other dependencies.
[Pre-commit](https://pre-commit.com/) is used to enforce code-formatting, formatting tools are mentioned [here](.pre-commit-config.yaml).

The resulting python module can be built with pythons `build` module, which is also performed by the CI/CD pipeline.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "trixelserviceclient",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "trixel, private, privacy focused, environmental monitoring, sensor network",
    "author": null,
    "author_email": "Till <till@fleisch.dev>",
    "download_url": "https://files.pythonhosted.org/packages/24/ae/79c00e0eaf1e8e6d6994eed5d7a1ef967d45f51f8259822ea4b97628b5ca/trixelserviceclient-0.0.1.tar.gz",
    "platform": null,
    "description": "# Trixel Service Client\n\nThe *Trixel Service Client (TSC)* is a single unified python module which is used to participate in privacy aware environmental monitoring.\nThis module is responsible for interacting with the *Trixel Lookup Service (TLS)* and the *Trixel Management Service (TMS)* to provide updates to the trixel-based sensor network.\n\nThis module currently only support contributing clients.\n\n## Usage\n\nThe core `Client` class contains large parts of the logic and allows for the implementations of derivatives which persist the clients configuration differently.\nPersisting the configuration is required as it contains the measurement stations unique identifier and authentication token.\n\nExamples for client implementations and extensions therefore can be found under [src/trixelserviceclient/extended_clients/](src/trixelserviceclient/extended_clients/).\nThe [PollingPickleClient](src/trixelserviceclient/extended_clients/pickle_client.py) is a complete client implementation that can persist the client configuration in a pickle file for future use.\nIt requires the definition of a `get_updates` method which provides the to-be-submitted values for the registered sensors.\nThis variant of the implementation performs all necessary steps for contribution by itself, which includes registration, configuration change synchronization and providing measurement updates.\n\nThe `Client` class also build the foundation for the [Trixel service bridges](https://github.com/TillFleisch/TrixelServiceBridges/) and the [Home Assistant Trixel contribution Integration](https://github.com/TillFleisch/TrixelNetworkIntegration).\n\n## Development\n\nThe client implementation uses both the generated [TSM python client module](https://pypi.org/project/trixelmanagementclient/) and the [TLS python client module](https://pypi.org/project/trixellookupclient/).\nThey are listed in the requirements file among other dependencies.\n[Pre-commit](https://pre-commit.com/) is used to enforce code-formatting, formatting tools are mentioned [here](.pre-commit-config.yaml).\n\nThe resulting python module can be built with pythons `build` module, which is also performed by the CI/CD pipeline.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Simple Python client for participating in privacy aware environmental monitoring.",
    "version": "0.0.1",
    "project_urls": {
        "Homepage": "https://github.com/TillFleisch/TrixelServiceClient",
        "Issues": "https://github.com/TillFleisch/TrixelServiceClient/issues",
        "Repository": "https://github.com/TillFleisch/TrixelServiceClient.git"
    },
    "split_keywords": [
        "trixel",
        " private",
        " privacy focused",
        " environmental monitoring",
        " sensor network"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "670de4985cd388e1407cb4f658f3cfb345a36417732bb043073a9a7c2915f1ee",
                "md5": "125857939fec8bc235f0797944207e9d",
                "sha256": "b85c92e739bf68c09c7fa8c68d6f5d067576279f1113d541899f5215a7a2ceae"
            },
            "downloads": -1,
            "filename": "trixelserviceclient-0.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "125857939fec8bc235f0797944207e9d",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 14872,
            "upload_time": "2024-10-06T18:41:09",
            "upload_time_iso_8601": "2024-10-06T18:41:09.024341Z",
            "url": "https://files.pythonhosted.org/packages/67/0d/e4985cd388e1407cb4f658f3cfb345a36417732bb043073a9a7c2915f1ee/trixelserviceclient-0.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "24ae79c00e0eaf1e8e6d6994eed5d7a1ef967d45f51f8259822ea4b97628b5ca",
                "md5": "66fcb315a777af10c898d1c05d67d34b",
                "sha256": "a9021bad03b29490a6316a3af1f4b305d345f1110e0863b981091d27bbaf2e58"
            },
            "downloads": -1,
            "filename": "trixelserviceclient-0.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "66fcb315a777af10c898d1c05d67d34b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 14010,
            "upload_time": "2024-10-06T18:41:10",
            "upload_time_iso_8601": "2024-10-06T18:41:10.576247Z",
            "url": "https://files.pythonhosted.org/packages/24/ae/79c00e0eaf1e8e6d6994eed5d7a1ef967d45f51f8259822ea4b97628b5ca/trixelserviceclient-0.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-06 18:41:10",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "TillFleisch",
    "github_project": "TrixelServiceClient",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "packaging",
            "specs": [
                [
                    "~=",
                    "24.1"
                ]
            ]
        },
        {
            "name": "colorlog",
            "specs": [
                [
                    "~=",
                    "6.8"
                ]
            ]
        },
        {
            "name": "pynyhtm",
            "specs": [
                [
                    "==",
                    "0.1.0"
                ]
            ]
        },
        {
            "name": "trixellookupclient",
            "specs": [
                [
                    "==",
                    "0.2.0"
                ]
            ]
        },
        {
            "name": "trixelmanagementclient",
            "specs": [
                [
                    "==",
                    "0.1.0"
                ]
            ]
        }
    ],
    "lcname": "trixelserviceclient"
}
        
Elapsed time: 0.41016s