fieldedge-utilities


Namefieldedge-utilities JSON
Version 0.32.6 PyPI version JSON
download
home_pagehttps://github.com/inmarsat-enterprise/fieldedge-utilities
SummaryUtilities package for the FieldEdge project.
upload_time2025-09-12 21:32:06
maintainerNone
docs_urlNone
authorgeoffbrucepayne
requires_python<4.0,>=3.9
licenseApache2.0
keywords inmarsat fieldedge
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Viasat FieldEdge Utilities

The FieldEdge project supports *Internet of Things* (**IoT**) using
satellite communications technology. Generally this library is meant to be used
on single board computers capable of running Debian Linux.

>*While the authors recognize Python has several shortcomings for embedded use,*
*it provides a useful learning template.*

This library available on [**PyPI**](https://pypi.org/project/fieldedge-utilities/)
provides:

* A common **`logger`** format and wrapping file facility with UTC timestamps.
* A **`timer.RepeatingTimer`** utility (thread) that can be started, stopped,
restarted, and interval changed.
* A simplified **`mqtt`** client that automatically (re)onnects
(by default to a local `fieldedge-broker`).
* Helper functions for managing files and **`path`** on different OS.
* An interface for the FieldEdge **`hostpipe`** or **`hostrequest`** service
for sending host commands from a Docker container, with request/result captured
in a logfile.
* Helper functions **`ip.interfaces`** for finding and validating IP interfaces
and addresses/subnets.
* A defined set of common **`ip.protocols`** used for packet analysis and
satellite data traffic optimisation.
* Helpers for managing **`serial`** ports on a host system.
* Utilities for converting **`timestamp`**s between unix and ISO 8601
* **`properties`** manipulation and conversion between JSON and PEP style,
and derived from classes or instances.
    * **`ConfigurableProperty`** for improved ISC configuration handling.
    * **`DelegatedProperty`** for subclass conversions of method to property
    with optional caching.
* Classes useful for implementing **`microservice`**s based on MQTT
inter-service communications and task workflows:
    * **`interservice`** communications tasks and searchable queue.
    * **`microservice`** class for consistent abstraction and interaction.
    * **`msproxy`** microservice proxy class form a kind of twin of another
    microservice, as a child of a microservice.
    * **`feature`** class as a child of a microservice, with routing of MQTT
    topics and messages and interaction with a simple task queue.
    * **`propertycache`** concept for caching frequently referenced object
    properties where the query may take time.
    * **`subscriptionproxy`** allows cascading of received MQTT messages to
    multiple modules within a project framing a microservice.

[Docmentation](https://inmarsat-enterprise.github.io/fieldedge-utilities/)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/inmarsat-enterprise/fieldedge-utilities",
    "name": "fieldedge-utilities",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.9",
    "maintainer_email": null,
    "keywords": "Inmarsat, FieldEdge",
    "author": "geoffbrucepayne",
    "author_email": "geoff.bruce-payne@inmarsat.com",
    "download_url": "https://files.pythonhosted.org/packages/8a/01/c415cb2827b7c231717de861f41e9ee72c488c19b5975dfc3460a753c463/fieldedge_utilities-0.32.6.tar.gz",
    "platform": null,
    "description": "# Viasat FieldEdge Utilities\n\nThe FieldEdge project supports *Internet of Things* (**IoT**) using\nsatellite communications technology. Generally this library is meant to be used\non single board computers capable of running Debian Linux.\n\n>*While the authors recognize Python has several shortcomings for embedded use,*\n*it provides a useful learning template.*\n\nThis library available on [**PyPI**](https://pypi.org/project/fieldedge-utilities/)\nprovides:\n\n* A common **`logger`** format and wrapping file facility with UTC timestamps.\n* A **`timer.RepeatingTimer`** utility (thread) that can be started, stopped,\nrestarted, and interval changed.\n* A simplified **`mqtt`** client that automatically (re)onnects\n(by default to a local `fieldedge-broker`).\n* Helper functions for managing files and **`path`** on different OS.\n* An interface for the FieldEdge **`hostpipe`** or **`hostrequest`** service\nfor sending host commands from a Docker container, with request/result captured\nin a logfile.\n* Helper functions **`ip.interfaces`** for finding and validating IP interfaces\nand addresses/subnets.\n* A defined set of common **`ip.protocols`** used for packet analysis and\nsatellite data traffic optimisation.\n* Helpers for managing **`serial`** ports on a host system.\n* Utilities for converting **`timestamp`**s between unix and ISO 8601\n* **`properties`** manipulation and conversion between JSON and PEP style,\nand derived from classes or instances.\n    * **`ConfigurableProperty`** for improved ISC configuration handling.\n    * **`DelegatedProperty`** for subclass conversions of method to property\n    with optional caching.\n* Classes useful for implementing **`microservice`**s based on MQTT\ninter-service communications and task workflows:\n    * **`interservice`** communications tasks and searchable queue.\n    * **`microservice`** class for consistent abstraction and interaction.\n    * **`msproxy`** microservice proxy class form a kind of twin of another\n    microservice, as a child of a microservice.\n    * **`feature`** class as a child of a microservice, with routing of MQTT\n    topics and messages and interaction with a simple task queue.\n    * **`propertycache`** concept for caching frequently referenced object\n    properties where the query may take time.\n    * **`subscriptionproxy`** allows cascading of received MQTT messages to\n    multiple modules within a project framing a microservice.\n\n[Docmentation](https://inmarsat-enterprise.github.io/fieldedge-utilities/)\n",
    "bugtrack_url": null,
    "license": "Apache2.0",
    "summary": "Utilities package for the FieldEdge project.",
    "version": "0.32.6",
    "project_urls": {
        "Homepage": "https://github.com/inmarsat-enterprise/fieldedge-utilities",
        "Repository": "https://github.com/inmarsat-enterprise/fieldedge-utilities"
    },
    "split_keywords": [
        "inmarsat",
        " fieldedge"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7efafc9f7771cdd085de753f7a1c3195ed2b953f36b5b3f48060a402ae302b21",
                "md5": "9cfc60e7622bfd8988c76f4f6f8a1c79",
                "sha256": "a859f192f79a2fb75c0c21773ce9e023053feade18ec477654e3253df4f84097"
            },
            "downloads": -1,
            "filename": "fieldedge_utilities-0.32.6-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "9cfc60e7622bfd8988c76f4f6f8a1c79",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.9",
            "size": 77078,
            "upload_time": "2025-09-12T21:32:05",
            "upload_time_iso_8601": "2025-09-12T21:32:05.368055Z",
            "url": "https://files.pythonhosted.org/packages/7e/fa/fc9f7771cdd085de753f7a1c3195ed2b953f36b5b3f48060a402ae302b21/fieldedge_utilities-0.32.6-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8a01c415cb2827b7c231717de861f41e9ee72c488c19b5975dfc3460a753c463",
                "md5": "8c8df6411714a50bd68fd9ee4fb0fea9",
                "sha256": "7dbda7546b2720fb8a7221d95c2d4fcbf0dca61cbf7a54ff70ae89ddbdd7258a"
            },
            "downloads": -1,
            "filename": "fieldedge_utilities-0.32.6.tar.gz",
            "has_sig": false,
            "md5_digest": "8c8df6411714a50bd68fd9ee4fb0fea9",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.9",
            "size": 63216,
            "upload_time": "2025-09-12T21:32:06",
            "upload_time_iso_8601": "2025-09-12T21:32:06.456308Z",
            "url": "https://files.pythonhosted.org/packages/8a/01/c415cb2827b7c231717de861f41e9ee72c488c19b5975dfc3460a753c463/fieldedge_utilities-0.32.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-12 21:32:06",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "inmarsat-enterprise",
    "github_project": "fieldedge-utilities",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "fieldedge-utilities"
}
        
Elapsed time: 2.81747s