Python API Documentation

Hi @Allan_Zimmermann

I’m trying to find the pyapi documentation, like this one for @openiap/nodeapi but cannot find it.
Can you share the link if exist?

It does not exists, sorry.
But all sdk’s are based of the same proto files so should be pretty similar.

@Allan_Zimmermann Thank you for the prompt response.

No problem. It’s good to know that all SDKs are based on the same proto files, which implies a level of consistency across different platforms.

Would it be possible for you to provide a little more guidance on how I might use the proto files to better understand the pyapi, or any other resources you might recommend that could help me in this regard?

Thank you once again for your help.

Google made relatively basic protocol and markup language called protobuf. Protobuf allows developrs to create proto files describing messages and services, and then any programming language can talk with any programming language using protobuf generated code. They use that in a lot of different places but most notably in grpc and message queues. Grpc allows both function calling and multiplex streaming over HTTP/2 … kind of like websocket but better ( if you ask me )
When working on creating a new version of OpenRPA, that i want to be more of a framework than an application, that is also cross platform, i had the idea to make both plugin to host communication and application to openflow communication all be based on protobuf but with multiple under laying transport protocols. I started by creating that for openflow and nodejs and browsers, and ended up implementing it using namepipes, tcp sockets, http/rest, websockets and grpc. ( the grpc is a little messy. I now know i could have done that more cleanly, i guess that is something for version 3 )
With protobuf we can use tools to auto generate the files for many languages but since im not “only” grpc, each language need some wrapper code to add one of the 5 transports. Nodejs has them all, browser only websockets, python only grpc and websockets, on dotnet websockets, grpc, tcp sockets and namepipes.
Python was really hard for me, I never coded python before and async/await is a nightmare to implement. But python was important for me to have, to have good support for AI and more RPA frameworks, dotnet for support to upgrade OpenRPA and browser/nodejs to have a webfront and be cause I just love working in nodejs.
I originally planned to also quicly add go lang, but then i ran out of money and there for time.
Omg, that was not an answer, sorry about that. Can you repeat the question, maybe add a little more context? :joy:

Hi @Allan_Zimmermann

Sorry for the delay to respond (a lot of thing to do and forgot to respond).

Thank you, Allan, for the clarification. Could you provide any generic documentation or example implementations that might help me? Any guidance or resources would be greatly appreciated, as I’m keen to learn more about using this SDK effectively.

Like I try to find a way to upload files to “openflow” like “Save file” activity in openrpa.

You hit my bad spot … i have not added download/uplod for python.
I’m really struggeling with python code …

You can find all my test code here

This chat GPT is relatively good at generating python code ( it’s really node at nodejs )

https://chat.openai.com/g/g-kLCc1t9Bu-openiap-coding-specialist

No problem @Allan_Zimmermann
I was asking about download/upload because I saw the in python there seems to have a function called “DownloadFile” already implemented. And in the “proto/base_pb2_grpc.py” there is Upload (are they related?).

I hope one day I’ll be ready to contribute more. Thanks!

upload/download commands need to be implemented using streams, i have not found the time to figure out how to do that.
Push/Update Work Item does not use streams, that is why up/down load work there, but that will fail if the files becomes to big

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.