Skip to main content

A client library for IoT projects in the RCER initiative

Project description

RCER IoT Client Library | rcer_iot_client_pkg

Installation

You can find the package on PyPI. This library provides a robust and efficient client for interacting with IoT devices.

pip install rcer_iot_client_pkg

Usage

Initialize the EPii API Client

To start using the library, you need to create an EpiiAPI client instance:

from rcer_iot_client_pkg import EpiiAPI

api_client = EpiiAPI()

Update THIES Data Logger Files

The library provides a method to synchronize THIES Data Logger files with the RCER SharePoint client. This method updates the folder containing binary files with meteorological data:

from rcer_iot_client_pkg import EpiiAPIConfig
import asyncio

async def update_thies_data():
    config = EpiiAPIConfig(
        ftp_port=FTP_PORT,
        ftp_host=FTP_HOST,
        ftp_user=FTP_USER,
        ftp_password=FTP_PASSWORD,
        sharepoint_client_id=SHAREPOINT_CLIENT_ID,
        sharepoint_client_secret=SHAREPOINT_CLIENT_SECRET,
        sharepoint_tenant_id=SHAREPOINT_TENANT_ID,
        sharepoint_tenant_name=SHAREPOINT_TENANT_NAME,
        sharepoint_site_name=SHAREPOINT_SITE_NAME
    )
    response = await api_client.update_thies_data(config)
    return response

asyncio.run(update_thies_data())

Notes:

  • Store sensitive data like FTP_PASSWORD, FTP_USER, and SharePoint credentials securely. Use environment variables or a secrets management tool to avoid hardcoding sensitive information in your codebase.

Development

This project includes a Makefile to simplify common tasks. Below are the available commands:

Install Basic Dependencies

To install the basic dependencies required for the project, run the following command:

make install-deps

This will ensure that all necessary libraries and tools are installed for the project to function properly.

Install Development Requirements

For setting up a development environment with additional tools and libraries, execute:

make dev

This command installs all the dependencies needed for development, including testing and linting tools.

Run Tests

To verify that the code is functioning as expected, you can run the test suite using:

make test

This will execute all the tests in the project and provide a summary of the results.

Lint the Code

To ensure that the code adheres to the project's style guidelines and is free of common errors, run:

make lint

This command checks the codebase for linting issues and outputs any problems that need to be addressed.

Contributing

If you're interested in contributing to this project, please follow the contributing guidelines. Contributions are welcome and appreciated!

Interested in contributing? Check out the contributing guidelines. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.

License

rcer_iot_client_pkg was created by Pedro Pablo Zavala Tejos. It is licensed under the terms of the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rcer_iot_client_pkg-0.5.2.tar.gz (11.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rcer_iot_client_pkg-0.5.2-py3-none-any.whl (20.4 kB view details)

Uploaded Python 3

File details

Details for the file rcer_iot_client_pkg-0.5.2.tar.gz.

File metadata

  • Download URL: rcer_iot_client_pkg-0.5.2.tar.gz
  • Upload date:
  • Size: 11.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.8

File hashes

Hashes for rcer_iot_client_pkg-0.5.2.tar.gz
Algorithm Hash digest
SHA256 6b0e794a70f6be826a074080de4bf3883549e8a761ef503c702942121104dc7f
MD5 50e780ac43b1d6397a89d0092d1365cf
BLAKE2b-256 1020522f4c3afa2a63d3ea5a18e8764375d310ba1f31512e4ac4ff28f7e5d609

See more details on using hashes here.

File details

Details for the file rcer_iot_client_pkg-0.5.2-py3-none-any.whl.

File metadata

File hashes

Hashes for rcer_iot_client_pkg-0.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ee834dac8535c1dbc4ebeb7495205c2549483c971cffd8dd8810a90a408bc846
MD5 545a94711fdd70de66c58502c9bffea0
BLAKE2b-256 613d99f10fc1b8d3573c6f9a625ebd0c3190b0f80b5b2db743104fa4f5a3d1e7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page