c0c0n3 / kitt4sme.live

On a mission to bring AI to the shop floor: https://kitt4sme.eu/
MIT License
1 stars 28 forks source link

Shared Python lib #102

Open c0c0n3 opened 2 years ago

c0c0n3 commented 2 years ago

Summary

SUPSI, CSIC, Rovimatica, Ginkgo and Martel could all potentially benefit from a Python library for interacting with the Kitt4sme infra, especially Keycloak and Fiware. Developing a common code base and sharing it as a library is probably the way to go.

Intended outcome

Figure out if we should roll out our own thingie (e.g. FiPy) or rather entirely rely on existing libs like PyNGSI and PyNGSI-LD. We should come up w/ a solution that provides:

How will it work?

Kitt4sme Python services would simply import the library and take advantage of all the built-in functionality. E.g. see how Roughnator uses FiPy.

vcutrona commented 2 years ago

We should consider also python-orion-client in our analysis. All the considered libs are from the same organization (Orange-Open Source).

vcutrona commented 2 years ago

PyNGSI

Reqs

Comments

vcutrona commented 2 years ago

python-ngsild-client

Reqs

Comments

vcutrona commented 2 years ago

PyNGSI-LD

Reqs

Comments

vcutrona commented 2 years ago

Given the above comments, my view is that rolling out FiPy is the best choice for us, because:

Alternatively, we may consider extending a lib (pyngsild?) to meet our requirements, but:

Instead, I would consider bringing some features (e.g., fields presence check, reserved keywords check, agents creation, sources implementation) from the considered libs to FiPy (considered libs are released under Apache2 license).

c0c0n3 commented 2 years ago

Wow! Excellent analysis, thanks a stack!! Let's make a decision about this in the next grooming session.