A client library for accessing gnista.io
Project description
gnista-library
A client library for accessing gnista.io
Tutorial
Create new Poetry Project
Navigate to a folder where you want to create your project and type
poetry new my-gnista-client
cd my-gnista-client
Add reference to your Project
Navigate to the newly created project and add the PyPI package
poetry add gnista-library
Your first DataPoint
Create a new file you want to use to receive data this demo.py
from gnista_library import GnistaConnection, GnistaDataPoint, GnistaDataPoints
connection = GnistaConnection()
data_point_id = "56c5c6ff-3f7d-4532-8fbf-a3795f7b48b8"
data_point = GnistaDataPoint(connection=connection, data_point_id=data_point_id)
data_point_data = data_point.get_data_point_data()
print(data_point_data)
You need to replace the DataPointId
with an ID from your gnista.io workspace.
For example the DataPointId of this DataPoint https://aws.gnista.io/secured/dashboard/datapoint/4684d681-8728-4f59-aeb0-ac3f3c573303
is 4684d681-8728-4f59-aeb0-ac3f3c573303
making your line read data = dataPoint.get_data_point(id="4684d681-8728-4f59-aeb0-ac3f3c573303")
Run and Login
Run your file in poetry's virtual environment
$ poetry run python demo.py
2021-09-02 14:51.58 [info ] Authentication has been started. Please follow the link to authenticate with your user: [gnista_library.gnista_connetion] url=https://aws.gnista.io/authentication/connect/authorize?client_id=python&redirect_uri=http%3A%2F%2Flocalhost%3A4200%2Fhome&response_type=code&scope=data-api%20openid%20profile%20offline_access&state=myState
In order to login copy the url
into your Browser and Login to gnista.io if you use aws.gnista.io you can use this link
Advanced Example
Show received Data in a plot
poetry new my-gnista-client
cd my-gnista-client
poetry add gnista-library
poetry add structlib
poetry add matplotlib
import matplotlib.pyplot as plt
from structlog import get_logger
from gnista_library import GnistaConnection, GnistaDataPoint, GnistaDataPoints
log = get_logger()
connection = GnistaConnection()
data_point_id = "56c5c6ff-3f7d-4532-8fbf-a3795f7b48b8"
data_point = GnistaDataPoint(connection=connection, data_point_id=data_point_id)
data_point_data = data_point.get_data_point_data()
log.info("Data has been received. Plotting")
data_point_data.plot()
plt.show()
Filter by DataPoint Names
poetry new my-gnista-client
cd my-gnista-client
poetry add gnista-library
poetry add structlib
poetry add matplotlib
import matplotlib.pyplot as plt
from structlog import get_logger
from gnista_library import GnistaConnection, GnistaDataPoint, GnistaDataPoints
log = get_logger()
connection = GnistaConnection()
dataPoints = GnistaDataPoints(connection=connection)
data_point_list = list(dataPoints.get_data_point_list())
for data_point in data_point_list:
log.info(data_point)
# Find Specific Data Points
filtered_data_points = filter(
lambda data_point: data_point.name.startswith("371880214002"), data_point_list
)
for data_point in filtered_data_points:
# get the data
data_point_data = data_point.get_data_point_data()
log.info(data_point_data)
data_point_data.plot()
plt.show()
Links
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for gnista_library-1.0.6-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 67cb97c2ebdebf0f733722c76fc2fdb86df2080c3d947360d3cc31a2dec85698 |
|
MD5 | 2c250c6249acac3616dd7cbd3f4c7d17 |
|
BLAKE2b-256 | 53446918f7812e1ddb323334527a9b1e697089e326bcf58abfaaaccf79f6faa9 |